net: hns3: fix query vlan mask value error for flow director
commit c75ec148a316e8cf52274d16b9b422703b96f5ce upstream.
Currently, the driver returns VLAN_VID_MASK for vlan mask field,
when get flow director rule information for rule doesn't use vlan.
It may cause the vlan mask value display as 0xf000 in this
case, like below:
estuary:/$ ethtool -u eth1
50 RX rings available
Total 1 rules
Filter: 2
Rule Type: TCP over IPv4
Src IP addr: 0.0.0.0 mask: 255.255.255.255
Dest IP addr: 0.0.0.0 mask: 255.255.255.255
TOS: 0x0 mask: 0xff
Src port: 0 mask: 0xffff
Dest port: 0 mask: 0xffff
VLAN EtherType: 0x0 mask: 0xffff
VLAN: 0x0 mask: 0xf000
User-defined: 0x1234 mask: 0x0
Action: Direct to queue 3
Fix it by return 0.
Fixes: 05c2314fe6 ("net: hns3: Add support for rule query of flow director")
Signed-off-by: Jian Shen <shenjian15@huawei.com>
Signed-off-by: Huazhong Tan <tanhuazhong@huawei.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
f9a87999bd
commit
3c7f1304ee
@@ -6183,8 +6183,7 @@ static void hclge_fd_get_ext_info(struct ethtool_rx_flow_spec *fs,
|
|||||||
fs->h_ext.vlan_tci = cpu_to_be16(rule->tuples.vlan_tag1);
|
fs->h_ext.vlan_tci = cpu_to_be16(rule->tuples.vlan_tag1);
|
||||||
fs->m_ext.vlan_tci =
|
fs->m_ext.vlan_tci =
|
||||||
rule->unused_tuple & BIT(INNER_VLAN_TAG_FST) ?
|
rule->unused_tuple & BIT(INNER_VLAN_TAG_FST) ?
|
||||||
cpu_to_be16(VLAN_VID_MASK) :
|
0 : cpu_to_be16(rule->tuples_mask.vlan_tag1);
|
||||||
cpu_to_be16(rule->tuples_mask.vlan_tag1);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (fs->flow_type & FLOW_MAC_EXT) {
|
if (fs->flow_type & FLOW_MAC_EXT) {
|
||||||
|
|||||||
Reference in New Issue
Block a user