Our supported XenServer build environments lack proper atomic support, which makes recent OVS techiques (ovs-rcu, cmap) painfully slow. This series enhances OVS atomic support to address this issue. Corresponding 32-bit support is still to be done.
Jarno Rajahalme (6): lib/ovs-atomic: Add atomic_uint64_t and atomic_int64_t. lib/ovs-atomic: Elaborate memory_order documentation. lib/ovs-atomic: Require memory_order be constant. lib/ovs-atomic-gcc4+: Use 'volatile' to enforce memory access. tests/test-atomic: Cover more of the atomic API. lib/ovs-atomic: Native support for x86_64 with GCC. lib/automake.mk | 1 + lib/cmap.c | 18 ++- lib/ovs-atomic-gcc4+.h | 4 +- lib/ovs-atomic-x86_64.h | 359 +++++++++++++++++++++++++++++++++++++++++++++++ lib/ovs-atomic.h | 56 +++++++- tests/test-atomic.c | 260 ++++++++++++++++++++++++++++++++++ 6 files changed, 683 insertions(+), 15 deletions(-) create mode 100644 lib/ovs-atomic-x86_64.h -- 1.7.10.4 _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev