In the reactor main loop, _spdk_reactor_run(), check if both spdk_thread_is_exited() and spdk_thread_is_idle() return true, and if they are true, then remove it from the queue and call spdk_thread_destroy() to delete it. By previous patches, the exited thread does not accept any new message or poller, all pending messages are processed, and all unregistering pollers are completed. Hence we only need to have very simple check in the reactor main loop. Signed-off-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com> Change-Id: Ib678245de98a5c050843e6435026bdcf8b6c75c7 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/507 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Ben Walker <benjamin.walker@intel.com> Reviewed-by: Aleksey Marchuk <alexeymar@mellanox.com> |
||
---|---|---|
.. | ||
app.c | ||
json_config.c | ||
Makefile | ||
reactor.c | ||
rpc.c | ||
subsystem.c |