tmsg
tmsg(pat, off_msgs[tracelevel]);
tmsg(pat, on_msgs[tracelevel++]);
tmsg("switch to trace file %s", fn);
struct netmsg_tcp_timer *tmsg = tp->tt_msg;
KKASSERT(tmsg != NULL && tmsg->tt_cpuid == mycpuid &&
tmsg->tt_tcb != NULL);
tmsg->tt_tasks |= task;
if (tmsg->tt_msg.lmsg.ms_flags & MSGF_DONE)
lwkt_sendmsg_oncpu(tmsg->tt_msgport, &tmsg->tt_msg.lmsg);
struct netmsg_tcp_timer *tmsg = (struct netmsg_tcp_timer *)msg;
KKASSERT(tmsg->tt_cpuid == mycpuid && tmsg->tt_tcb != NULL);
tp = tmsg->tt_tcb;
tmsg->tt_running_tasks = tmsg->tt_tasks;
tmsg->tt_prev_tasks = tmsg->tt_tasks;
tmsg->tt_tasks = 0;
lwkt_replymsg(&tmsg->tt_msg.lmsg, 0);
if (tmsg->tt_running_tasks == 0) {
if ((tmsg->tt_running_tasks & tt->tt_task) == 0)
tmsg->tt_running_tasks &= ~tt->tt_task;
if (tmsg->tt_running_tasks == 0) /* nothing left to do */
struct netmsg_tcp_timer *tmsg = tp->tt_msg;
netmsg_init(&tmsg->tt_msg, NULL, &netisr_adone_rport,
tmsg->tt_cpuid = mycpuid;
tmsg->tt_msgport = msgport;
tmsg->tt_tcb = tp;
tmsg->tt_tasks = 0;
struct netmsg_tcp_timer *tmsg = tp->tt_msg;
if (tmsg == NULL || /* listen socket */
tmsg->tt_tcb == NULL) /* only tcp_attach() is called */
KKASSERT(tmsg->tt_cpuid == mycpuid);
if ((tmsg->tt_msg.lmsg.ms_flags & MSGF_DONE) == 0) {
lwkt_dropmsg(&tmsg->tt_msg.lmsg);