From 8c517c8fb44e7003ecdb615bc03163536e24d4d4 Mon Sep 17 00:00:00 2001 From: Florin Coras Date: Tue, 30 Mar 2021 00:23:54 -0700 Subject: svm: cleanup mq private data on fifo segment cleanup Type: fix Signed-off-by: Florin Coras Change-Id: I65373f2cd5a33381da1e51ed7ab7a8b1358cef29 --- src/svm/message_queue.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'src/svm/message_queue.c') diff --git a/src/svm/message_queue.c b/src/svm/message_queue.c index e08ba06fb27..a6af7962f73 100644 --- a/src/svm/message_queue.c +++ b/src/svm/message_queue.c @@ -166,11 +166,20 @@ svm_msg_q_attach (svm_msg_q_t *mq, void *smq_base) clib_spinlock_init (&mq->q.lock); } +void +svm_msg_q_cleanup (svm_msg_q_t *mq) +{ + vec_free (mq->rings); + clib_spinlock_free (&mq->q.lock); + if (mq->q.evtfd != -1) + close (mq->q.evtfd); +} + void svm_msg_q_free (svm_msg_q_t * mq) { + svm_msg_q_cleanup (mq); clib_mem_free (mq->q.shr); - clib_spinlock_free (&mq->q.lock); clib_mem_free (mq); } -- cgit 1.2.3-korg