#ifdef _MIG_TRACE_PARAMETERS_
#define __BeforeRcvCallTrace(msgid,arg1,arg2,arg3,arg4) \
- KERNEL_DEBUG_CONSTANT(KDBG_MIGCODE(msgid) | DBG_FUNC_START, \
+ KERNEL_DEBUG_CONSTANT_IST(KDEBUG_TRACE, \
+ KDBG_MIGCODE(msgid) | DBG_FUNC_START, \
(unsigned int)(arg1), \
(unsigned int)(arg2), \
(unsigned int)(arg3), \
(unsigned int)(0));
#define __AfterRcvCallTrace(msgid,arg1,arg2,arg3,arg4) \
- KERNEL_DEBUG_CONSTANT(KDBG_MIGCODE(msgid) | DBG_FUNC_END, \
+ KERNEL_DEBUG_CONSTANT_IST(KDEBUG_TRACE, \
+ KDBG_MIGCODE(msgid) | DBG_FUNC_END, \
(unsigned int)(arg1), \
(unsigned int)(arg2), \
(unsigned int)(arg3), \
(unsigned int)(0));
#define __BeforeSimpleCallTrace(msgid,arg1,arg2,arg3,arg4) \
- KERNEL_DEBUG_CONSTANT(KDBG_MIGCODE(msgid) | DBG_FUNC_START, \
+ KERNEL_DEBUG_CONSTANT_IST(KDEBUG_TRACE, \
+ KDBG_MIGCODE(msgid) | DBG_FUNC_START, \
(unsigned int)(arg1), \
(unsigned int)(arg2), \
(unsigned int)(arg3), \
(unsigned int)(0));
#define __AfterSimpleCallTrace(msgid,arg1,arg2,arg3,arg4) \
- KERNEL_DEBUG_CONSTANT(KDBG_MIGCODE(msgid) | DBG_FUNC_END, \
+ KERNEL_DEBUG_CONSTANT_IST(KDEBUG_TRACE, \
+ KDBG_MIGCODE(msgid) | DBG_FUNC_END, \
(unsigned int)(arg1), \
(unsigned int)(arg2), \
(unsigned int)(arg3), \
#else /* !_MIG_TRACE_PARAMETERS_ */
#define __BeforeRcvRpc(msgid, _NAME_) \
- KERNEL_DEBUG_CONSTANT(KDBG_MIGCODE(msgid) | DBG_FUNC_START, \
+ KERNEL_DEBUG_CONSTANT_IST(KDEBUG_TRACE, \
+ KDBG_MIGCODE(msgid) | DBG_FUNC_START, \
(unsigned int)(0), \
(unsigned int)(0), \
(unsigned int)(0), \
(unsigned int)(0));
#define __AfterRcvRpc(msgid, _NAME_) \
- KERNEL_DEBUG_CONSTANT(KDBG_MIGCODE(msgid) | DBG_FUNC_END, \
+ KERNEL_DEBUG_CONSTANT_IST(KDEBUG_TRACE, \
+ KDBG_MIGCODE(msgid) | DBG_FUNC_END, \
(unsigned int)(0), \
(unsigned int)(0), \
(unsigned int)(0), \
#define __BeforeRcvSimple(msgid, _NAME_) \
- KERNEL_DEBUG_CONSTANT(KDBG_MIGCODE(msgid) | DBG_FUNC_START, \
+ KERNEL_DEBUG_CONSTANT_IST(KDEBUG_TRACE, \
+ KDBG_MIGCODE(msgid) | DBG_FUNC_START, \
(unsigned int)(0), \
(unsigned int)(0), \
(unsigned int)(0), \
(unsigned int)(0));
#define __AfterRcvSimple(msgid, _NAME_) \
- KERNEL_DEBUG_CONSTANT(KDBG_MIGCODE(msgid) | DBG_FUNC_END, \
+ KERNEL_DEBUG_CONSTANT_IST(KDEBUG_TRACE, \
+ KDBG_MIGCODE(msgid) | DBG_FUNC_END, \
(unsigned int)(0), \
(unsigned int)(0), \
(unsigned int)(0), \
#endif /* !_MIG_TRACE_PARAMETERS_ */
#define _MIG_MSGID_INVALID(msgid) \
- KERNEL_DEBUG_CONSTANT(MACHDBG_CODE(DBG_MACH_MSGID_INVALID, (msgid)), \
+ KERNEL_DEBUG_CONSTANT_IST(KDEBUG_TRACE, \
+ MACHDBG_CODE(DBG_MACH_MSGID_INVALID, (msgid)), \
(unsigned int)(0), \
(unsigned int)(0), \
(unsigned int)(0), \
__BEGIN_DECLS
/* Send a message from the kernel */
-extern mach_msg_return_t mach_msg_send_from_kernel(
+
+extern mach_msg_return_t mach_msg_send_from_kernel_proper(
mach_msg_header_t *msg,
mach_msg_size_t send_size);
+#define mach_msg_send_from_kernel mach_msg_send_from_kernel_proper
-extern mach_msg_return_t mach_msg_rpc_from_kernel(
+extern mach_msg_return_t
+mach_msg_rpc_from_kernel_proper(
mach_msg_header_t *msg,
mach_msg_size_t send_size,
mach_msg_size_t rcv_size);
+#define mach_msg_rpc_from_kernel mach_msg_rpc_from_kernel_proper
+
+extern void
+mach_msg_destroy_from_kernel_proper(
+ mach_msg_header_t *msg);
+
+#define mach_msg_destroy_from_kernel mach_msg_destroy_from_kernel_proper
+
+#ifdef XNU_KERNEL_PRIVATE
+extern mach_msg_return_t mach_msg_send_from_kernel_with_options_legacy(
+ mach_msg_header_t *msg,
+ mach_msg_size_t send_size,
+ mach_msg_option_t option,
+ mach_msg_timeout_t timeout_val);
+#endif /* XNU_KERNEL_PRIVATE */
+
extern mach_msg_return_t mach_msg_send_from_kernel_with_options(
mach_msg_header_t *msg,
mach_msg_size_t send_size,
extern void mach_msg_receive_continue(void);
/* Initialize kernel server dispatch table */
-extern void mig_init(void) __attribute__((section("__TEXT, initcode")));
+extern void mig_init(void);
/*
* Kernel implementation of the MIG object base class