I’m posting a V3 soon, so if anyone is planning to review, wait a bit more…

  Jarno

On Jul 31, 2014, at 9:17 AM, Jarno Rajahalme <[email protected]> wrote:

> Our supported XenServer build environments lack proper atomic
> libraries, which makes recent OVS techiques (ovs-rcu, cmap) painfully
> slow.  This series adds native atomic implementations for i586 and
> x86_64 when compiled with GCC.  This makes the atomic operations on
> older GCC versions as fast as on newer versions.
> 
> Jarno Rajahalme (7):
>  Fix strict aliasing violations with GCC 4.1 and 4.4.
>  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/ovs-atomic: Native support for 32-bit 586 with GCC.
> 
> lib/automake.mk               |    2 +
> lib/cmap.c                    |   18 +-
> lib/ovs-atomic-gcc4+.h        |   14 +-
> lib/ovs-atomic-i586.h         |  452 +++++++++++++++++++++++++++++++++++++++++
> lib/ovs-atomic-x86_64.h       |  345 +++++++++++++++++++++++++++++++
> lib/ovs-atomic.h              |   54 ++++-
> lib/ovs-rcu.h                 |   57 ++++--
> ofproto/connmgr.c             |   12 +-
> ofproto/ofproto-dpif-sflow.c  |   12 +-
> ofproto/ofproto-dpif-upcall.c |    7 +-
> tests/test-atomic.c           |  291 +++++++++++++++++++++++++-
> vswitchd/bridge.c             |   11 +-
> 12 files changed, 1221 insertions(+), 54 deletions(-)
> create mode 100644 lib/ovs-atomic-i586.h
> create mode 100644 lib/ovs-atomic-x86_64.h
> 
> -- 
> 1.7.10.4
> 

_______________________________________________
dev mailing list
[email protected]
http://openvswitch.org/mailman/listinfo/dev

Reply via email to