From b462418890240b2e38dbf522f9dd0196b79e0fa8 Mon Sep 17 00:00:00 2001 From: Florin Coras Date: Fri, 11 Dec 2020 13:58:12 -0800 Subject: svm: allow mq attachments at random offsets Type: feature Signed-off-by: Florin Coras Change-Id: Ic373cd2c11272da539eb4b0db27227f36f2f9688 --- src/plugins/hs_apps/sapi/vpp_echo_common.h | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'src/plugins/hs_apps/sapi/vpp_echo_common.h') diff --git a/src/plugins/hs_apps/sapi/vpp_echo_common.h b/src/plugins/hs_apps/sapi/vpp_echo_common.h index cd2bbb6038c..dc5f7dfb9b5 100644 --- a/src/plugins/hs_apps/sapi/vpp_echo_common.h +++ b/src/plugins/hs_apps/sapi/vpp_echo_common.h @@ -38,6 +38,7 @@ #define TIMEOUT 10.0 #define LOGGING_BATCH (100) #define LOG_EVERY_N_IDLE_CYCLES (1e8) +#define ECHO_MQ_SEG_HANDLE ((u64) ~0 - 1) #define foreach_echo_fail_code \ _(ECHO_FAIL_NONE, "ECHO_FAIL_NONE") \ @@ -300,7 +301,7 @@ typedef struct uword *shared_segment_handles; /* Hash table : segment_names -> 1 */ clib_spinlock_t segment_handles_lock; /* Hash table lock */ echo_proto_cb_vft_t *proto_cb_vft; - svm_msg_q_t *rpc_msq_queue; /* MQ between quic_echo threads */ + svm_msg_q_t rpc_msq_queue; /* MQ between quic_echo threads */ fifo_segment_main_t segment_main; /* State of the connection, shared between msg RX thread and main thread */ @@ -444,7 +445,9 @@ int echo_segment_attach (u64 segment_handle, char *name, u32 echo_segment_lookup (u64 segment_handle); void echo_segment_detach (u64 segment_handle); int echo_attach_session (uword segment_handle, uword rxf_offset, - uword txf_offset, echo_session_t *s); + uword mq_offset, uword txf_offset, echo_session_t *s); +int echo_segment_attach_mq (uword segment_handle, uword mq_offset, + u32 mq_index, svm_msg_q_t **mq); /* Binary API */ -- cgit 1.2.3-korg