|
@@ -503,9 +503,20 @@ union ethtool_flow_union {
|
|
|
__u8 hdata[52];
|
|
|
};
|
|
|
|
|
|
+/**
|
|
|
+ * struct ethtool_flow_ext - additional RX flow fields
|
|
|
+ * @h_dest: destination MAC address
|
|
|
+ * @vlan_etype: VLAN EtherType
|
|
|
+ * @vlan_tci: VLAN tag control information
|
|
|
+ * @data: user defined data
|
|
|
+ *
|
|
|
+ * Note, @vlan_etype, @vlan_tci, and @data are only valid if %FLOW_EXT
|
|
|
+ * is set in &struct ethtool_rx_flow_spec @flow_type.
|
|
|
+ * @h_dest is valid if %FLOW_MAC_EXT is set.
|
|
|
+ */
|
|
|
struct ethtool_flow_ext {
|
|
|
__u8 padding[2];
|
|
|
- unsigned char h_dest[ETH_ALEN]; /* destination eth addr */
|
|
|
+ unsigned char h_dest[ETH_ALEN];
|
|
|
__be16 vlan_etype;
|
|
|
__be16 vlan_tci;
|
|
|
__be32 data[2];
|
|
@@ -519,7 +530,8 @@ struct ethtool_flow_ext {
|
|
|
* @m_u: Masks for flow field bits to be matched
|
|
|
* @m_ext: Masks for additional field bits to be matched
|
|
|
* Note, all additional fields must be ignored unless @flow_type
|
|
|
- * includes the %FLOW_EXT flag.
|
|
|
+ * includes the %FLOW_EXT or %FLOW_MAC_EXT flag
|
|
|
+ * (see &struct ethtool_flow_ext description).
|
|
|
* @ring_cookie: RX ring/queue index to deliver to, or %RX_CLS_FLOW_DISC
|
|
|
* if packets should be discarded
|
|
|
* @location: Location of rule in the table. Locations must be
|