Commit Graph

42 Commits (214552cb05b09405c07ebf2a02aff05f4ac43c06)

Author SHA1 Message Date
Samy Al Bahra 057f719796 ck_ring: Add type-specialized ring.
11 years ago
Samy Al Bahra 90c9950356 ck_ring: Type-agnostic backend implementation.
11 years ago
Samy Al Bahra b6a1914085 ck_ring: Prefer treatment of ck_ring_buffer_t as an opaque type.
11 years ago
Samy Al Bahra b6f085a62e ck_ring: Minor style change.
11 years ago
Olivier Houchard 3edb523da5 ck_ring: Move the ring buffer outside of the ck_ring_t
11 years ago
Samy Al Bahra 5d8a273dbe whitespace: Bulk whitespace changes.
11 years ago
Samy Al Bahra 1201e09577 ck_ring: Remove stale comment.
12 years ago
Samy Al Bahra 878b8e6321 ck_ring: Correct CK_RING_SPMC_ENQUEUE_SIZE typo.
12 years ago
Samy Al Bahra 67381af3c5 ck_ring: Expose *_size variants to type-specialized ck_ring.
12 years ago
Samy Al Bahra 45f648bd33 ck_ring: Add *_size_* ck_ring enqueue operations.
12 years ago
Samy Al Bahra 0598307186 whitespace: Various style changes.
12 years ago
Samy Al Bahra 33a9222923 legal: Update Copyright statements.
12 years ago
Samy Al Bahra c4149c72b4 ck_ring: Use regular assignment in type specialized ck_ring initialization.
12 years ago
Samy Al Bahra 89cb712ffa ck_ring: Memoize mask across all operations.
12 years ago
Samy Al Bahra 8519aaf771 ck_ring: Memoize mask for SPMC operations.
12 years ago
Samy Al Bahra b54ae5c4ac ck_ring: Add a work-around for compiler bug(s) in ck_ring_dequeue_spmc.
12 years ago
Samy Al Bahra 849f938973 ck_ring: Add parameterized version of ck_ring_trydequeue.
12 years ago
Samy Al Bahra 7a99585f9e ck_ring: No need for volatile load on dequeue_spmc.
12 years ago
Samy Al Bahra 01dc51db65 ck_ring: Add trydequeue variant.
12 years ago
Samy Al Bahra 055a7fd5db ck_ring: Add wrapper functions for parameterized SPMC ring.
12 years ago
Samy Al Bahra 68b33e56d8 ck_ring: Add parameterized version of SPMC ring.
12 years ago
Samy Al Bahra 7f35cbee1b ck_ring: Use SPSC enqueue as SPMC enqueue.
12 years ago
Samy Al Bahra 5d1d850f44 ck_ring: Adopt semantics identical to spmc counter semantics.
12 years ago
Samy Al Bahra 77a3bd3126 ck_ring: Move overflow check to producer side.
12 years ago
Samy Al Bahra d595bafea7 ck_ring: Serialize producer snapshot with respect to consumer.
12 years ago
Samy Al Bahra d705e02b76 ck_ring: Replace MPMC variant with SPMC variant for starters.
12 years ago
Samy Al Bahra bb48f602ff ck_ring: Add note regarding correctness so people don't both verifying it.
12 years ago
Samy Al Bahra 68e6752e53 ck_ring: Due to popular request, add MPMC variants of enqueue/dequeue.
12 years ago
Samy Al Bahra a06f28b77c ck_ring: Remove useless comment.
12 years ago
Samy Al Bahra 955047a7d1 ck_{ring,fifo}: Add store fences while we lack load_store fences.
12 years ago
Samy Al Bahra b1b19c1f74 ck_ring: Memory fence is overly pedantic for parameterized enqueue.
12 years ago
Samy Al Bahra 80c56d115b ck_ring: Do not use volatile load for parametric ck_ring_size.
12 years ago
Samy Al Bahra ad5e143bd5 ck_ring: Various improvements to readability.
12 years ago
Samy Al Bahra 94c26494a6 ck_ring: Size is no longer necessary.
12 years ago
Samy Al Bahra 3cf265cba0 all: Strip trailing whitespaces.
13 years ago
Samy Al Bahra 42b32c6e6a ck_ring: Apply ck_ring_size logic to ck_ring_enqueue functions.
13 years ago
Samy Al Bahra 706fd07de7 legal: Update Copyright statements.
13 years ago
Samy Al Bahra 5889498c16 ck_ring: Add modulo logic to ck_ring_size and CK_RING_SIZE.
14 years ago
Samy Al Bahra 88ee328b78 ck_ring: Add CK_RING_SIZE/CAPACITY and ck_ring_size/capacity.
14 years ago
Samy Al Bahra 7c8ab13343 Some fixes for strict aliasing. Silence some warnings from clang.
14 years ago
Samy Al Bahra 66ebe1a874 Drop usage of CK_CC_PACKED, prefer natural alignment.
14 years ago
Samy Al Bahra cbd30b2206 Initial import.
14 years ago