diff options
author | Florin Coras <fcoras@cisco.com> | 2021-12-22 12:54:17 -0800 |
---|---|---|
committer | Dave Barach <openvpp@barachs.net> | 2021-12-23 16:17:57 +0000 |
commit | cdfe8abc613a0aa936963d31bc60cec86a5c641d (patch) | |
tree | b0a075e152358b692a53f6545a5e3345c9df2264 /src/svm/fifo_segment.c | |
parent | e6387b2b9fdaca33d50c1074dda5d41e1092e8ad (diff) |
session svm: track fs and seg manager index in fs
Simplifies allocation of fifos as fifo segment and segment manager
indices can be set at alloc time.
Type: improvement
Signed-off-by: Florin Coras <fcoras@cisco.com>
Change-Id: Ibd357b3ff0279d8deefcdcb17010b4068007ccb7
Diffstat (limited to 'src/svm/fifo_segment.c')
-rw-r--r-- | src/svm/fifo_segment.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/svm/fifo_segment.c b/src/svm/fifo_segment.c index 8795b46c86a..77177a14a69 100644 --- a/src/svm/fifo_segment.c +++ b/src/svm/fifo_segment.c @@ -387,6 +387,8 @@ fifo_segment_attach (fifo_segment_main_t * sm, fifo_segment_create_args_t * a) pool_get_zero (sm->segments, fs); + fs->fs_index = fs - sm->segments; + fs->sm_index = ~0; fs->ssvm.ssvm_size = a->segment_size; fs->ssvm.my_pid = getpid (); fs->ssvm.name = format (0, "%s%c", a->segment_name, 0); @@ -868,6 +870,9 @@ fifo_segment_alloc_fifo_w_slice (fifo_segment_t * fs, u32 slice_index, svm_fifo_init (f, data_bytes); + f->segment_manager = fs->sm_index; + f->segment_index = fs->fs_index; + fss = fsh_slice_get (fsh, slice_index); pfss = fs_slice_private_get (fs, slice_index); |