reply->priority = request->priority;
reply->transport = request->transport->id;
+ MPRINT("(%zd) finished, sending reply\n", request->number);
+
/*
* Send the reply, which also polls the request queue.
*/
continue;
}
+ MPRINT("(%zd) taking too long, stopping it\n", request->number);
+
/*
* Tell the network side that this request is done.
*/
if (final == FR_TRANSPORT_DONE) {
FR_DLIST_REMOVE(worker->waiting_to_die);
+
+ MPRINT("(%zd) finally finished\n", request->number);
+
/*
* Tell the network side that this request is done.
*/
request->el = worker->el;
request->packet_ctx = cd->ctx;
+ /*
+ * @todo - call worker->transports[cd->transport]->recv_request()
+ */
+
/*
* Now that the "request" structure has been initialized, go decode the packet.
*/
ssize_t size = 0;
fr_transport_final_t final;
+ MPRINT("(%zd) running\n", request->number);
+
/*
* If we still have the same packet, and the channel is
* active, run it. Otherwise, tell it that it's done.
break;
}
+ MPRINT("(%zd) done naturally\n", request->number);
+
fr_worker_send_reply(worker, request, size);
}