[ovs-git] [openvswitch/ovs] e9217f: ovs-rcu: Add new ovsrcu_index type.

GitHub noreply at github.com
Thu Aug 4 01:09:45 UTC 2016


  Branch: refs/heads/master
  Home:   https://github.com/openvswitch/ovs
  Commit: e9217f5a404b19c4ecc59a5a25c953d4bc698b76
      https://github.com/openvswitch/ovs/commit/e9217f5a404b19c4ecc59a5a25c953d4bc698b76
  Author: Daniele Di Proietto <diproiettod at vmware.com>
  Date:   2016-08-03 (Wed, 03 Aug 2016)

  Changed paths:
    M lib/ovs-rcu.h

  Log Message:
  -----------
  ovs-rcu: Add new ovsrcu_index type.

With RCU in Open vSwitch it's very easy to protect objects accessed by
a pointer, but sometimes a pointer is not available.

One example is the vhost id for DPDK 16.07.  Until DPDK 16.04 a pointer
was used to access a vhost device with RCU semantics.  From DPDK 16.07
an integer id (which is an array index) is used to access a vhost
device.  Ideally, we want the exact same RCU semantics that we had for
the pointer, on the integer (atomicity, memory barriers, behaviour
around quiescent states)

This commit implements a new type in ovs-rcu: ovsrcu_index. The newly
implemented ovsrcu_index_*() functions should be used to access the
type.

Even though we say "Do not, in general, declare a typedef for a struct,
union, or enum.", I think we're not in the "general" case.

Signed-off-by: Daniele Di Proietto <diproiettod at vmware.com>
Tested-by: Ciara Loftus <ciara.loftus at intel.com>
Acked-by: Jarno Rajahalme <jarno at ovn.org>


  Commit: 0a0f39df1d5ae80bb905cffa8a011356e4193d9a
      https://github.com/openvswitch/ovs/commit/0a0f39df1d5ae80bb905cffa8a011356e4193d9a
  Author: Ciara Loftus <ciara.loftus at intel.com>
  Date:   2016-08-03 (Wed, 03 Aug 2016)

  Changed paths:
    M .travis/linux-build.sh
    M INSTALL.DPDK-ADVANCED.md
    M INSTALL.DPDK.md
    M NEWS
    M lib/netdev-dpdk.c

  Log Message:
  -----------
  netdev-dpdk: Add support for DPDK 16.07

This commit introduces support for DPDK 16.07 and consequently breaks
compatibility with DPDK 16.04.

DPDK 16.07 introduces some changes to various APIs. These have been
updated in OVS, including:
* xstats API: changes to structure of xstats
* vhost API:  replace virtio-net references with 'vid'

Signed-off-by: Ciara Loftus <ciara.loftus at intel.com>
Tested-by: Maxime Coquelin <maxime.coquelin at redhat.com>
Tested-by: Robert Wojciechowicz <robertx.wojciechowicz at intel.com>
Signed-off-by: Daniele Di Proietto <diproiettod at vmware.com>


Compare: https://github.com/openvswitch/ovs/compare/aad4ff6a40c0...0a0f39df1d5a


More information about the git mailing list