Print this page

        

@@ -36,11 +36,21 @@
 #include <assert.h>
 #define ASSERT(a)       assert(a)
 #endif
 
 #ifdef lint
-extern list_node_t *list_d2l(list_t *list, void *obj);
+static list_node_t *
+list_d2l(list_t *list, void *obj)
+{
+        /* Pretty version for lint... */
+        uint64_t *offset = (uint64_t *)obj;
+
+        if (!IS_P2ALIGNED(obj, 8))
+                return (NULL);
+
+        return ((list_node_t *)(offset + (list->list_offset >> 3)));
+}
 #else
 #define list_d2l(a, obj) ((list_node_t *)(((char *)obj) + (a)->list_offset))
 #endif
 #define list_object(a, node) ((void *)(((char *)node) - (a)->list_offset))
 #define list_empty(a) ((a)->list_head.list_next == &(a)->list_head)