aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/src/mpmc_ptr_ring.h (unfollow)
Commit message (Expand)AuthorFilesLines
2018-06-21[BROKEN] mpmc_ptr_ring: Rely on null pointers to avoid p_tailjn/mpmc-nullJonathan Neuschäfer1-38/+23
2018-06-21mpmc_ptr_ring: add {,un}likely() annotationsThomas Gschwantner1-3/+3
2018-06-20mpmc_ptr_ring: use atomic_try_cmpxchg()Thomas Gschwantner1-12/+10
2018-06-17mpmc_ptr_ring: Fix a wordJonathan Neuschäfer1-1/+1
2018-06-12mpmc_ptr_ring: Include all necessary headersJonathan Neuschäfer1-0/+11
2018-06-12mpmc_ptr_ring: Fix some style detailsJonathan Neuschäfer1-1/+1
2018-06-10mpmc_ptr_ring: calculate mask once and store itThomas Gschwantner1-3/+5
2018-06-10mpmc_ptr_ring: use unsigned int instead of size_tThomas Gschwantner1-10/+10
2018-06-10mpmc_ptr_ring: add include guardThomas Gschwantner1-0/+6
2018-06-08mpmc_ptr_ring: Switch to smp_[rw]mb()Jonathan Neuschäfer1-8/+8
2018-06-04messages: Ensure that there are more queue slots than CPUsJonathan Neuschäfer1-0/+3
2018-06-04mpmc_ptr_ring: Place producer_head and producer_tail in the same cachelineJonathan Neuschäfer1-5/+3
2018-06-04mpmc_ptr_ring: Use atomic_t instead of atomic_long_tJonathan Neuschäfer1-20/+20
2018-06-04mpmc_ptr_ring: Eliminate false sharing in struct mpmc_ptr_ringJonathan Neuschäfer1-3/+3
2018-06-04mpmc_ptr_ring: Reduce the memory barrier usageJonathan Neuschäfer1-26/+22
2018-06-04mpmc_ptr_ring: Fix the remaining crashJonathan Neuschäfer1-2/+2
2018-06-04[WIP] Implement a lock-free MPMC ring bufferJonathan Neuschäfer1-0/+212