RE: [EXT] Re: [net-next PATCH] octeontx2-af: Tc flower offload support for inner VLAN

From: Suman Ghosh
Date: Thu Jul 27 2023 - 01:04:15 EST


>> This patch extends current TC flower offload support to allow filters
>> involving inner VLAN matching, to be offloaded to HW.
>>
>> Example command:
>> tc filter add dev eth2 protocol 802.1AD parent ffff: flower vlan_id 10
>> vlan_ethtype 802.1Q cvlan_id 20 skip_sw action drop
>>
>> Signed-off-by: Suman Ghosh <sumang@xxxxxxxxxxx>
>> ---
>> .../net/ethernet/marvell/octeontx2/af/mbox.h | 1 +
>> .../net/ethernet/marvell/octeontx2/af/npc.h | 3 +
>> .../marvell/octeontx2/af/rvu_debugfs.c | 5 +
>> .../marvell/octeontx2/af/rvu_npc_fs.c | 13 +++
>> .../ethernet/marvell/octeontx2/nic/otx2_tc.c | 106
>> +++++++++++-------
>> 5 files changed, 90 insertions(+), 38 deletions(-)
>
><...>
>
>> + if (!is_inner)
>> + flow_rule_match_vlan(rule, &match);
>> + else
>> + flow_rule_match_cvlan(rule, &match);
>
><...>
>
>> + if (!is_inner) {
>> + flow_spec->vlan_tci = htons(vlan_tci);
>> + flow_mask->vlan_tci = htons(vlan_tci_mask);
>> + req->features |= BIT_ULL(NPC_OUTER_VID);
>> + } else {
>> + flow_spec->vlan_itci = htons(vlan_tci);
>> + flow_mask->vlan_itci = htons(vlan_tci_mask);
>> + req->features |= BIT_ULL(NPC_INNER_VID);
>> + }
>
>Slightly better approach will be to reverse these checks from "if
>(!is_inner)" to be "f (is_inner)".
>
>Other than that,
[Suman] Sure Leon. Will push a v2 addressing the same.
>Reviewed-by: Leon Romanovsky <leonro@xxxxxxxxxx>