Hi, I found the function atomic_store_explicit and atomic_read_explicit for branch v2.3.2 not use volatile this cause some problems in multi-core system.
should we merge these pathes to branch v2.3.2? git log for branch v2.3.2: 8917f72 ovs-atomic: Delete atomic, atomic_flag, ovs_refcount destroy functions. 6a36690 ovs-atomic-types: Move into ovs-atomic.h. 1bd2c9e ovs-atomic: Use raw types, not structs, when locks are required. f5de851 ovs-atomic-gcc4+: Fix parenthesization in atomic_read_explicit(). c5f81b2 ovs-atomic: Add atomic_destroy() and use everywhere it is needed. 4597d2a ovs-atomic: New functions atomic_flag_init(), atomic_flag_destroy(). db5a101 clang: Fix the alignment warning. 31a3fc6 ovs-atomic: New library for atomic operations. git log for master: 0b83904 lib/ovs-atomic: Add missing macro argument parentheses. 860f83f lib/ovs-atomic-gcc4+: Use 'volatile' to enforce memory access. 9164558 ovs-atomic: Fix GCC4+ atomic_flag. 15ba057 lib/ovs-atomic: Require memory_order be constant. 3e0b991 ovs-atomic: Avoid evaluating arguments multiple times. 25045d7 lib/ovs-atomic: Add atomic compare_exchange. 8917f72 ovs-atomic: Delete atomic, atomic_flag, ovs_refcount destroy functions. 6a36690 ovs-atomic-types: Move into ovs-atomic.h. 1bd2c9e ovs-atomic: Use raw types, not structs, when locks are required. f5de851 ovs-atomic-gcc4+: Fix parenthesization in atomic_read_explicit(). c5f81b2 ovs-atomic: Add atomic_destroy() and use everywhere it is needed. 4597d2a ovs-atomic: New functions atomic_flag_init(), atomic_flag_destroy(). db5a101 clang: Fix the alignment warning. 31a3fc6 ovs-atomic: New library for atomic operations. _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev