diff options
-rw-r--r-- | ipc/ipc_kmsg.c | 4 | ||||
-rw-r--r-- | ipc/ipc_kmsg.h | 19 |
2 files changed, 16 insertions, 7 deletions
diff --git a/ipc/ipc_kmsg.c b/ipc/ipc_kmsg.c index 71a0d74..66643fd 100644 --- a/ipc/ipc_kmsg.c +++ b/ipc/ipc_kmsg.c @@ -139,9 +139,7 @@ ipc_kmsg_rmqueue( next->ikm_prev = prev; prev->ikm_next = next; } - /* XXX Temporary debug logic */ - kmsg->ikm_next = IKM_BOGUS; - kmsg->ikm_prev = IKM_BOGUS; + ikm_mark_bogus (kmsg); } /* diff --git a/ipc/ipc_kmsg.h b/ipc/ipc_kmsg.h index f06857a..620785b 100644 --- a/ipc/ipc_kmsg.h +++ b/ipc/ipc_kmsg.h @@ -72,11 +72,24 @@ typedef struct ipc_kmsg { #define ikm_plus_overhead(size) ((vm_size_t)((size) + IKM_OVERHEAD)) #define ikm_less_overhead(size) ((mach_msg_size_t)((size) - IKM_OVERHEAD)) +#if MACH_IPC_TEST /* - * XXX For debugging. + * For debugging. */ #define IKM_BOGUS ((ipc_kmsg_t) 0xffffff10) +#define ikm_mark_bogus(kmsg) \ +MACRO_BEGIN \ + (kmsg)->ikm_next = IKM_BOGUS; \ + (kmsg)->ikm_prev = IKM_BOGUS; \ +MACRO_END + +#else /* MACH_IPC_TEST */ + +#define ikm_mark_bogus(kmsg) ; + +#endif /* MACH_IPC_TEST */ + /* * We keep a per-processor cache of kernel message buffers. * The cache saves the overhead/locking of using kalloc/kfree. @@ -198,9 +211,7 @@ MACRO_BEGIN \ _next->ikm_prev = _prev; \ _prev->ikm_next = _next; \ } \ - /* XXX Debug paranoia */ \ - kmsg->ikm_next = IKM_BOGUS; \ - kmsg->ikm_prev = IKM_BOGUS; \ + ikm_mark_bogus (kmsg); \ MACRO_END #define ipc_kmsg_enqueue_macro(queue, kmsg) \ |