Samy Al Bahra
357324dd3e
doc/ck_epoch: Update documentation for epoch sections.
9 years ago
Samy Al Bahra
2e75aefc4a
ck_epoch: Allow for forward progress in concurrent epoch sections.
...
This work is derived directly from the work of John Esmet and Paul
Khuong ({jesmet,pkhuong}@appnexus.com) and PR34.
9 years ago
Samy Al Bahra
0d6d384f3f
ck_epoch: Cache associated epoch state machine in record.
...
This ends up removing arguments (and vector for error) for several
functions on the common path of ck_epoch.
9 years ago
Paul Khuong
f1302c4920
ck_ring: explicit casts to clarify the semantics of generic (pointer) dequeuing
9 years ago
Samy Al Bahra
52f42c4392
ck_pr: Add ck_pr_fence_acqrel.
...
Provides both acquire and release semantics.
9 years ago
Samy Al Bahra
ea9658d8d8
regressions: Switch to volatile load on ready flag.
9 years ago
Olivier Houchard
27fb1bc00f
ck: Reimplement a few libc headers, to make CK build when compiling in the
...
FreeBSD kernel.
9 years ago
Samy Al Bahra
4677de8473
ck_ring: [whitespace] Add comment to PROTOTYPE family.
9 years ago
Samy Al Bahra
fee4e7187b
ck_ring: Clean-up internal implementations.
...
Break out internal implementations to _mp and _sc variants from which
public interface is built on. Do not rely on macro. Adopt CK_CC_RESTRICT
instead of using restrict directly.
9 years ago
Samy Al Bahra
414ba224ca
ck_cc: Add FORCE_INLINE attribute and remove stale comments.
9 years ago
Samy Al Bahra
3f4b973f8c
git: Add additional entries to .gitignore
9 years ago
Samy Al Bahra
cc600e7d4f
ck_ring: Add MPMC and MPSC variants.
9 years ago
Samy Al Bahra
e88c91cdbd
ck_elide: Use CK_CC_INLINE instead of inline.
9 years ago
Samy Al Bahra
fcd2af0884
doc/ck_ring_capacity: Additional clarifications.
...
Thanks to mhaberler.
9 years ago
Samy Al Bahra
5e41c10d82
Merge pull request #62 from auvi/master
...
gitignore binary file regressions/ck_pr/benchmark/fp
9 years ago
Auvi R
a5fb2e08a8
gitignore binary file regressions/ck_pr/benchmark/fp
9 years ago
cognet
3679c1fb8b
Merge pull request #61 from mhaberler/master
...
documentation bug: ck_pr_cas* update to new_value, not original_value
9 years ago
Michael Haberler
2d88ab5f56
documentation bug: ck_pr_cas* update to new_value, not original_value
9 years ago
Olivier Houchard
37d94f4f4e
ck_pr/arm : Add load, store and CAS for double.
9 years ago
cognet
7d35185fdd
Merge pull request #57 from mhaberler/master
...
build/ck.pc.in: fix expansion of PC_CFLAGS
9 years ago
Michael Haberler
42a581220a
build/ck.pc.in: fix expansion of PC_CFLAGS
9 years ago
Samy Al Bahra
3719347d3f
Merge pull request #56 from mhaberler/master
...
touchups: make ck_cohort pass with CORES=1, add CK_VERSION - printable version string
9 years ago
Michael Haberler
118cc8eae8
configure: detect git SHA, export as string CK_GIT_SHA in ck_md.h
...
this helps correlating tests by other people
9 years ago
Michael Haberler
ac2a3ea3e7
configure: fix typo in PC_FLAGS pattern
9 years ago
Michael Haberler
ce7d26aad4
ck_mg.h: provide printable version tag as CK_VERSION
9 years ago
Michael Haberler
7d1e3a6723
regressions/ck_cohort: make it pass with CORES=1
9 years ago
Olivier Houchard
c0c0b19716
configure: Add --platform and --use-cc-builtins
...
--platform let you set the platform, instead of relying on uname -m
--use-cc-builtins force the usage of gcc atomic builtins, instead of using the one provided by CK.
9 years ago
cognet
a7cf4a4dab
Merge pull request #55 from mhaberler/machinekit
...
c++: introduce CK_CPP_CAST, apply to x86_64, arm
9 years ago
Michael Haberler
abc8e871af
arm/c++: cast arguments using CK_CPP_CAST
9 years ago
Michael Haberler
9911e46c7d
x86_64/c++: cast arguments using CK_CPP_CAST
9 years ago
Michael Haberler
a9005e55f1
c++: introduce CK_CPP_CAST to static_cast arguments
9 years ago
Olivier Houchard
d2ee99b7f4
ck_pr/arm : Tell the compiler to which "1" he should jump to.
9 years ago
Samy Al Bahra
dfd8b2fb96
Merge branch 'master' of github.com:concurrencykit/ck
9 years ago
Samy Al Bahra
da4b956499
regressions/ck_ht: Remove dependency on ck_pr_add_64.
9 years ago
Olivier Houchard
576e65fc74
ck_ht: Fallback to use 32bits values when 64bits load/store isn't supported.
...
That way we can use ck_ht on i386.
9 years ago
Samy Al Bahra
f6f02e8585
Merge pull request #54 from mhaberler/limits
...
ck_limits.h: assure UINT*_MAX ff are available in-kernel
9 years ago
Samy Al Bahra
35f9ff1ede
Merge pull request #53 from mhaberler/typeof
...
CK_PR_ACCESS: use __typeof__ instead of typeof
9 years ago
Samy Al Bahra
b039de2f2f
ck_cc: Add parenthesis to make default easier.
9 years ago
Michael Haberler
383eb139ff
ck_limits.h: assure UINT*_MAX ff are available in-kernel
...
this should work back to at least 3.5 kernels
9 years ago
Michael Haberler
ac1c170b29
CK_PR_ACCESS: use __typeof__ instead of typeof
...
this makes ck_pr.h safe to include in c++ with -std=c++11
9 years ago
Olivier Houchard
1c3501a524
ck_pr/arm : Don't try to build the 64bits version of CAS for armv6 either.
9 years ago
Olivier Houchard
005c06f9e2
ck_pr/arm: There's no need to force the use of r4, r5 and r6 anymore, this should fix issue #50
9 years ago
Olivier Houchard
965cda8a21
configure: explicitely set -march for armv6 and armv7
9 years ago
Olivier Houchard
b002ed5f11
ck_pr/arm: Don't use ldrexd/strexd if we're building for armv6.
9 years ago
cognet
881e427d20
Merge pull request #48 from mhaberler/machinekit
...
unbreak configure --profile=.. , gitignore generated docs
9 years ago
Olivier Houchard
b202a8224a
ck_pr/arm: Rename ck_pr_[load|store]_64 to ck_pr_md_[load|store]_64, as it should have been done.
9 years ago
Michael Haberler
73416888d1
configure: reorder custom profile handling until variables known
...
otherwise configure doesnt finish properly.
example:
CC=gcc ./configure --profile=arm
make
...
gzip: /doc/CK_ARRAY_FOREACH: No such file or directory
gzip: /doc/ck_array_buffer: No such file or directory
Makefile:161: recipe for target 'all' failed
make[1]: *** [all] Interrupt
Makefile:23: recipe for target 'doc' failed
9 years ago
Michael Haberler
c55f41893c
gitignore generated doc files
9 years ago
Samy Al Bahra
5f7cfaac9d
Merge pull request #41 from cota/for_samy2
...
ck_sequence: relax sequence increment from atomic to regular store
10 years ago
Emilio G. Cota
3f48bc39fb
ck_sequence: relax sequence increment from atomic to regular store
...
The atomicity of the sequence number's increment is unnecessary, since
there should be only one writer at any given time. Fix it by changing
it for a regular increment + store.
Signed-off-by: Emilio G. Cota <cota@braap.org>
10 years ago