4 * Implements Inlines for LWKT messages and ports.
6 * $DragonFly: src/sys/sys/msgport2.h,v 1.6 2004/01/18 12:29:50 dillon Exp $
9 #ifndef _SYS_MSGPORT2_H_
10 #define _SYS_MSGPORT2_H_
14 lwkt_initmsg(lwkt_msg_t msg, lwkt_port_t rport, int cmd)
17 msg->ms_flags = MSGF_DONE;
18 msg->ms_reply_port = rport;
24 lwkt_reinitmsg(lwkt_msg_t msg, lwkt_port_t rport)
26 msg->ms_flags = (msg->ms_flags & MSGF_ASYNC) | MSGF_DONE;
27 msg->ms_reply_port = rport;
32 lwkt_beginmsg(lwkt_port_t port, lwkt_msg_t msg)
34 return(port->mp_putport(port, msg));
39 lwkt_forwardmsg(lwkt_port_t port, lwkt_msg_t msg)
41 return(port->mp_putport(port, msg));
46 lwkt_waitmsg(lwkt_msg_t msg)
48 lwkt_port_t port = msg->ms_reply_port;
49 return(((lwkt_msg_t)port->mp_waitport(port, msg))->ms_error);
54 lwkt_abortmsg(lwkt_msg_t msg)
56 lwkt_port_t port = msg->ms_target_port;
57 port->mp_abortport(port, msg);
62 lwkt_replymsg(lwkt_msg_t msg, int error)
64 lwkt_port_t port = msg->ms_reply_port;
65 msg->ms_error = error;
66 port->mp_replyport(port, msg);
71 lwkt_waitport(lwkt_port_t port, lwkt_msg_t msg)
73 return(port->mp_waitport(port, msg));