X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvnet%2Fsession%2Fsession.h;h=956bff068b4688b1ba7abd18a188c3335690aec5;hb=e759bb543c38a682dc31492a3a0a58669a811538;hp=681b42d868def3ea7046e1c71aa33f1ba48d42b4;hpb=5484daa001ccbbbf8773b273f428dbcddc4750cc;p=vpp.git diff --git a/src/vnet/session/session.h b/src/vnet/session/session.h index 681b42d868d..956bff068b4 100644 --- a/src/vnet/session/session.h +++ b/src/vnet/session/session.h @@ -30,9 +30,6 @@ _(NOT_READY, "Session not ready packets") \ _(FIFO_FULL, "Packets dropped for lack of rx fifo space") \ _(EVENT_FIFO_FULL, "Events not sent for lack of event fifo space") \ _(API_QUEUE_FULL, "Sessions not created for lack of API queue space") \ -_(NEW_SEG_NO_SPACE, "Created segment, couldn't allocate a fifo pair") \ -_(NO_SPACE, "Couldn't allocate a fifo pair") \ -_(SEG_CREATE, "Couldn't create a new segment") typedef enum { @@ -40,7 +37,7 @@ typedef enum foreach_session_input_error #undef _ SESSION_N_ERROR, -} session_error_t; +} session_input_error_t; typedef struct session_tx_context_ { @@ -55,6 +52,7 @@ typedef struct session_tx_context_ u16 deq_per_first_buf; u16 deq_per_buf; u16 n_segs_per_evt; + u16 n_bufs_needed; u8 n_bufs_per_seg; CLIB_CACHE_LINE_ALIGN_MARK (cacheline1); session_dgram_hdr_t hdr; @@ -456,7 +454,8 @@ int session_enqueue_dgram_connection (session_t * s, session_dgram_hdr_t * hdr, vlib_buffer_t * b, u8 proto, u8 queue_event); -int session_stream_connect_notify (transport_connection_t * tc, u8 is_fail); +int session_stream_connect_notify (transport_connection_t * tc, + session_error_t err); int session_dgram_connect_notify (transport_connection_t * tc, u32 old_thread_index, session_t ** new_session); @@ -467,6 +466,8 @@ void session_transport_closed_notify (transport_connection_t * tc); void session_transport_reset_notify (transport_connection_t * tc); int session_stream_accept (transport_connection_t * tc, u32 listener_index, u32 thread_index, u8 notify); +int session_dgram_accept (transport_connection_t * tc, u32 listener_index, + u32 thread_index); /** * Initialize session layer for given transport proto and ip version *