1 /* 2 * SYS/MSGPORT2.H 3 * 4 * Implements Inlines for LWKT messages and ports. 5 * 6 * $DragonFly: src/sys/sys/msgport2.h,v 1.2 2003/07/22 17:03:34 dillon Exp $ 7 */ 8 9 #ifndef _SYS_MSGPORT2_H_ 10 #define _SYS_MSGPORT2_H_ 11 12 static __inline 13 void 14 lwkt_initmsg(lwkt_msg_t msg, int cmd) 15 { 16 msg->ms_cmd = cmd; 17 msg->ms_flags = MSGF_DONE; 18 } 19 20 #ifdef _KERNEL 21 22 static __inline 23 int 24 lwkt_beginmsg(lwkt_port_t port, lwkt_msg_t msg) 25 { 26 return(port->mp_beginmsg(port, msg)); 27 } 28 29 static __inline 30 int 31 lwkt_forwardmsg(lwkt_port_t port, lwkt_msg_t msg) 32 { 33 return(port->mp_beginmsg(port, msg)); 34 } 35 36 static __inline 37 void 38 lwkt_abortmsg(lwkt_port_t port, lwkt_msg_t msg) 39 { 40 port->mp_abortmsg(port, msg); 41 } 42 43 static __inline 44 void 45 lwkt_replymsg(lwkt_msg_t msg, int error) 46 { 47 lwkt_port_t port = msg->ms_reply_port; 48 msg->ms_error = error; 49 port->mp_returnmsg(port, msg); 50 } 51 52 #endif 53 54 #endif 55