X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvlibmemory%2Fmemory_client.c;h=deb913b63e32387d82cfb031fc3ec4dbeed44155;hb=2aa22909c70ff5c5eed6a7f7a0f8a587c9260da8;hp=c47f25e6e3d5c47794810f2d1de0d381e61257ec;hpb=6d1caf91147ee8676b57216ca891af0f44d7a074;p=vpp.git diff --git a/src/vlibmemory/memory_client.c b/src/vlibmemory/memory_client.c index c47f25e6e3d..deb913b63e3 100644 --- a/src/vlibmemory/memory_client.c +++ b/src/vlibmemory/memory_client.c @@ -17,33 +17,16 @@ *------------------------------------------------------------------ */ -#include -#include #include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include + +#include +#include +#include #include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include +#include + +/* A hack. vl_client_get_first_plugin_msg_id depends on it */ +#include #include @@ -77,7 +60,7 @@ memory_client_main_t memory_client_main; static void * rx_thread_fn (void *arg) { - unix_shared_memory_queue_t *q; + svm_queue_t *q; memory_client_main_t *mm = &memory_client_main; api_main_t *am = &api_main; int i; @@ -178,7 +161,7 @@ vl_client_connect (const char *name, int ctx_quota, int input_queue_size) svm_region_t *svm; vl_api_memclnt_create_t *mp; vl_api_memclnt_create_reply_t *rp; - unix_shared_memory_queue_t *vl_input_queue; + svm_queue_t *vl_input_queue; vl_shmem_hdr_t *shmem_hdr; int rv = 0; void *oldheap; @@ -208,8 +191,7 @@ vl_client_connect (const char *name, int ctx_quota, int input_queue_size) pthread_mutex_lock (&svm->mutex); oldheap = svm_push_data_heap (svm); vl_input_queue = - unix_shared_memory_queue_init (input_queue_size, sizeof (uword), - getpid (), 0); + svm_queue_init (input_queue_size, sizeof (uword), getpid (), 0); pthread_mutex_unlock (&svm->mutex); svm_pop_heap (oldheap); @@ -235,8 +217,8 @@ vl_client_connect (const char *name, int ctx_quota, int input_queue_size) /* Wait up to 10 seconds */ for (i = 0; i < 1000; i++) { - qstatus = unix_shared_memory_queue_sub (vl_input_queue, (u8 *) & rp, - 1 /* nowait */ ); + qstatus = svm_queue_sub (vl_input_queue, (u8 *) & rp, + SVM_Q_NOWAIT, 0); if (qstatus == 0) goto read_one_msg; ts.tv_sec = 0; @@ -270,7 +252,7 @@ vl_api_memclnt_delete_reply_t_handler (vl_api_memclnt_delete_reply_t * mp) pthread_mutex_lock (&am->vlib_rp->mutex); oldheap = svm_push_data_heap (am->vlib_rp); - unix_shared_memory_queue_free (am->vl_input_queue); + svm_queue_free (am->vl_input_queue); pthread_mutex_unlock (&am->vlib_rp->mutex); svm_pop_heap (oldheap); @@ -284,7 +266,7 @@ vl_client_disconnect (void) { vl_api_memclnt_delete_t *mp; vl_api_memclnt_delete_reply_t *rp; - unix_shared_memory_queue_t *vl_input_queue; + svm_queue_t *vl_input_queue; vl_shmem_hdr_t *shmem_hdr; time_t begin; api_main_t *am = &api_main; @@ -323,7 +305,7 @@ vl_client_disconnect (void) am->shmem_hdr = 0; break; } - if (unix_shared_memory_queue_sub (vl_input_queue, (u8 *) & rp, 1) < 0) + if (svm_queue_sub (vl_input_queue, (u8 *) & rp, SVM_Q_NOWAIT, 0) < 0) continue; /* drain the queue */ @@ -365,7 +347,6 @@ _(MEMCLNT_CREATE_REPLY, memclnt_create_reply) \ _(MEMCLNT_DELETE_REPLY, memclnt_delete_reply) \ _(MEMCLNT_KEEPALIVE, memclnt_keepalive) - void vl_client_install_client_message_handlers (void) {