Lines Matching refs:call
23 * syscall message user side call and return
41 msgvcall(int fd, unsigned long channel, unsigned long call, Msg_return_t* ret, void** xp, va_list ap)
75 if (MSG_CALL(call) == MSG_write && !msg_write && (MSG_PURE(call) == MSG_PURE(MSG_write) || MSG_PURE(call) == (MSG_write|MSG_EXT(MSG_ARG_number, 4))))
90 o = MSG_ARG(call, 4) == MSG_ARG_number ? va_arg(ap, off_t) : (off_t)0;
95 if ((t = msgcall(fd, channel, call, ret, ip, b, z, o)) == -1)
110 if (ret) call |= MSG_VALUE;
113 msgputu(&b, e, call);
115 if (call & MSG_ACK)
132 at = call >> MSG_ARG_CALL;
133 if (call & MSG_VALUE) switch (at & ((1 << MSG_ARG_TYPE) - 1))
178 if (call & MSG_VALUE) switch (MSG_CALL(call))
322 if (call & MSG_FLUSH)
331 if (call & MSG_ACK)
348 if ((rtime = msgvreturn(ack.fd, call, oxp, oap)) == -1)
365 else if (call & MSG_RETURN)
366 r = msgvreturn(fd, call, oxp, oap);
371 * construct a call and send it to fd
376 msgcall(int fd, unsigned long channel, unsigned long call, Msg_return_t* ret, ...)
382 n = msgvcall(fd, channel, call, ret, NiL, ap);
393 msgvreturn(int fd, unsigned long call, void** xp, va_list ap)
414 if (msggetu(&b, e) != call)
424 if (call & MSG_ACK)
426 at = call >> (MSG_ARG_CALL - MSG_ARG_TYPE);
446 switch (MSG_CALL(call))
551 * read a return from a previous call on fd
555 msgreturn(int fd, unsigned long call, ...)
560 va_start(ap, call);
561 n = msgvreturn(fd, call, NiL, ap);