diff options
-rw-r--r-- | src/svm/fifo_segment.c | 2 | ||||
-rw-r--r-- | src/vnet/session/segment_manager.c | 2 |
2 files changed, 4 insertions, 0 deletions
diff --git a/src/svm/fifo_segment.c b/src/svm/fifo_segment.c index 5408567b8f4..986778dfe82 100644 --- a/src/svm/fifo_segment.c +++ b/src/svm/fifo_segment.c @@ -811,6 +811,8 @@ fifo_segment_cleanup (fifo_segment_t *fs) for (slice_index = 0; slice_index < fs->n_slices; slice_index++) clib_mem_bulk_destroy (fs->slices[slice_index].fifos); + vec_free (fs->slices); + vec_foreach (fs->mqs, mq) vec_free (mq->rings); diff --git a/src/vnet/session/segment_manager.c b/src/vnet/session/segment_manager.c index ffac4e0bc26..560560c8d64 100644 --- a/src/vnet/session/segment_manager.c +++ b/src/vnet/session/segment_manager.c @@ -466,6 +466,7 @@ segment_manager_free (segment_manager_t * sm) } /* *INDENT-ON* */ + pool_free (sm->segments); clib_rwlock_writer_unlock (&sm->segments_rwlock); clib_rwlock_free (&sm->segments_rwlock); @@ -611,6 +612,7 @@ segment_manager_del_sessions (segment_manager_t * sm) /* Avoid propagating notifications back to the app */ session->app_wrk_index = APP_INVALID_INDEX; } + vec_free (handles); } int |