Hi! There are many undefined leftover QUEUEDEBUG_* macros in sys/queue.h, which render the header unusable. The BSD header defines them using: #if defined(_KERNEL) && defined(QUEUEDEBUG) #define QUEUEDEBUG_LIST_INSERT_HEAD(head, elm, field) \ if ((head)->lh_first && \ (head)->lh_first->field.le_prev != &(head)->lh_first) \ panic("LIST_INSERT_HEAD %p %s:%d", (head), __FILE__, __LINE__); ... #else #define QUEUEDEBUG_LIST_INSERT_HEAD(head, elm, field) ... #endif etc. Attached are two alternative patches, one removes all traces of the debug macros (my preference), one defines the macros as empty. Jakub