[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