session: handle close before app accept reply
Change-Id: Ic35bbf55851087d70bfacc1eab4dea4285f98c86 Signed-off-by: Florin Coras <fcoras@cisco.com>
This commit is contained in:
Florin Coras
committed by
Damjan Marion
parent
6fbef23228
commit
e2ea193171
@ -822,8 +822,7 @@ stream_session_delete_notify (transport_connection_t * tc)
|
||||
stream_session_delete (s);
|
||||
break;
|
||||
default:
|
||||
/* Assume connection was not yet added the lookup table */
|
||||
session_free_w_fifos (s);
|
||||
stream_session_delete (s);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -408,6 +408,7 @@ mq_try_lock_and_alloc_msg (svm_msg_q_t * app_mq, svm_msg_q_msg_t * msg)
|
||||
if (!rv)
|
||||
return 0;
|
||||
try++;
|
||||
usleep (1);
|
||||
}
|
||||
clib_warning ("failed to alloc msg");
|
||||
return -1;
|
||||
|
@ -64,11 +64,9 @@ session_mq_accepted_reply_handler (void *data)
|
||||
else
|
||||
{
|
||||
s = session_get_from_handle_if_valid (mp->handle);
|
||||
if (!s)
|
||||
{
|
||||
clib_warning ("session 0x%llx doesn't exist", mp->handle);
|
||||
return;
|
||||
}
|
||||
/* Closed while waiting for app to reply */
|
||||
if (!s || s->session_state > SESSION_STATE_READY)
|
||||
return;
|
||||
app_wrk = app_worker_get (s->app_wrk_index);
|
||||
if (app_wrk->app_index != mp->context)
|
||||
{
|
||||
|
Reference in New Issue
Block a user