]> git.saurik.com Git - apple/xnu.git/blobdiff - osfmk/ipc/ipc_kmsg.h
xnu-517.7.7.tar.gz
[apple/xnu.git] / osfmk / ipc / ipc_kmsg.h
index 9ebb1402d043cc206d8eed1b55030d2e3374e84b..dce03b573889f37c6e454d36431388b8fc770751 100644 (file)
@@ -119,13 +119,15 @@ typedef struct ipc_kmsg {
 
 #define        ikm_prealloc_set_inuse(kmsg, port)                              \
 MACRO_BEGIN                                                            \
-       assert(port != IP_NULL);                                        \
-       (kmsg)->ikm_prealloc = port;                                    \
+       assert((port) != IP_NULL);                                      \
+       (kmsg)->ikm_prealloc = (port);                                  \
+       ip_reference(port);                                             \
 MACRO_END
 
 #define ikm_prealloc_clear_inuse(kmsg, port)                           \
 MACRO_BEGIN                                                            \
        (kmsg)->ikm_prealloc = IP_NULL;                                 \
+       ip_release(port);                                               \
 MACRO_END