> <snip> > > > > > > > > > > > > diff --git a/lib/librte_ring/rte_ring_generic.h > > > > > b/lib/librte_ring/rte_ring_generic.h > > > > > index 953cdbbd5..9f5fdf13b 100644 > > > > > --- a/lib/librte_ring/rte_ring_generic.h > > > > > +++ b/lib/librte_ring/rte_ring_generic.h > > > > Changes in this file are not required as we agreed to implement only C11 > > for new features. > > > > > > Right, will remove. > > > > Actually no, spoke too early before thinking properly We do need these > > functions in rte_ring_generic.h for SP/SC _start_/_finish_. > > Konstantin > The peek APIs are new functionality. So the peek APIs in legacy format should > be wrappers around _elem_ APIs. That is what I see in the > code as well: > rte_ring_peek.h has this: > static __rte_always_inline void > rte_ring_dequeue_finish(struct rte_ring *r, unsigned int n) > { > rte_ring_dequeue_elem_finish(r, n); > } > > I think, I gave you incomplete feedback earlier. > Actually, __rte_ring_st_get_tail and __rte_ring_st_set_head_tail should be in > a new file named rte_ring_peek_c11_mem.h. This file should > be included in rte_ring_peek.h (same way you have done for RTS and HTS). Then > remove both these functions from rte_ring_generic.h and > rte_ring_c11_mem.h.
Good idea, yes it should work.