datapath: Renumber non-upstreamable interfaces.
authorJesse Gross <jesse@nicira.com>
Sun, 6 Nov 2011 03:13:55 +0000 (20:13 -0700)
committerJesse Gross <jesse@nicira.com>
Tue, 8 Nov 2011 02:24:36 +0000 (18:24 -0800)
The interfaces related to tunneling aren't finalized enough to be
sent upstream but we also still want to retain them in the OVS
repository.  Since userspace should be compatible with both versions
of the kernel, this renumbers the tunnel interfaces to high numbers
so that we can continue to add new interfaces without conflict.

Signed-off-by: Jesse Gross <jesse@nicira.com>
Acked-by: Ben Pfaff <blp@nicira.com>
datapath/flow.c
include/linux/openvswitch.h
lib/odp-util.h

index 670b6f8f29b1e5ab6551f464eece8b7c9fcd74c9..2dc87aee7f5a6524988c5508cf5ff56549aecc63 100644 (file)
@@ -1214,11 +1214,6 @@ int flow_to_nlattrs(const struct sw_flow_key *swkey, struct sk_buff *skb)
        struct ovs_key_ethernet *eth_key;
        struct nlattr *nla;
 
-       /* This is an imperfect sanity-check that FLOW_BUFSIZE doesn't need
-        * to be updated, but will at least raise awareness when new
-        * datapath key types are added. */
-       BUILD_BUG_ON(__OVS_KEY_ATTR_MAX != 15);
-
        if (swkey->phy.priority)
                NLA_PUT_U32(skb, OVS_KEY_ATTR_PRIORITY, swkey->phy.priority);
 
index a1ffc7ddd55586069ce122868755352107d0c310..1ce2a1e0c334311338d0e4011bae6ce36041f476 100644 (file)
@@ -182,7 +182,7 @@ enum ovs_vport_type {
        OVS_VPORT_TYPE_UNSPEC,
        OVS_VPORT_TYPE_NETDEV,   /* network device */
        OVS_VPORT_TYPE_INTERNAL, /* network device implemented by datapath */
-       OVS_VPORT_TYPE_PATCH,    /* virtual tunnel connecting two vports */
+       OVS_VPORT_TYPE_PATCH = 100, /* virtual tunnel connecting two vports */
        OVS_VPORT_TYPE_GRE,      /* GRE tunnel */
        OVS_VPORT_TYPE_CAPWAP,   /* CAPWAP tunnel */
        __OVS_VPORT_TYPE_MAX
@@ -198,6 +198,7 @@ enum ovs_vport_type {
  * @OVS_VPORT_ATTR_NAME: Name of vport.  For a vport based on a network device
  * this is the name of the network device.  Maximum length %IFNAMSIZ-1 bytes
  * plus a null terminator.
+ * @OVS_VPORT_ATTR_OPTIONS: Vport-specific configuration information.
  * @OVS_VPORT_ATTR_UPCALL_PID: The Netlink socket in userspace that
  * OVS_PACKET_CMD_MISS upcalls will be directed to for packets received on
  * this port.  A value of zero indicates that upcalls should not be sent.
@@ -224,10 +225,10 @@ enum ovs_vport_attr {
        OVS_VPORT_ATTR_PORT_NO, /* u32 port number within datapath */
        OVS_VPORT_ATTR_TYPE,    /* u32 OVS_VPORT_TYPE_* constant. */
        OVS_VPORT_ATTR_NAME,    /* string name, up to IFNAMSIZ bytes long */
+       OVS_VPORT_ATTR_OPTIONS, /* nested attributes, varies by vport type */
        OVS_VPORT_ATTR_UPCALL_PID, /* u32 Netlink PID to receive upcalls */
        OVS_VPORT_ATTR_STATS,   /* struct ovs_vport_stats */
-       OVS_VPORT_ATTR_ADDRESS, /* hardware address */
-       OVS_VPORT_ATTR_OPTIONS, /* nested attributes, varies by vport type */
+       OVS_VPORT_ATTR_ADDRESS = 100, /* hardware address */
        __OVS_VPORT_ATTR_MAX
 };
 
@@ -264,7 +265,6 @@ struct ovs_flow_stats {
 enum ovs_key_attr {
        OVS_KEY_ATTR_UNSPEC,
        OVS_KEY_ATTR_PRIORITY,  /* 32-bit skb->priority */
-       OVS_KEY_ATTR_TUN_ID,    /* 64-bit tunnel ID */
        OVS_KEY_ATTR_IN_PORT,   /* 32-bit OVS dp port number */
        OVS_KEY_ATTR_ETHERNET,  /* struct ovs_key_ethernet */
        OVS_KEY_ATTR_8021Q,     /* struct ovs_key_8021q */
@@ -277,6 +277,7 @@ enum ovs_key_attr {
        OVS_KEY_ATTR_ICMPV6,    /* struct ovs_key_icmpv6 */
        OVS_KEY_ATTR_ARP,       /* struct ovs_key_arp */
        OVS_KEY_ATTR_ND,        /* struct ovs_key_nd */
+       OVS_KEY_ATTR_TUN_ID = 100, /* 64-bit tunnel ID */
        __OVS_KEY_ATTR_MAX
 };
 
index eceeae6b404cd54d3f83913071c61456042591c1..c916abf850af6b25168177f14f863142cccf29ce 100644 (file)
@@ -80,11 +80,6 @@ void format_odp_actions(struct ds *, const struct nlattr *odp_actions,
  */
 #define ODPUTIL_FLOW_KEY_BYTES 140
 
-/* This is an imperfect sanity-check that ODPUTIL_FLOW_KEY_BYTES doesn't
- * need to be updated, but will at least raise awareness when new OVS
- * datapath key types are added. */
-BUILD_ASSERT_DECL(__OVS_KEY_ATTR_MAX == 15);
-
 /* A buffer with sufficient size and alignment to hold an nlattr-formatted flow
  * key.  An array of "struct nlattr" might not, in theory, be sufficiently
  * aligned because it only contains 16-bit types. */