bug-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH 08/17] ipc: Turn ipc_entry_lookup_failed() into a macro


From: Sergey Bugaev
Subject: [PATCH 08/17] ipc: Turn ipc_entry_lookup_failed() into a macro
Date: Wed, 27 Mar 2024 19:18:32 +0300

ipc_entry_lookup_failed() is used with both mach_msg_user_header_t and
mach_msg_header_t arguments, which are different types. Make it into a
macro, so it works with both.
---
 ipc/ipc_space.h | 22 +++++++++++++---------
 1 file changed, 13 insertions(+), 9 deletions(-)

diff --git a/ipc/ipc_space.h b/ipc/ipc_space.h
index 96d58942..9adbd3f7 100644
--- a/ipc/ipc_space.h
+++ b/ipc/ipc_space.h
@@ -159,15 +159,19 @@ ipc_entry_lookup(
 
 extern volatile boolean_t mach_port_deallocate_debug;
 
-static inline void
-ipc_entry_lookup_failed(mach_msg_header_t *msg, mach_port_name_t name)
-{
-       if (name == MACH_PORT_NAME_NULL || name == MACH_PORT_NAME_DEAD)
-               return;
-       printf("task %.*s looked up a bogus port %lu for %d, most probably a 
bug.\n", (int) sizeof current_task()->name, current_task()->name, (unsigned 
long) name, msg->msgh_id);
-       if (mach_port_deallocate_debug)
-               SoftDebugger("ipc_entry_lookup");
-}
+#define ipc_entry_lookup_failed(msg, port_name)                                
\
+MACRO_BEGIN                                                            \
+       if (MACH_PORT_NAME_VALID(port_name)) {                          \
+               printf("task %.*s looked up a bogus port %lu for %d, "  \
+                      "most probably a bug.\n",                        \
+                       (int) sizeof current_task()->name,              \
+                       current_task()->name,                           \
+                       (unsigned long) (port_name),                    \
+                       (msg)->msgh_id);                                \
+               if (mach_port_deallocate_debug)                         \
+                       SoftDebugger("ipc_entry_lookup");               \
+       }                                                               \
+MACRO_END
 
 /*
  *     Routine:        ipc_entry_get
-- 
2.44.0




reply via email to

[Prev in Thread] Current Thread [Next in Thread]