History

net: ethtool: Add destination MAC address to flow steering API

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.

Yan Burman committed 13 years ago

Commit d4676ea1 parent cfd56751 file · +7 −4Browse files

Showing the changes to include/uapi (1 of 1 file). Show all

Unified · Split

include/uapi/linux/ethtool.h+7−4
@@ -500,13 +500,15 @@ union ethtool_flow_union { · 499 unmodified lines
500 struct ethtool_ah_espip4_spec esp_ip4_spec;500 struct ethtool_ah_espip4_spec esp_ip4_spec;
501 struct ethtool_usrip4_spec usr_ip4_spec;501 struct ethtool_usrip4_spec usr_ip4_spec;
502 struct ethhdr ether_spec;502 struct ethhdr ether_spec;
503 __u8 hdata[60];503 __u8 hdata[52];
504};504};
505 505
506struct ethtool_flow_ext {506struct ethtool_flow_ext {
507 __be16 vlan_etype;507 __u8 padding[2];
508 __be16 vlan_tci;508 unsigned char h_dest[ETH_ALEN]; /* destination eth addr */
509 __be32 data[2];509 __be16 vlan_etype;
510 __be16 vlan_tci;
511 __be32 data[2];
510};512};
511 513
512/**514/**
@@ -1027,6 +1029,7 @@ enum ethtool_sfeatures_retval_bits { · 514 unmodified lines
1027#define ETHER_FLOW 0x12 /* spec only (ether_spec) */1029#define ETHER_FLOW 0x12 /* spec only (ether_spec) */
1028/* Flag to enable additional fields in struct ethtool_rx_flow_spec */1030/* Flag to enable additional fields in struct ethtool_rx_flow_spec */
1029#define FLOW_EXT 0x800000001031#define FLOW_EXT 0x80000000
1032#define FLOW_MAC_EXT 0x40000000
1030 1033
1031/* L3-L4 network traffic flow hash options */1034/* L3-L4 network traffic flow hash options */
1032#define RXH_L2DA (1 << 1)1035#define RXH_L2DA (1 << 1)