Commit Graph

667 Commits (18ac2f54b01b559e92599585c0228998bf7e7f05)

Author SHA1 Message Date
Paul Khuong c896a8f33c ck_pr: default to cc builtin implementations for static analysers
5 years ago
Paul Khuong 9a76e490ae ck_cc: use __builtin_offsetof for CK_CC_CONTAINER on gcc-ish compilers
5 years ago
Paul Khuong 91343eaa2c
ck_backoff: avoid dead store to ceiling
5 years ago
Samy Al Bahra 94f3712814 ck_queue: remove load fences on iterators.
5 years ago
Paul Khuong bc608c1d7c gcc/x86{,_64}/ck_pr: unify case enumeration for ck_pr_cas and ck_pr_cas_value
5 years ago
Paul Khuong e18fba64ec gcc/x86{,_64}/ck_pr: improve codegen for compare-and-swap, particularly on GCC6+
5 years ago
Paul Khuong 571bb264b0 spinlock/fas: improve codegen for the uncontended path
5 years ago
Philip Maddox f37aa8bed6 ck_fifo: return fifo->garbage at spsc deinit (#146)
5 years ago
Paul Khuong b02bb2b805 x86/ck_pr: fix register constraint for ck_pr_foo_is_zero
5 years ago
Samy Al Bahra e5bd4c0309 ck_ring: ck_ring_valid should reject wrap-around.
5 years ago
Samy Al Bahra 8959e94fb6 ck_ring: add two new utility functions for persistent rings.
5 years ago
Samy Al Bahra 1321f703c8 ck_ring: add reserve and commit interface to enqueue.
5 years ago
Samy Al Bahra d48b01cab3 Revert "ck_ring: add a ck_ring_seek_* family of functions."
5 years ago
Samy Al Bahra f88d03b846 ck_ring: add a ck_ring_seek_* family of functions.
5 years ago
Samy Al Bahra 9bd98ad96a Revert "include/spinlock: explicit casts for C++ compilation"
6 years ago
Thibault Martinez 8698ada953 include/spinlock: explicit casts for C++ compilation
6 years ago
Paul Khuong a16642f95c ck_ec: event count with optimistic OS-level blocking (#133)
6 years ago
Marius Strobl 21d3e31940 ck_pr/sparcv9: use the correct address space for atomics on FreeBSD
6 years ago
Olivier Houchard 0881349657 spinlock/hclh: Strictly follow the algorithm instead of taking shortcuts.
6 years ago
Kevin Bowling 5ff2e9d3e6 ck_pr: use sync instead of lwsync on ppc32 by default
6 years ago
Andriy Gapon 1c1f9901c2 ck_queue: add CK_SLIST_INSERT_PREVPTR and CK_SLIST_REMOVE_PREVPTR
6 years ago
Andriy Gapon 5b74d9f9b0 [whitespace] ck_queue: small formatting cleanup.
6 years ago
Theo Schlossnagle 1c2469358e Implement ck_pr_dec_is_zero family of functions (#115)
7 years ago
Matt Macy e26d3031f4 change field names so as to be distinct from those in sysqueue.h
7 years ago
Matthew Macy deca119d14 ck_epoch: introduce ck_epoch_deferred
7 years ago
Olivier Houchard bcecb8a916 gcc/ck_pr: Fix ck_pr_md_load_ptr() and ck_pr_md_store_ptr().
7 years ago
Samy Al Bahra afe01108d1 ck_cc: add a disable builtin flag for the FreeBSD kernel.
7 years ago
Samy Al Bahra f00aaa977b build: add --disable-sse option for x86.
7 years ago
Samy Al Bahra 5517381929 freebsd/x86: Allow and override fence instructions to match kernel environment.
7 years ago
Samy Al Bahra a2d1743476 [whitespace] gcc/x86/ck_pr: closing comment for UMP ifdef block.
7 years ago
Samy Al Bahra 0d7c1e78f3 freebsd/ck_md: md implementation for FreeBSD kernel.
7 years ago
Samy Al Bahra 14e51eaa91 ck_pr/sparcv9: use the more stringent #MemIssue barrier.
7 years ago
Samy Al Bahra 4042fea5a8 ck_pr/x86_64: cleanup documentation around semantics.
7 years ago
Samy Al Bahra a15873e006 [whitespace] ck_md.h.in: Remove space before newline.
7 years ago
Aidan Cully 5f6834b693 ck_queue: fix logic inversion in CK_STAILQ_CONCAT.
7 years ago
Riley Berton 0d1e86d18e ck_hs: add ck_hs_next_spmc
7 years ago
Samy Al Bahra 4a8957f727 [whitespace] ck_ring: style conformance.
8 years ago
Paul Khuong 44a6527f33 ck_ring.h: make _ck_ring_enqueue_mp less failure happy
8 years ago
Samy Al Bahra 8b617bb728 ck_pr: add support for s390x.
8 years ago
Samy Al Bahra 8343bd4af8 spinlock/dec: backoff until lock state transition in lock_eb.
8 years ago
Neale Ferguson 52809f0039 Minor editorial updates and update CFLAGS for production use
8 years ago
Neale Ferguson 2c01ecec64 Add s390x support
8 years ago
Samy Al Bahra 0ce7c1efef ck_epoch: remove overzealous padding.
8 years ago
Samy Al Bahra 123c91a62f epoch: update delref prototype.
8 years ago
Samy Al Bahra ffe9cbf9ca ck_epoch: ck_epoch_end returns true if forward progress has been made.
8 years ago
Samy Al Bahra 6a9da5c91d ck_epoch: add epoch_value to return current global epoch.
8 years ago
Samy Al Bahra ec2d225324 ck_epoch: add barrier_wait operation.
8 years ago
Samy Al Bahra 8580ccc580 ck_epoch: introduce synchronize_wait that allows blocking synchronize operation.
8 years ago
Samy Al Bahra a25e073a2b ck_epoch: allow record sharing and reentrancy for write-side operations.
8 years ago
Alexey Kopytov 5f1be5dc83 AArch64 LSE support.
8 years ago