Hi Konstantin, Just to make sure we are coordinating the work on rte_ring, I plan to get the following things done for 20.08. Please let me know if you have any comments.
1) Remove experimental tag on rte_ring_xxx_elem APIs - they have been around for 2 releases now. 2) Make the legacy APIs use elem APIs 3) Check the possibility to remove rte_ring_generic.h implementation. This can be done if the legacy API performance between the generic and C11 implementations is not much. 4) Peek APIs for RTS Some cleanup activity (assuming above things are successful) 1) Remove the detailed comments on top of the internal functions - it is hard to maintain, the parameters are already self-explanatory 3) Files need some re-org a) rte_ring.h, rte_ring_hts.h, rte_ring_rts.h, rte_ring_peek.h - will have legacy format APIs written as wrappers around xxx_elem APIs b) rte_ring_elem.h, rte_ring_hts_elem.h, rte_ring_rts_elem.h, rte_ring_peek_elem.h - will have xxx_elem APIs c) ring_elem_pvt.h, ring_hts_elem_pvt.h, ring_rts_elem_pvt.h, ring_peek_elem_pvt.h - these will contain the internal functions including the c11 functions to manipulate the head/tail pointers. The files with xxx_c11_mem.h will disappear. Make sure private functions have __rte prefix Thank you, Honnappa