]> git.baikalelectronics.ru Git - kernel.git/commitdiff
octeontx2-af: Fix key checking for source mac
authorSubbaraya Sundeep <sbhatta@marvell.com>
Wed, 3 Aug 2022 07:54:15 +0000 (13:24 +0530)
committerJakub Kicinski <kuba@kernel.org>
Sat, 6 Aug 2022 01:56:34 +0000 (18:56 -0700)
Given a field with its location/offset in input packet,
the key checking logic verifies whether extracting the
field can be supported or not based on the mkex profile
loaded in hardware. This logic is wrong wrt source mac
and this patch fixes that.

Fixes: 6082bddd7175 ("octeontx2-af: Generate key field bit mask from KEX profile")
Signed-off-by: Subbaraya Sundeep <sbhatta@marvell.com>
Signed-off-by: Sunil Goutham <sgoutham@marvell.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/marvell/octeontx2/af/rvu_npc_fs.c

index a400aa22da7944a49998332fc8fee82083ecb66a..7c4e1acd0f77b469fb7b3cb9f90405da621ed026 100644 (file)
@@ -467,7 +467,8 @@ do {                                                                               \
        NPC_SCAN_HDR(NPC_VLAN_TAG1, NPC_LID_LB, NPC_LT_LB_CTAG, 2, 2);
        NPC_SCAN_HDR(NPC_VLAN_TAG2, NPC_LID_LB, NPC_LT_LB_STAG_QINQ, 2, 2);
        NPC_SCAN_HDR(NPC_DMAC, NPC_LID_LA, la_ltype, la_start, 6);
-       NPC_SCAN_HDR(NPC_SMAC, NPC_LID_LA, la_ltype, la_start, 6);
+       /* SMAC follows the DMAC(which is 6 bytes) */
+       NPC_SCAN_HDR(NPC_SMAC, NPC_LID_LA, la_ltype, la_start + 6, 6);
        /* PF_FUNC is 2 bytes at 0th byte of NPC_LT_LA_IH_NIX_ETHER */
        NPC_SCAN_HDR(NPC_PF_FUNC, NPC_LID_LA, NPC_LT_LA_IH_NIX_ETHER, 0, 2);
 }