netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [RESEND net 0/3] net: hns3: fixes fot -net
@ 2021-02-27  7:24 Huazhong Tan
  2021-02-27  7:24 ` [RESEND net 1/3] net: hns3: fix error mask definition of flow director Huazhong Tan
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: Huazhong Tan @ 2021-02-27  7:24 UTC (permalink / raw)
  To: davem, kuba
  Cc: netdev, salil.mehta, yisen.zhuang, huangdaode, linuxarm, Huazhong Tan

The patchset includes some fixes for the HNS3 ethernet driver.

Jian Shen (3):
  net: hns3: fix error mask definition of flow director
  net: hns3: fix query vlan mask value error for flow director
  net: hns3: fix bug when calculating the TCAM table info

 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_cmd.h  | 6 +++---
 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c | 7 +++----
 2 files changed, 6 insertions(+), 7 deletions(-)

-- 
2.7.4


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [RESEND net 1/3] net: hns3: fix error mask definition of flow director
  2021-02-27  7:24 [RESEND net 0/3] net: hns3: fixes fot -net Huazhong Tan
@ 2021-02-27  7:24 ` Huazhong Tan
  2021-02-27  7:24 ` [RESEND net 2/3] net: hns3: fix query vlan mask value error for " Huazhong Tan
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 5+ messages in thread
From: Huazhong Tan @ 2021-02-27  7:24 UTC (permalink / raw)
  To: davem, kuba
  Cc: netdev, salil.mehta, yisen.zhuang, huangdaode, linuxarm,
	Jian Shen, Huazhong Tan

From: Jian Shen <shenjian15@huawei.com>

Currently, some bit filed definitions of flow director TCAM
configuration command are incorrect. Since the wrong MSB is
always 0, and these fields are assgined in order, so it still works.

Fix it by redefine them.

Fixes: 117328680288 ("net: hns3: Add input key and action config support for flow director")
Signed-off-by: Jian Shen <shenjian15@huawei.com>
Signed-off-by: Huazhong Tan <tanhuazhong@huawei.com>
---
 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_cmd.h | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_cmd.h b/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_cmd.h
index ff52a65..057dda7 100644
--- a/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_cmd.h
+++ b/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_cmd.h
@@ -1053,16 +1053,16 @@ struct hclge_fd_tcam_config_3_cmd {
 #define HCLGE_FD_AD_DROP_B		0
 #define HCLGE_FD_AD_DIRECT_QID_B	1
 #define HCLGE_FD_AD_QID_S		2
-#define HCLGE_FD_AD_QID_M		GENMASK(12, 2)
+#define HCLGE_FD_AD_QID_M		GENMASK(11, 2)
 #define HCLGE_FD_AD_USE_COUNTER_B	12
 #define HCLGE_FD_AD_COUNTER_NUM_S	13
 #define HCLGE_FD_AD_COUNTER_NUM_M	GENMASK(20, 13)
 #define HCLGE_FD_AD_NXT_STEP_B		20
 #define HCLGE_FD_AD_NXT_KEY_S		21
-#define HCLGE_FD_AD_NXT_KEY_M		GENMASK(26, 21)
+#define HCLGE_FD_AD_NXT_KEY_M		GENMASK(25, 21)
 #define HCLGE_FD_AD_WR_RULE_ID_B	0
 #define HCLGE_FD_AD_RULE_ID_S		1
-#define HCLGE_FD_AD_RULE_ID_M		GENMASK(13, 1)
+#define HCLGE_FD_AD_RULE_ID_M		GENMASK(12, 1)
 #define HCLGE_FD_AD_TC_OVRD_B		16
 #define HCLGE_FD_AD_TC_SIZE_S		17
 #define HCLGE_FD_AD_TC_SIZE_M		GENMASK(20, 17)
-- 
2.7.4


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [RESEND net 2/3] net: hns3: fix query vlan mask value error for flow director
  2021-02-27  7:24 [RESEND net 0/3] net: hns3: fixes fot -net Huazhong Tan
  2021-02-27  7:24 ` [RESEND net 1/3] net: hns3: fix error mask definition of flow director Huazhong Tan
@ 2021-02-27  7:24 ` Huazhong Tan
  2021-02-27  7:24 ` [RESEND net 3/3] net: hns3: fix bug when calculating the TCAM table info Huazhong Tan
  2021-02-28 20:10 ` [RESEND net 0/3] net: hns3: fixes fot -net patchwork-bot+netdevbpf
  3 siblings, 0 replies; 5+ messages in thread
From: Huazhong Tan @ 2021-02-27  7:24 UTC (permalink / raw)
  To: davem, kuba
  Cc: netdev, salil.mehta, yisen.zhuang, huangdaode, linuxarm,
	Jian Shen, Huazhong Tan

From: Jian Shen <shenjian15@huawei.com>

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: 05c2314fe6a8 ("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>
---
 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c b/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c
index 34b744d..932cfd1 100644
--- a/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c
+++ b/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c
@@ -6330,8 +6330,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->m_ext.vlan_tci =
 				rule->unused_tuple & BIT(INNER_VLAN_TAG_FST) ?
-				cpu_to_be16(VLAN_VID_MASK) :
-				cpu_to_be16(rule->tuples_mask.vlan_tag1);
+				0 : cpu_to_be16(rule->tuples_mask.vlan_tag1);
 	}
 
 	if (fs->flow_type & FLOW_MAC_EXT) {
-- 
2.7.4


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [RESEND net 3/3] net: hns3: fix bug when calculating the TCAM table info
  2021-02-27  7:24 [RESEND net 0/3] net: hns3: fixes fot -net Huazhong Tan
  2021-02-27  7:24 ` [RESEND net 1/3] net: hns3: fix error mask definition of flow director Huazhong Tan
  2021-02-27  7:24 ` [RESEND net 2/3] net: hns3: fix query vlan mask value error for " Huazhong Tan
@ 2021-02-27  7:24 ` Huazhong Tan
  2021-02-28 20:10 ` [RESEND net 0/3] net: hns3: fixes fot -net patchwork-bot+netdevbpf
  3 siblings, 0 replies; 5+ messages in thread
From: Huazhong Tan @ 2021-02-27  7:24 UTC (permalink / raw)
  To: davem, kuba
  Cc: netdev, salil.mehta, yisen.zhuang, huangdaode, linuxarm,
	Jian Shen, Huazhong Tan

From: Jian Shen <shenjian15@huawei.com>

The function hclge_fd_convert_tuple() is used to convert tuples
and tuples mask to TCAM x and y.  But it misuses the source mac
as source mac mask when convert INNER_SRC_MAC, which may cause
the flow director rule works unexpectedly. So fix it.

Fixes: 117328680288 ("net: hns3: Add input key and action config support for flow director")
Signed-off-by: Jian Shen <shenjian15@huawei.com>
Signed-off-by: Huazhong Tan <tanhuazhong@huawei.com>
---
 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c b/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c
index 932cfd1..e3f81c7 100644
--- a/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c
+++ b/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c
@@ -5245,9 +5245,9 @@ static bool hclge_fd_convert_tuple(u32 tuple_bit, u8 *key_x, u8 *key_y,
 	case BIT(INNER_SRC_MAC):
 		for (i = 0; i < ETH_ALEN; i++) {
 			calc_x(key_x[ETH_ALEN - 1 - i], rule->tuples.src_mac[i],
-			       rule->tuples.src_mac[i]);
+			       rule->tuples_mask.src_mac[i]);
 			calc_y(key_y[ETH_ALEN - 1 - i], rule->tuples.src_mac[i],
-			       rule->tuples.src_mac[i]);
+			       rule->tuples_mask.src_mac[i]);
 		}
 
 		return true;
-- 
2.7.4


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [RESEND net 0/3] net: hns3: fixes fot -net
  2021-02-27  7:24 [RESEND net 0/3] net: hns3: fixes fot -net Huazhong Tan
                   ` (2 preceding siblings ...)
  2021-02-27  7:24 ` [RESEND net 3/3] net: hns3: fix bug when calculating the TCAM table info Huazhong Tan
@ 2021-02-28 20:10 ` patchwork-bot+netdevbpf
  3 siblings, 0 replies; 5+ messages in thread
From: patchwork-bot+netdevbpf @ 2021-02-28 20:10 UTC (permalink / raw)
  To: Huazhong Tan
  Cc: davem, kuba, netdev, salil.mehta, yisen.zhuang, huangdaode, linuxarm

Hello:

This series was applied to netdev/net.git (refs/heads/master):

On Sat, 27 Feb 2021 15:24:50 +0800 you wrote:
> The patchset includes some fixes for the HNS3 ethernet driver.
> 
> Jian Shen (3):
>   net: hns3: fix error mask definition of flow director
>   net: hns3: fix query vlan mask value error for flow director
>   net: hns3: fix bug when calculating the TCAM table info
> 
> [...]

Here is the summary with links:
  - [RESEND,net,1/3] net: hns3: fix error mask definition of flow director
    https://git.kernel.org/netdev/net/c/ae85ddda0f1b
  - [RESEND,net,2/3] net: hns3: fix query vlan mask value error for flow director
    https://git.kernel.org/netdev/net/c/c75ec148a316
  - [RESEND,net,3/3] net: hns3: fix bug when calculating the TCAM table info
    https://git.kernel.org/netdev/net/c/b36fc875bcde

You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html



^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2021-02-28 20:11 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-02-27  7:24 [RESEND net 0/3] net: hns3: fixes fot -net Huazhong Tan
2021-02-27  7:24 ` [RESEND net 1/3] net: hns3: fix error mask definition of flow director Huazhong Tan
2021-02-27  7:24 ` [RESEND net 2/3] net: hns3: fix query vlan mask value error for " Huazhong Tan
2021-02-27  7:24 ` [RESEND net 3/3] net: hns3: fix bug when calculating the TCAM table info Huazhong Tan
2021-02-28 20:10 ` [RESEND net 0/3] net: hns3: fixes fot -net patchwork-bot+netdevbpf

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).