2020-09-22 13:11:14

by George Cherian

[permalink] [raw]
Subject: [net-next PATCH 0/2] Add support for VLAN based flow distribution

This series add support for VLAN based flow distribution for octeontx2
netdev driver. This adds support for configuring the same via ethtool.

Following tests have been done.
- Multi VLAN flow with same SD
- Multi VLAN flow with same SDFN
- Single VLAN flow with multi SD
- Single VLAN flow with multi SDFN
All tests done for udp/tcp both v4 and v6


George Cherian (2):
octeontx2-af: Add support for VLAN based RSS hashing
octeontx2-pf: Support to change VLAN based RSS hash options via
ethtool

drivers/net/ethernet/marvell/octeontx2/af/mbox.h | 1 +
drivers/net/ethernet/marvell/octeontx2/af/rvu_nix.c | 10 +++++++++-
.../net/ethernet/marvell/octeontx2/nic/otx2_common.c | 2 +-
.../net/ethernet/marvell/octeontx2/nic/otx2_ethtool.c | 7 +++++++
4 files changed, 18 insertions(+), 2 deletions(-)

--
2.25.1


2020-09-22 13:11:28

by George Cherian

[permalink] [raw]
Subject: [net-next PATCH 1/2] octeontx2-af: Add support for VLAN based RSS hashing

Added support for PF/VF drivers to choose RSS flow key algorithm
with VLAN tag included in hashing input data. Only CTAG is considered.

Signed-off-by: George Cherian <[email protected]>
Signed-off-by: Sunil Goutham <[email protected]>
---
drivers/net/ethernet/marvell/octeontx2/af/mbox.h | 1 +
drivers/net/ethernet/marvell/octeontx2/af/rvu_nix.c | 8 ++++++++
2 files changed, 9 insertions(+)

diff --git a/drivers/net/ethernet/marvell/octeontx2/af/mbox.h b/drivers/net/ethernet/marvell/octeontx2/af/mbox.h
index 4aaef0a2b51c..aa3bda3f34be 100644
--- a/drivers/net/ethernet/marvell/octeontx2/af/mbox.h
+++ b/drivers/net/ethernet/marvell/octeontx2/af/mbox.h
@@ -625,6 +625,7 @@ struct nix_rss_flowkey_cfg {
#define NIX_FLOW_KEY_TYPE_INNR_UDP BIT(15)
#define NIX_FLOW_KEY_TYPE_INNR_SCTP BIT(16)
#define NIX_FLOW_KEY_TYPE_INNR_ETH_DMAC BIT(17)
+#define NIX_FLOW_KEY_TYPE_VLAN BIT(20)
u32 flowkey_cfg; /* Flowkey types selected */
u8 group; /* RSS context or group */
};
diff --git a/drivers/net/ethernet/marvell/octeontx2/af/rvu_nix.c b/drivers/net/ethernet/marvell/octeontx2/af/rvu_nix.c
index 08181fc5f5d4..4bdc4baa3c59 100644
--- a/drivers/net/ethernet/marvell/octeontx2/af/rvu_nix.c
+++ b/drivers/net/ethernet/marvell/octeontx2/af/rvu_nix.c
@@ -2509,6 +2509,14 @@ static int set_flowkey_fields(struct nix_rx_flowkey_alg *alg, u32 flow_cfg)
field->ltype_match = NPC_LT_LE_GTPU;
field->ltype_mask = 0xF;
break;
+ case NIX_FLOW_KEY_TYPE_VLAN:
+ field->lid = NPC_LID_LB;
+ field->hdr_offset = 2; /* Skip TPID (2-bytes) */
+ field->bytesm1 = 1; /* 2 Bytes (Actually 12 bits) */
+ field->ltype_match = NPC_LT_LB_CTAG;
+ field->ltype_mask = 0xF;
+ field->fn_mask = 1; /* Mask out the first nibble */
+ break;
}
field->ena = 1;

--
2.25.1

2020-09-22 17:15:26

by Jakub Kicinski

[permalink] [raw]
Subject: Re: [net-next PATCH 0/2] Add support for VLAN based flow distribution

On Tue, 22 Sep 2020 18:37:25 +0530 George Cherian wrote:
> This series add support for VLAN based flow distribution for octeontx2
> netdev driver. This adds support for configuring the same via ethtool.
>
> Following tests have been done.
> - Multi VLAN flow with same SD
> - Multi VLAN flow with same SDFN
> - Single VLAN flow with multi SD
> - Single VLAN flow with multi SDFN
> All tests done for udp/tcp both v4 and v6

Reviewed-by: Jakub Kicinski <[email protected]>

2020-09-24 00:47:32

by David Miller

[permalink] [raw]
Subject: Re: [net-next PATCH 0/2] Add support for VLAN based flow distribution

From: George Cherian <[email protected]>
Date: Tue, 22 Sep 2020 18:37:25 +0530

> This series add support for VLAN based flow distribution for octeontx2
> netdev driver. This adds support for configuring the same via ethtool.
>
> Following tests have been done.
> - Multi VLAN flow with same SD
> - Multi VLAN flow with same SDFN
> - Single VLAN flow with multi SD
> - Single VLAN flow with multi SDFN
> All tests done for udp/tcp both v4 and v6

Series applied to net-next, thanks.