Message ID | 1355314400-14909-2-git-send-email-amirv@mellanox.com |
---|---|
State | Accepted, archived |
Delegated to: | David Miller |
Headers | show |
On Wed, 2012-12-12 at 14:13 +0200, Amir Vadai wrote: > From: Yan Burman <yanb@mellanox.com> > > Add ability to specify destination MAC address for L3/L4 flow spec > in order to be able to specify action for different VM's under vSwitch > configuration. This change is transparent to older userspace. > > Signed-off-by: Yan Burman <yanb@mellanox.com> > Signed-off-by: Amir Vadai <amirv@mellanox.com> > --- > include/uapi/linux/ethtool.h | 11 +++++++---- > 1 file changed, 7 insertions(+), 4 deletions(-) > > diff --git a/include/uapi/linux/ethtool.h b/include/uapi/linux/ethtool.h > index d3eaaaf..be8c41e 100644 > --- a/include/uapi/linux/ethtool.h > +++ b/include/uapi/linux/ethtool.h > @@ -500,13 +500,15 @@ union ethtool_flow_union { > struct ethtool_ah_espip4_spec esp_ip4_spec; > struct ethtool_usrip4_spec usr_ip4_spec; > struct ethhdr ether_spec; > - __u8 hdata[60]; > + __u8 hdata[52]; > }; > > struct ethtool_flow_ext { > - __be16 vlan_etype; > - __be16 vlan_tci; > - __be32 data[2]; > + __u8 padding[2]; > + unsigned char h_dest[ETH_ALEN]; /* destination eth addr */ > + __be16 vlan_etype; > + __be16 vlan_tci; > + __be32 data[2]; > }; > > /** > @@ -1027,6 +1029,7 @@ enum ethtool_sfeatures_retval_bits { > #define ETHER_FLOW 0x12 /* spec only (ether_spec) */ > /* Flag to enable additional fields in struct ethtool_rx_flow_spec */ > #define FLOW_EXT 0x80000000 > +#define FLOW_MAC_EXT 0x40000000 Please can you send another patch that adds kernel-doc to struct ethtool_flow_ext explaining which fields are dependent on which flags. Ben. > /* L3-L4 network traffic flow hash options */ > #define RXH_L2DA (1 << 1)
On 12/12/2012 20:28, Ben Hutchings wrote: > On Wed, 2012-12-12 at 14:13 +0200, Amir Vadai wrote: >> From: Yan Burman <yanb@mellanox.com> >> >> Add ability to specify destination MAC address for L3/L4 flow spec >> in order to be able to specify action for different VM's under vSwitch >> configuration. This change is transparent to older userspace. >> >> Signed-off-by: Yan Burman <yanb@mellanox.com> >> Signed-off-by: Amir Vadai <amirv@mellanox.com> >> --- >> include/uapi/linux/ethtool.h | 11 +++++++---- >> 1 file changed, 7 insertions(+), 4 deletions(-) >> >> diff --git a/include/uapi/linux/ethtool.h b/include/uapi/linux/ethtool.h >> index d3eaaaf..be8c41e 100644 >> --- a/include/uapi/linux/ethtool.h >> +++ b/include/uapi/linux/ethtool.h >> @@ -500,13 +500,15 @@ union ethtool_flow_union { >> struct ethtool_ah_espip4_spec esp_ip4_spec; >> struct ethtool_usrip4_spec usr_ip4_spec; >> struct ethhdr ether_spec; >> - __u8 hdata[60]; >> + __u8 hdata[52]; >> }; >> >> struct ethtool_flow_ext { >> - __be16 vlan_etype; >> - __be16 vlan_tci; >> - __be32 data[2]; >> + __u8 padding[2]; >> + unsigned char h_dest[ETH_ALEN]; /* destination eth addr */ >> + __be16 vlan_etype; >> + __be16 vlan_tci; >> + __be32 data[2]; >> }; >> >> /** >> @@ -1027,6 +1029,7 @@ enum ethtool_sfeatures_retval_bits { >> #define ETHER_FLOW 0x12 /* spec only (ether_spec) */ >> /* Flag to enable additional fields in struct ethtool_rx_flow_spec */ >> #define FLOW_EXT 0x80000000 >> +#define FLOW_MAC_EXT 0x40000000 > > Please can you send another patch that adds kernel-doc to struct > ethtool_flow_ext explaining which fields are dependent on which flags. > > Ben. > >> /* L3-L4 network traffic flow hash options */ >> #define RXH_L2DA (1 << 1) > Sure. Will send it. Amir -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/include/uapi/linux/ethtool.h b/include/uapi/linux/ethtool.h index d3eaaaf..be8c41e 100644 --- a/include/uapi/linux/ethtool.h +++ b/include/uapi/linux/ethtool.h @@ -500,13 +500,15 @@ union ethtool_flow_union { struct ethtool_ah_espip4_spec esp_ip4_spec; struct ethtool_usrip4_spec usr_ip4_spec; struct ethhdr ether_spec; - __u8 hdata[60]; + __u8 hdata[52]; }; struct ethtool_flow_ext { - __be16 vlan_etype; - __be16 vlan_tci; - __be32 data[2]; + __u8 padding[2]; + unsigned char h_dest[ETH_ALEN]; /* destination eth addr */ + __be16 vlan_etype; + __be16 vlan_tci; + __be32 data[2]; }; /** @@ -1027,6 +1029,7 @@ enum ethtool_sfeatures_retval_bits { #define ETHER_FLOW 0x12 /* spec only (ether_spec) */ /* Flag to enable additional fields in struct ethtool_rx_flow_spec */ #define FLOW_EXT 0x80000000 +#define FLOW_MAC_EXT 0x40000000 /* L3-L4 network traffic flow hash options */ #define RXH_L2DA (1 << 1)