Re: [PATCH net] ethtool: Check for vlan etype or vlan tci when parsing flow_rule

From: David Miller
Date: Thu May 30 2019 - 18:09:39 EST


From: Maxime Chevallier <maxime.chevallier@xxxxxxxxxxx>
Date: Thu, 30 May 2019 16:08:40 +0200

> When parsing an ethtool flow spec to build a flow_rule, the code checks
> if both the vlan etype and the vlan tci are specified by the user to add
> a FLOW_DISSECTOR_KEY_VLAN match.
>
> However, when the user only specified a vlan etype or a vlan tci, this
> check silently ignores these parameters.
>
> For example, the following rule :
>
> ethtool -N eth0 flow-type udp4 vlan 0x0010 action -1 loc 0
>
> will result in no error being issued, but the equivalent rule will be
> created and passed to the NIC driver :
>
> ethtool -N eth0 flow-type udp4 action -1 loc 0
>
> In the end, neither the NIC driver using the rule nor the end user have
> a way to know that these keys were dropped along the way, or that
> incorrect parameters were entered.
>
> This kind of check should be left to either the driver, or the ethtool
> flow spec layer.
>
> This commit makes so that ethtool parameters are forwarded as-is to the
> NIC driver.
>
> Since none of the users of ethtool_rx_flow_rule_create are using the
> VLAN dissector, I don't think this qualifies as a regression.
>
> Fixes: eca4205f9ec3 ("ethtool: add ethtool_rx_flow_spec to flow_rule structure translator")
> Signed-off-by: Maxime Chevallier <maxime.chevallier@xxxxxxxxxxx>

Applied, thank you.