]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
bnxt_en: ethtool: Supply ntuple rss context action
authorDaniel Xu <dxu@dxuuu.xyz>
Wed, 27 Nov 2024 22:58:29 +0000 (15:58 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 14 Dec 2024 19:03:04 +0000 (20:03 +0100)
[ Upstream commit be75cda92a65a13db242117d674cd5584477a168 ]

Commit 2f4f9fe5bf5f ("bnxt_en: Support adding ntuple rules on RSS
contexts") added support for redirecting to an RSS context as an ntuple
rule action. However, it forgot to update the ETHTOOL_GRXCLSRULE
codepath. This caused `ethtool -n` to always report the action as
"Action: Direct to queue 0" which is wrong.

Fix by teaching bnxt driver to report the RSS context when applicable.

Fixes: 2f4f9fe5bf5f ("bnxt_en: Support adding ntuple rules on RSS contexts")
Reviewed-by: Michael Chan <michael.chan@broadcom.com>
Signed-off-by: Daniel Xu <dxu@dxuuu.xyz>
Link: https://patch.msgid.link/2e884ae39e08dc5123be7c170a6089cefe6a78f7.1732748253.git.dxu@dxuuu.xyz
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c

index 20ba14eb87e00be917ae3a7ab5c42185987ad536..b901ecb57f25521601089b94a93106673d12158f 100644 (file)
@@ -1193,10 +1193,14 @@ static int bnxt_grxclsrule(struct bnxt *bp, struct ethtool_rxnfc *cmd)
                }
        }
 
-       if (fltr->base.flags & BNXT_ACT_DROP)
+       if (fltr->base.flags & BNXT_ACT_DROP) {
                fs->ring_cookie = RX_CLS_FLOW_DISC;
-       else
+       } else if (fltr->base.flags & BNXT_ACT_RSS_CTX) {
+               fs->flow_type |= FLOW_RSS;
+               cmd->rss_context = fltr->base.fw_vnic_id;
+       } else {
                fs->ring_cookie = fltr->base.rxq;
+       }
        rc = 0;
 
 fltr_err: