[Glibc-bsd-commits] r4896 - in trunk/kfreebsd-kernel-headers/debian: . patches

Robert Millan rmh at alioth.debian.org
Tue Aug 20 09:32:46 UTC 2013


Author: rmh
Date: 2013-08-20 09:32:46 +0000 (Tue, 20 Aug 2013)
New Revision: 4896

Added:
   trunk/kfreebsd-kernel-headers/debian/patches/queue_collision.diff
Removed:
   trunk/kfreebsd-kernel-headers/debian/patches/queue_bsd_extensions.diff
Modified:
   trunk/kfreebsd-kernel-headers/debian/changelog
   trunk/kfreebsd-kernel-headers/debian/patches/series
Log:
Fix collisions in <sys/queue.h>

Modified: trunk/kfreebsd-kernel-headers/debian/changelog
===================================================================
--- trunk/kfreebsd-kernel-headers/debian/changelog	2013-08-19 15:06:46 UTC (rev 4895)
+++ trunk/kfreebsd-kernel-headers/debian/changelog	2013-08-20 09:32:46 UTC (rev 4896)
@@ -13,9 +13,7 @@
     want header protection to match with GNU <sys/queue.h> as to prevent
     the rest of the macros from colliding. Add a test for <sys/queue.h>
     collisions.
-  * Move the "BSD extensions" (so to speak) of <sys/queue.h> off the
-    GNU-compatible header protection. This will make them available even
-    if GNU <sys/queue.h> had been included.
+  * Fix collisions in <sys/queue.h>.
 
  -- Robert Millan <rmh at debian.org>  Mon, 19 Aug 2013 16:33:59 +0200
 

Deleted: trunk/kfreebsd-kernel-headers/debian/patches/queue_bsd_extensions.diff
===================================================================
--- trunk/kfreebsd-kernel-headers/debian/patches/queue_bsd_extensions.diff	2013-08-19 15:06:46 UTC (rev 4895)
+++ trunk/kfreebsd-kernel-headers/debian/patches/queue_bsd_extensions.diff	2013-08-20 09:32:46 UTC (rev 4896)
@@ -1,319 +0,0 @@
---- a/sys/sys/queue.h
-+++ b/sys/sys/queue.h
-@@ -169,21 +169,11 @@
- 	    (var);							\
- 	    (var) = SLIST_NEXT((var), field))
- 
--#define	SLIST_FOREACH_FROM(var, head, field)				\
--	for ((var) = ((var) ? (var) : SLIST_FIRST((head)));		\
--	    (var);							\
--	    (var) = SLIST_NEXT((var), field))
--
- #define	SLIST_FOREACH_SAFE(var, head, field, tvar)			\
- 	for ((var) = SLIST_FIRST((head));				\
- 	    (var) && ((tvar) = SLIST_NEXT((var), field), 1);		\
- 	    (var) = (tvar))
- 
--#define	SLIST_FOREACH_FROM_SAFE(var, head, field, tvar)			\
--	for ((var) = ((var) ? (var) : SLIST_FIRST((head)));		\
--	    (var) && ((tvar) = SLIST_NEXT((var), field), 1);		\
--	    (var) = (tvar))
--
- #define	SLIST_FOREACH_PREVPTR(var, varp, head, field)			\
- 	for ((varp) = &SLIST_FIRST((head));				\
- 	    ((var) = *(varp)) != NULL;					\
-@@ -219,21 +209,10 @@
- 	TRASHIT(*oldnext);						\
- } while (0)
- 
--#define SLIST_REMOVE_AFTER(elm, field) do {				\
--	SLIST_NEXT(elm, field) =					\
--	    SLIST_NEXT(SLIST_NEXT(elm, field), field);			\
--} while (0)
--
- #define	SLIST_REMOVE_HEAD(head, field) do {				\
- 	SLIST_FIRST((head)) = SLIST_NEXT(SLIST_FIRST((head)), field);	\
- } while (0)
- 
--#define SLIST_SWAP(head1, head2, type) do {				\
--	struct type *swap_first = SLIST_FIRST(head1);			\
--	SLIST_FIRST(head1) = SLIST_FIRST(head2);			\
--	SLIST_FIRST(head2) = swap_first;				\
--} while (0)
--
- /*
-  * Singly-linked Tail queue declarations.
-  */
-@@ -271,21 +250,11 @@
- 	   (var);							\
- 	   (var) = STAILQ_NEXT((var), field))
- 
--#define	STAILQ_FOREACH_FROM(var, head, field)				\
--	for ((var) = ((var) ? (var) : STAILQ_FIRST((head)));		\
--	   (var);							\
--	   (var) = STAILQ_NEXT((var), field))
--
- #define	STAILQ_FOREACH_SAFE(var, head, field, tvar)			\
- 	for ((var) = STAILQ_FIRST((head));				\
- 	    (var) && ((tvar) = STAILQ_NEXT((var), field), 1);		\
- 	    (var) = (tvar))
- 
--#define	STAILQ_FOREACH_FROM_SAFE(var, head, field, tvar)		\
--	for ((var) = ((var) ? (var) : STAILQ_FIRST((head)));		\
--	    (var) && ((tvar) = STAILQ_NEXT((var), field), 1);		\
--	    (var) = (tvar))
--
- #define	STAILQ_INIT(head) do {						\
- 	STAILQ_FIRST((head)) = NULL;					\
- 	(head)->stqh_last = &STAILQ_FIRST((head));			\
-@@ -309,10 +278,6 @@
- 	(head)->stqh_last = &STAILQ_NEXT((elm), field);			\
- } while (0)
- 
--#define	STAILQ_LAST(head, type, field)					\
--	(STAILQ_EMPTY((head)) ? NULL :					\
--	    __containerof((head)->stqh_last, struct type, field.stqe_next))
--
- #define	STAILQ_NEXT(elm, field)	((elm)->field.stqe_next)
- 
- #define	STAILQ_REMOVE(head, elm, type, field) do {			\
-@@ -329,31 +294,12 @@
- 	TRASHIT(*oldnext);						\
- } while (0)
- 
--#define STAILQ_REMOVE_AFTER(head, elm, field) do {			\
--	if ((STAILQ_NEXT(elm, field) =					\
--	     STAILQ_NEXT(STAILQ_NEXT(elm, field), field)) == NULL)	\
--		(head)->stqh_last = &STAILQ_NEXT((elm), field);		\
--} while (0)
--
- #define	STAILQ_REMOVE_HEAD(head, field) do {				\
- 	if ((STAILQ_FIRST((head)) =					\
- 	     STAILQ_NEXT(STAILQ_FIRST((head)), field)) == NULL)		\
- 		(head)->stqh_last = &STAILQ_FIRST((head));		\
- } while (0)
- 
--#define STAILQ_SWAP(head1, head2, type) do {				\
--	struct type *swap_first = STAILQ_FIRST(head1);			\
--	struct type **swap_last = (head1)->stqh_last;			\
--	STAILQ_FIRST(head1) = STAILQ_FIRST(head2);			\
--	(head1)->stqh_last = (head2)->stqh_last;			\
--	STAILQ_FIRST(head2) = swap_first;				\
--	(head2)->stqh_last = swap_last;					\
--	if (STAILQ_EMPTY(head1))					\
--		(head1)->stqh_last = &STAILQ_FIRST(head1);		\
--	if (STAILQ_EMPTY(head2))					\
--		(head2)->stqh_last = &STAILQ_FIRST(head2);		\
--} while (0)
--
- 
- /*
-  * List declarations.
-@@ -410,21 +356,11 @@
- 	    (var);							\
- 	    (var) = LIST_NEXT((var), field))
- 
--#define	LIST_FOREACH_FROM(var, head, field)				\
--	for ((var) = ((var) ? (var) : LIST_FIRST((head)));		\
--	    (var);							\
--	    (var) = LIST_NEXT((var), field))
--
- #define	LIST_FOREACH_SAFE(var, head, field, tvar)			\
- 	for ((var) = LIST_FIRST((head));				\
- 	    (var) && ((tvar) = LIST_NEXT((var), field), 1);		\
- 	    (var) = (tvar))
- 
--#define	LIST_FOREACH_FROM_SAFE(var, head, field, tvar)			\
--	for ((var) = ((var) ? (var) : LIST_FIRST((head)));		\
--	    (var) && ((tvar) = LIST_NEXT((var), field), 1);		\
--	    (var) = (tvar))
--
- #define	LIST_INIT(head) do {						\
- 	LIST_FIRST((head)) = NULL;					\
- } while (0)
-@@ -456,10 +392,6 @@
- 
- #define	LIST_NEXT(elm, field)	((elm)->field.le_next)
- 
--#define	LIST_PREV(elm, head, type, field)				\
--	((elm)->field.le_prev == &LIST_FIRST((head)) ? NULL :		\
--	    __containerof((elm)->field.le_prev, struct type, field.le_next))
--
- #define	LIST_REMOVE(elm, field) do {					\
- 	QMD_SAVELINK(oldnext, (elm)->field.le_next);			\
- 	QMD_SAVELINK(oldprev, (elm)->field.le_prev);			\
-@@ -473,16 +405,6 @@
- 	TRASHIT(*oldprev);						\
- } while (0)
- 
--#define LIST_SWAP(head1, head2, type, field) do {			\
--	struct type *swap_tmp = LIST_FIRST((head1));			\
--	LIST_FIRST((head1)) = LIST_FIRST((head2));			\
--	LIST_FIRST((head2)) = swap_tmp;					\
--	if ((swap_tmp = LIST_FIRST((head1))) != NULL)			\
--		swap_tmp->field.le_prev = &LIST_FIRST((head1));		\
--	if ((swap_tmp = LIST_FIRST((head2))) != NULL)			\
--		swap_tmp->field.le_prev = &LIST_FIRST((head2));		\
--} while (0)
--
- /*
-  * Tail queue declarations.
-  */
-@@ -557,41 +479,21 @@
- 	    (var);							\
- 	    (var) = TAILQ_NEXT((var), field))
- 
--#define	TAILQ_FOREACH_FROM(var, head, field)				\
--	for ((var) = ((var) ? (var) : TAILQ_FIRST((head)));		\
--	    (var);							\
--	    (var) = TAILQ_NEXT((var), field))
--
- #define	TAILQ_FOREACH_SAFE(var, head, field, tvar)			\
- 	for ((var) = TAILQ_FIRST((head));				\
- 	    (var) && ((tvar) = TAILQ_NEXT((var), field), 1);		\
- 	    (var) = (tvar))
- 
--#define	TAILQ_FOREACH_FROM_SAFE(var, head, field, tvar)			\
--	for ((var) = ((var) ? (var) : TAILQ_FIRST((head)));		\
--	    (var) && ((tvar) = TAILQ_NEXT((var), field), 1);		\
--	    (var) = (tvar))
--
- #define	TAILQ_FOREACH_REVERSE(var, head, headname, field)		\
- 	for ((var) = TAILQ_LAST((head), headname);			\
- 	    (var);							\
- 	    (var) = TAILQ_PREV((var), headname, field))
- 
--#define	TAILQ_FOREACH_REVERSE_FROM(var, head, headname, field)		\
--	for ((var) = ((var) ? (var) : TAILQ_LAST((head), headname));	\
--	    (var);							\
--	    (var) = TAILQ_PREV((var), headname, field))
--
- #define	TAILQ_FOREACH_REVERSE_SAFE(var, head, headname, field, tvar)	\
- 	for ((var) = TAILQ_LAST((head), headname);			\
- 	    (var) && ((tvar) = TAILQ_PREV((var), headname, field), 1);	\
- 	    (var) = (tvar))
- 
--#define	TAILQ_FOREACH_REVERSE_FROM_SAFE(var, head, headname, field, tvar) \
--	for ((var) = ((var) ? (var) : TAILQ_LAST((head), headname));	\
--	    (var) && ((tvar) = TAILQ_PREV((var), headname, field), 1);	\
--	    (var) = (tvar))
--
- #define	TAILQ_INIT(head) do {						\
- 	TAILQ_FIRST((head)) = NULL;					\
- 	(head)->tqh_last = &TAILQ_FIRST((head));			\
-@@ -672,6 +574,109 @@
- 	QMD_TRACE_ELEM(&(elm)->field);					\
- } while (0)
- 
-+#endif /* !_SYS_QUEUE_H_ */
-+
-+#ifndef _FREEBSD_SYS_QUEUE_H_
-+#define _FREEBSD_SYS_QUEUE_H_
-+
-+#define	SLIST_FOREACH_FROM(var, head, field)				\
-+	for ((var) = ((var) ? (var) : SLIST_FIRST((head)));		\
-+	    (var);							\
-+	    (var) = SLIST_NEXT((var), field))
-+
-+#define	SLIST_FOREACH_FROM_SAFE(var, head, field, tvar)			\
-+	for ((var) = ((var) ? (var) : SLIST_FIRST((head)));		\
-+	    (var) && ((tvar) = SLIST_NEXT((var), field), 1);		\
-+	    (var) = (tvar))
-+
-+#define SLIST_REMOVE_AFTER(elm, field) do {				\
-+	SLIST_NEXT(elm, field) =					\
-+	    SLIST_NEXT(SLIST_NEXT(elm, field), field);			\
-+} while (0)
-+
-+#define SLIST_SWAP(head1, head2, type) do {				\
-+	struct type *swap_first = SLIST_FIRST(head1);			\
-+	SLIST_FIRST(head1) = SLIST_FIRST(head2);			\
-+	SLIST_FIRST(head2) = swap_first;				\
-+} while (0)
-+
-+#define	STAILQ_FOREACH_FROM(var, head, field)				\
-+	for ((var) = ((var) ? (var) : STAILQ_FIRST((head)));		\
-+	   (var);							\
-+	   (var) = STAILQ_NEXT((var), field))
-+
-+#define	STAILQ_FOREACH_FROM_SAFE(var, head, field, tvar)		\
-+	for ((var) = ((var) ? (var) : STAILQ_FIRST((head)));		\
-+	    (var) && ((tvar) = STAILQ_NEXT((var), field), 1);		\
-+	    (var) = (tvar))
-+
-+#define	STAILQ_LAST(head, type, field)					\
-+	(STAILQ_EMPTY((head)) ? NULL :					\
-+	    __containerof((head)->stqh_last, struct type, field.stqe_next))
-+
-+#define STAILQ_REMOVE_AFTER(head, elm, field) do {			\
-+	if ((STAILQ_NEXT(elm, field) =					\
-+	     STAILQ_NEXT(STAILQ_NEXT(elm, field), field)) == NULL)	\
-+		(head)->stqh_last = &STAILQ_NEXT((elm), field);		\
-+} while (0)
-+
-+#define STAILQ_SWAP(head1, head2, type) do {				\
-+	struct type *swap_first = STAILQ_FIRST(head1);			\
-+	struct type **swap_last = (head1)->stqh_last;			\
-+	STAILQ_FIRST(head1) = STAILQ_FIRST(head2);			\
-+	(head1)->stqh_last = (head2)->stqh_last;			\
-+	STAILQ_FIRST(head2) = swap_first;				\
-+	(head2)->stqh_last = swap_last;					\
-+	if (STAILQ_EMPTY(head1))					\
-+		(head1)->stqh_last = &STAILQ_FIRST(head1);		\
-+	if (STAILQ_EMPTY(head2))					\
-+		(head2)->stqh_last = &STAILQ_FIRST(head2);		\
-+} while (0)
-+
-+#define	LIST_FOREACH_FROM(var, head, field)				\
-+	for ((var) = ((var) ? (var) : LIST_FIRST((head)));		\
-+	    (var);							\
-+	    (var) = LIST_NEXT((var), field))
-+
-+#define	LIST_FOREACH_FROM_SAFE(var, head, field, tvar)			\
-+	for ((var) = ((var) ? (var) : LIST_FIRST((head)));		\
-+	    (var) && ((tvar) = LIST_NEXT((var), field), 1);		\
-+	    (var) = (tvar))
-+
-+#define	LIST_PREV(elm, head, type, field)				\
-+	((elm)->field.le_prev == &LIST_FIRST((head)) ? NULL :		\
-+	    __containerof((elm)->field.le_prev, struct type, field.le_next))
-+
-+#define LIST_SWAP(head1, head2, type, field) do {			\
-+	struct type *swap_tmp = LIST_FIRST((head1));			\
-+	LIST_FIRST((head1)) = LIST_FIRST((head2));			\
-+	LIST_FIRST((head2)) = swap_tmp;					\
-+	if ((swap_tmp = LIST_FIRST((head1))) != NULL)			\
-+		swap_tmp->field.le_prev = &LIST_FIRST((head1));		\
-+	if ((swap_tmp = LIST_FIRST((head2))) != NULL)			\
-+		swap_tmp->field.le_prev = &LIST_FIRST((head2));		\
-+} while (0)
-+
-+#define	TAILQ_FOREACH_FROM(var, head, field)				\
-+	for ((var) = ((var) ? (var) : TAILQ_FIRST((head)));		\
-+	    (var);							\
-+	    (var) = TAILQ_NEXT((var), field))
-+
-+#define	TAILQ_FOREACH_FROM_SAFE(var, head, field, tvar)			\
-+	for ((var) = ((var) ? (var) : TAILQ_FIRST((head)));		\
-+	    (var) && ((tvar) = TAILQ_NEXT((var), field), 1);		\
-+	    (var) = (tvar))
-+
-+#define	TAILQ_FOREACH_REVERSE_FROM(var, head, headname, field)		\
-+	for ((var) = ((var) ? (var) : TAILQ_LAST((head), headname));	\
-+	    (var);							\
-+	    (var) = TAILQ_PREV((var), headname, field))
-+
-+#define	TAILQ_FOREACH_REVERSE_FROM_SAFE(var, head, headname, field, tvar) \
-+	for ((var) = ((var) ? (var) : TAILQ_LAST((head), headname));	\
-+	    (var) && ((tvar) = TAILQ_PREV((var), headname, field), 1);	\
-+	    (var) = (tvar))
-+
- #define TAILQ_SWAP(head1, head2, type, field) do {			\
- 	struct type *swap_first = (head1)->tqh_first;			\
- 	struct type **swap_last = (head1)->tqh_last;			\
-@@ -689,4 +694,4 @@
- 		(head2)->tqh_last = &(head2)->tqh_first;		\
- } while (0)
- 
--#endif /* !_SYS_QUEUE_H_ */
-+#endif /* !_FREEBSD_SYS_QUEUE_H_ */

Added: trunk/kfreebsd-kernel-headers/debian/patches/queue_collision.diff
===================================================================
--- trunk/kfreebsd-kernel-headers/debian/patches/queue_collision.diff	                        (rev 0)
+++ trunk/kfreebsd-kernel-headers/debian/patches/queue_collision.diff	2013-08-20 09:32:46 UTC (rev 4896)
@@ -0,0 +1,340 @@
+--- a/sys/sys/queue.h
++++ b/sys/sys/queue.h
+@@ -30,9 +30,10 @@
+  * $FreeBSD$
+  */
+ 
+-#ifndef _SYS_QUEUE_H_
+-#define	_SYS_QUEUE_H_
++#ifndef _SYS_KERN_QUEUE_H_
++#define	_SYS_KERN_QUEUE_H_
+ 
++#include <sys/queue.h>
+ #include <sys/cdefs.h>
+ 
+ /*
+@@ -164,10 +165,12 @@
+ 
+ #define	SLIST_FIRST(head)	((head)->slh_first)
+ 
++#if !defined(__GLIBC__) || defined(_KERNEL)
+ #define	SLIST_FOREACH(var, head, field)					\
+ 	for ((var) = SLIST_FIRST((head));				\
+ 	    (var);							\
+ 	    (var) = SLIST_NEXT((var), field))
++#endif
+ 
+ #define	SLIST_FOREACH_FROM(var, head, field)				\
+ 	for ((var) = ((var) ? (var) : SLIST_FIRST((head)));		\
+@@ -189,6 +192,7 @@
+ 	    ((var) = *(varp)) != NULL;					\
+ 	    (varp) = &SLIST_NEXT((var), field))
+ 
++#if !defined(__GLIBC__) || defined(_KERNEL)
+ #define	SLIST_INIT(head) do {						\
+ 	SLIST_FIRST((head)) = NULL;					\
+ } while (0)
+@@ -202,9 +206,11 @@
+ 	SLIST_NEXT((elm), field) = SLIST_FIRST((head));			\
+ 	SLIST_FIRST((head)) = (elm);					\
+ } while (0)
++#endif
+ 
+ #define	SLIST_NEXT(elm, field)	((elm)->field.sle_next)
+ 
++#if !defined(__GLIBC__) || defined(_KERNEL)
+ #define	SLIST_REMOVE(head, elm, type, field) do {			\
+ 	QMD_SAVELINK(oldnext, (elm)->field.sle_next);			\
+ 	if (SLIST_FIRST((head)) == (elm)) {				\
+@@ -218,7 +224,9 @@
+ 	}								\
+ 	TRASHIT(*oldnext);						\
+ } while (0)
++#endif
+ 
++#if !defined(__GLIBC__) || defined(_KERNEL)
+ #define SLIST_REMOVE_AFTER(elm, field) do {				\
+ 	SLIST_NEXT(elm, field) =					\
+ 	    SLIST_NEXT(SLIST_NEXT(elm, field), field);			\
+@@ -227,6 +235,7 @@
+ #define	SLIST_REMOVE_HEAD(head, field) do {				\
+ 	SLIST_FIRST((head)) = SLIST_NEXT(SLIST_FIRST((head)), field);	\
+ } while (0)
++#endif
+ 
+ #define SLIST_SWAP(head1, head2, type) do {				\
+ 	struct type *swap_first = SLIST_FIRST(head1);			\
+@@ -254,6 +263,7 @@
+ /*
+  * Singly-linked Tail queue functions.
+  */
++#if !defined(__GLIBC__) || defined(_KERNEL)
+ #define	STAILQ_CONCAT(head1, head2) do {				\
+ 	if (!STAILQ_EMPTY((head2))) {					\
+ 		*(head1)->stqh_last = (head2)->stqh_first;		\
+@@ -261,36 +271,44 @@
+ 		STAILQ_INIT((head2));					\
+ 	}								\
+ } while (0)
++#endif
+ 
+ #define	STAILQ_EMPTY(head)	((head)->stqh_first == NULL)
+ 
+ #define	STAILQ_FIRST(head)	((head)->stqh_first)
+ 
++#if !defined(__GLIBC__) || defined(_KERNEL)
+ #define	STAILQ_FOREACH(var, head, field)				\
+ 	for((var) = STAILQ_FIRST((head));				\
+ 	   (var);							\
+ 	   (var) = STAILQ_NEXT((var), field))
++#endif
+ 
+ #define	STAILQ_FOREACH_FROM(var, head, field)				\
+ 	for ((var) = ((var) ? (var) : STAILQ_FIRST((head)));		\
+ 	   (var);							\
+ 	   (var) = STAILQ_NEXT((var), field))
+ 
++#if !defined(__GLIBC__) || defined(_KERNEL)
+ #define	STAILQ_FOREACH_SAFE(var, head, field, tvar)			\
+ 	for ((var) = STAILQ_FIRST((head));				\
+ 	    (var) && ((tvar) = STAILQ_NEXT((var), field), 1);		\
+ 	    (var) = (tvar))
++#endif
+ 
+ #define	STAILQ_FOREACH_FROM_SAFE(var, head, field, tvar)		\
+ 	for ((var) = ((var) ? (var) : STAILQ_FIRST((head)));		\
+ 	    (var) && ((tvar) = STAILQ_NEXT((var), field), 1);		\
+ 	    (var) = (tvar))
+ 
++#if !defined(__GLIBC__) || defined(_KERNEL)
+ #define	STAILQ_INIT(head) do {						\
+ 	STAILQ_FIRST((head)) = NULL;					\
+ 	(head)->stqh_last = &STAILQ_FIRST((head));			\
+ } while (0)
++#endif
+ 
++#if !defined(__GLIBC__) || defined(_KERNEL)
+ #define	STAILQ_INSERT_AFTER(head, tqelm, elm, field) do {		\
+ 	if ((STAILQ_NEXT((elm), field) = STAILQ_NEXT((tqelm), field)) == NULL)\
+ 		(head)->stqh_last = &STAILQ_NEXT((elm), field);		\
+@@ -308,6 +326,7 @@
+ 	*(head)->stqh_last = (elm);					\
+ 	(head)->stqh_last = &STAILQ_NEXT((elm), field);			\
+ } while (0)
++#endif
+ 
+ #define	STAILQ_LAST(head, type, field)					\
+ 	(STAILQ_EMPTY((head)) ? NULL :					\
+@@ -315,6 +334,7 @@
+ 
+ #define	STAILQ_NEXT(elm, field)	((elm)->field.stqe_next)
+ 
++#if !defined(__GLIBC__) || defined(_KERNEL)
+ #define	STAILQ_REMOVE(head, elm, type, field) do {			\
+ 	QMD_SAVELINK(oldnext, (elm)->field.stqe_next);			\
+ 	if (STAILQ_FIRST((head)) == (elm)) {				\
+@@ -328,6 +348,7 @@
+ 	}								\
+ 	TRASHIT(*oldnext);						\
+ } while (0)
++#endif
+ 
+ #define STAILQ_REMOVE_AFTER(head, elm, field) do {			\
+ 	if ((STAILQ_NEXT(elm, field) =					\
+@@ -335,11 +356,13 @@
+ 		(head)->stqh_last = &STAILQ_NEXT((elm), field);		\
+ } while (0)
+ 
++#if !defined(__GLIBC__) || defined(_KERNEL)
+ #define	STAILQ_REMOVE_HEAD(head, field) do {				\
+ 	if ((STAILQ_FIRST((head)) =					\
+ 	     STAILQ_NEXT(STAILQ_FIRST((head)), field)) == NULL)		\
+ 		(head)->stqh_last = &STAILQ_FIRST((head));		\
+ } while (0)
++#endif
+ 
+ #define STAILQ_SWAP(head1, head2, type) do {				\
+ 	struct type *swap_first = STAILQ_FIRST(head1);			\
+@@ -405,30 +428,37 @@
+ 
+ #define	LIST_FIRST(head)	((head)->lh_first)
+ 
++#if !defined(__GLIBC__) || defined(_KERNEL)
+ #define	LIST_FOREACH(var, head, field)					\
+ 	for ((var) = LIST_FIRST((head));				\
+ 	    (var);							\
+ 	    (var) = LIST_NEXT((var), field))
++#endif
+ 
+ #define	LIST_FOREACH_FROM(var, head, field)				\
+ 	for ((var) = ((var) ? (var) : LIST_FIRST((head)));		\
+ 	    (var);							\
+ 	    (var) = LIST_NEXT((var), field))
+ 
++#if !defined(__GLIBC__) || defined(_KERNEL)
+ #define	LIST_FOREACH_SAFE(var, head, field, tvar)			\
+ 	for ((var) = LIST_FIRST((head));				\
+ 	    (var) && ((tvar) = LIST_NEXT((var), field), 1);		\
+ 	    (var) = (tvar))
++#endif
+ 
+ #define	LIST_FOREACH_FROM_SAFE(var, head, field, tvar)			\
+ 	for ((var) = ((var) ? (var) : LIST_FIRST((head)));		\
+ 	    (var) && ((tvar) = LIST_NEXT((var), field), 1);		\
+ 	    (var) = (tvar))
+ 
++#if !defined(__GLIBC__) || defined(_KERNEL)
+ #define	LIST_INIT(head) do {						\
+ 	LIST_FIRST((head)) = NULL;					\
+ } while (0)
++#endif
+ 
++#if !defined(__GLIBC__) || defined(_KERNEL)
+ #define	LIST_INSERT_AFTER(listelm, elm, field) do {			\
+ 	QMD_LIST_CHECK_NEXT(listelm, field);				\
+ 	if ((LIST_NEXT((elm), field) = LIST_NEXT((listelm), field)) != NULL)\
+@@ -453,6 +483,7 @@
+ 	LIST_FIRST((head)) = (elm);					\
+ 	(elm)->field.le_prev = &LIST_FIRST((head));			\
+ } while (0)
++#endif
+ 
+ #define	LIST_NEXT(elm, field)	((elm)->field.le_next)
+ 
+@@ -460,6 +491,7 @@
+ 	((elm)->field.le_prev == &LIST_FIRST((head)) ? NULL :		\
+ 	    __containerof((elm)->field.le_prev, struct type, field.le_next))
+ 
++#if !defined(__GLIBC__) || defined(_KERNEL)
+ #define	LIST_REMOVE(elm, field) do {					\
+ 	QMD_SAVELINK(oldnext, (elm)->field.le_next);			\
+ 	QMD_SAVELINK(oldprev, (elm)->field.le_prev);			\
+@@ -472,6 +504,7 @@
+ 	TRASHIT(*oldnext);						\
+ 	TRASHIT(*oldprev);						\
+ } while (0)
++#endif
+ 
+ #define LIST_SWAP(head1, head2, type, field) do {			\
+ 	struct type *swap_tmp = LIST_FIRST((head1));			\
+@@ -486,22 +519,26 @@
+ /*
+  * Tail queue declarations.
+  */
++#if !defined(__GLIBC__) || defined(_KERNEL)
+ #define	TAILQ_HEAD(name, type)						\
+ struct name {								\
+ 	struct type *tqh_first;	/* first element */			\
+ 	struct type **tqh_last;	/* addr of last next element */		\
+ 	TRACEBUF							\
+ }
++#endif
+ 
+ #define	TAILQ_HEAD_INITIALIZER(head)					\
+ 	{ NULL, &(head).tqh_first }
+ 
++#if !defined(__GLIBC__) || defined(_KERNEL)
+ #define	TAILQ_ENTRY(type)						\
+ struct {								\
+ 	struct type *tqe_next;	/* next element */			\
+ 	struct type **tqe_prev;	/* address of previous next element */	\
+ 	TRACEBUF							\
+ }
++#endif
+ 
+ /*
+  * Tail queue functions.
+@@ -537,6 +574,7 @@
+ #define	QMD_TAILQ_CHECK_PREV(elm, field)
+ #endif /* (_KERNEL && INVARIANTS) */
+ 
++#if !defined(__GLIBC__) || defined(_KERNEL)
+ #define	TAILQ_CONCAT(head1, head2, field) do {				\
+ 	if (!TAILQ_EMPTY(head2)) {					\
+ 		*(head1)->tqh_last = (head2)->tqh_first;		\
+@@ -547,51 +585,61 @@
+ 		QMD_TRACE_HEAD(head2);					\
+ 	}								\
+ } while (0)
++#endif
+ 
+ #define	TAILQ_EMPTY(head)	((head)->tqh_first == NULL)
+ 
+ #define	TAILQ_FIRST(head)	((head)->tqh_first)
+ 
++#if !defined(__GLIBC__) || defined(_KERNEL)
+ #define	TAILQ_FOREACH(var, head, field)					\
+ 	for ((var) = TAILQ_FIRST((head));				\
+ 	    (var);							\
+ 	    (var) = TAILQ_NEXT((var), field))
++#endif
+ 
+ #define	TAILQ_FOREACH_FROM(var, head, field)				\
+ 	for ((var) = ((var) ? (var) : TAILQ_FIRST((head)));		\
+ 	    (var);							\
+ 	    (var) = TAILQ_NEXT((var), field))
+ 
++#if !defined(__GLIBC__) || defined(_KERNEL)
+ #define	TAILQ_FOREACH_SAFE(var, head, field, tvar)			\
+ 	for ((var) = TAILQ_FIRST((head));				\
+ 	    (var) && ((tvar) = TAILQ_NEXT((var), field), 1);		\
+ 	    (var) = (tvar))
++#endif
+ 
+ #define	TAILQ_FOREACH_FROM_SAFE(var, head, field, tvar)			\
+ 	for ((var) = ((var) ? (var) : TAILQ_FIRST((head)));		\
+ 	    (var) && ((tvar) = TAILQ_NEXT((var), field), 1);		\
+ 	    (var) = (tvar))
+ 
++#if !defined(__GLIBC__) || defined(_KERNEL)
+ #define	TAILQ_FOREACH_REVERSE(var, head, headname, field)		\
+ 	for ((var) = TAILQ_LAST((head), headname);			\
+ 	    (var);							\
+ 	    (var) = TAILQ_PREV((var), headname, field))
++#endif
+ 
+ #define	TAILQ_FOREACH_REVERSE_FROM(var, head, headname, field)		\
+ 	for ((var) = ((var) ? (var) : TAILQ_LAST((head), headname));	\
+ 	    (var);							\
+ 	    (var) = TAILQ_PREV((var), headname, field))
+ 
++#if !defined(__GLIBC__) || defined(_KERNEL)
+ #define	TAILQ_FOREACH_REVERSE_SAFE(var, head, headname, field, tvar)	\
+ 	for ((var) = TAILQ_LAST((head), headname);			\
+ 	    (var) && ((tvar) = TAILQ_PREV((var), headname, field), 1);	\
+ 	    (var) = (tvar))
++#endif
+ 
+ #define	TAILQ_FOREACH_REVERSE_FROM_SAFE(var, head, headname, field, tvar) \
+ 	for ((var) = ((var) ? (var) : TAILQ_LAST((head), headname));	\
+ 	    (var) && ((tvar) = TAILQ_PREV((var), headname, field), 1);	\
+ 	    (var) = (tvar))
+ 
++#if !defined(__GLIBC__) || defined(_KERNEL)
+ #define	TAILQ_INIT(head) do {						\
+ 	TAILQ_FIRST((head)) = NULL;					\
+ 	(head)->tqh_last = &TAILQ_FIRST((head));			\
+@@ -645,6 +693,7 @@
+ 	QMD_TRACE_HEAD(head);						\
+ 	QMD_TRACE_ELEM(&(elm)->field);					\
+ } while (0)
++#endif
+ 
+ #define	TAILQ_LAST(head, headname)					\
+ 	(*(((struct headname *)((head)->tqh_last))->tqh_last))
+@@ -654,6 +703,7 @@
+ #define	TAILQ_PREV(elm, headname, field)				\
+ 	(*(((struct headname *)((elm)->field.tqe_prev))->tqh_last))
+ 
++#if !defined(__GLIBC__) || defined(_KERNEL)
+ #define	TAILQ_REMOVE(head, elm, field) do {				\
+ 	QMD_SAVELINK(oldnext, (elm)->field.tqe_next);			\
+ 	QMD_SAVELINK(oldprev, (elm)->field.tqe_prev);			\
+@@ -671,6 +721,7 @@
+ 	TRASHIT(*oldprev);						\
+ 	QMD_TRACE_ELEM(&(elm)->field);					\
+ } while (0)
++#endif
+ 
+ #define TAILQ_SWAP(head1, head2, type, field) do {			\
+ 	struct type *swap_first = (head1)->tqh_first;			\

Modified: trunk/kfreebsd-kernel-headers/debian/patches/series
===================================================================
--- trunk/kfreebsd-kernel-headers/debian/patches/series	2013-08-19 15:06:46 UTC (rev 4895)
+++ trunk/kfreebsd-kernel-headers/debian/patches/series	2013-08-20 09:32:46 UTC (rev 4896)
@@ -36,4 +36,4 @@
 bsd_visible.diff
 050_sigframe.diff
 remove_link_addr_and_link_ntoa.diff
-queue_bsd_extensions.diff
+queue_collision.diff




More information about the Glibc-bsd-commits mailing list