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.
Showing the changes to include/uapi (1 of 1 file). Show all
Unified · Split
| @@ -500,13 +500,15 @@ union ethtool_flow_union { · 499 unmodified lines | ||
| 500 | 500 | struct ethtool_ah_espip4_spec esp_ip4_spec; |
| 501 | 501 | struct ethtool_usrip4_spec usr_ip4_spec; |
| 502 | 502 | struct ethhdr ether_spec; |
| 503 | − __u8 hdata[60]; | |
| 503 | + __u8 hdata[52]; | |
| 504 | 504 | }; |
| 505 | 505 | |
| 506 | 506 | struct ethtool_flow_ext { |
| 507 | − __be16 vlan_etype; | |
| 508 | − __be16 vlan_tci; | |
| 509 | − __be32 data[2]; | |
| 507 | + __u8 padding[2]; | |
| 508 | + unsigned char h_dest[ETH_ALEN]; /* destination eth addr */ | |
| 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 | 1029 | #define ETHER_FLOW 0x12 /* spec only (ether_spec) */ |
| 1028 | 1030 | /* Flag to enable additional fields in struct ethtool_rx_flow_spec */ |
| 1029 | 1031 | #define FLOW_EXT 0x80000000 |
| 1032 | +#define FLOW_MAC_EXT 0x40000000 | |
| 1030 | 1033 | |
| 1031 | 1034 | /* L3-L4 network traffic flow hash options */ |
| 1032 | 1035 | #define RXH_L2DA (1 << 1) |