DPDK worker support local listen table, so missed update worker->references
in get_worker(), this will cause assert(oldref > 0) happen in release_worker
Signed-off-by: chunmei Liu <chunmei.liu@intel.com>
Worker *w = worker;
if (!msgr->get_stack()->support_local_listen_table())
w = msgr->get_stack()->get_worker();
+ else
+ ++w->references;
int r = listen_socket.accept(&cli_socket, opts, &addr, w);
if (r == 0) {
ldout(msgr->cct, 10) << __func__ << " accepted incoming on sd " << cli_socket.fd() << dendl;