diff options
Diffstat (limited to 'debian/patches/0002-ipc-guard-test-code-with-MACH_IPC_TEST.patch')
-rw-r--r-- | debian/patches/0002-ipc-guard-test-code-with-MACH_IPC_TEST.patch | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/debian/patches/0002-ipc-guard-test-code-with-MACH_IPC_TEST.patch b/debian/patches/0002-ipc-guard-test-code-with-MACH_IPC_TEST.patch new file mode 100644 index 0000000..4308b90 --- /dev/null +++ b/debian/patches/0002-ipc-guard-test-code-with-MACH_IPC_TEST.patch @@ -0,0 +1,72 @@ +From 1bb1ba65cb9efceeb20b4296f903f3fe58b3341e Mon Sep 17 00:00:00 2001 +From: Justus Winter <4winter@informatik.uni-hamburg.de> +Date: Tue, 16 Dec 2014 14:21:26 +0100 +Subject: [PATCH gnumach 2/2] ipc: guard test code with `MACH_IPC_TEST' + +* ipc/ipc_kmsg.h (ikm_mark_bogus): New macro. +(ipc_kmsg_rmqueue_first_macro): Use `ikm_mark_bogus'. +* ipc/ipc_kmsg.c (ipc_kmsg_rmqueue): Likewise. +--- + ipc/ipc_kmsg.c | 4 +--- + 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) \ +-- +2.1.3 + |