04/04/2019 12:01, Gage Eads: > This patchset introduces a stack library, supporting both lock-based and > lock-free stacks, and a lock-free stack mempool handler. > > The lock-based stack code is derived from the existing stack mempool handler, > and that handler is refactored to use the stack library. > > The lock-free stack mempool handler is intended for usages where the rte > ring's "non-preemptive" constraint is not acceptable; for example, if the > application uses a mixture of pinned high-priority threads and multiplexed > low-priority threads that share a mempool. > > Note that the lock-free algorithm relies on a 128-bit compare-and-swap[1], > so it is currently limited to the x86_64 platform. [...] > Gage Eads (8): > stack: introduce rte stack library > mempool/stack: convert mempool to use rte stack > test/stack: add stack test > test/stack: add stack perf test > stack: add lock-free stack implementation > stack: add C11 atomic implementation > test/stack: add lock-free stack tests > mempool/stack: add lock-free stack mempool handler
Applied (with a few minor changes), thanks for bringing this new library.