]> git.baikalelectronics.ru Git - kernel.git/commit
bnxt_en: fix potentially incorrect return value for ndo_rx_flow_steer
authorAlex Barba <alex.barba@broadcom.com>
Thu, 3 Nov 2022 23:33:27 +0000 (19:33 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 25 Nov 2022 16:42:04 +0000 (17:42 +0100)
commitc22ba1cfdc64639f30dff7018aafa331508c1aeb
tree93766dbf5d49f3e532c4d9ae87f5363d45688712
parentd19ed8cceb58c6066a65ce439dbb98e6afa10838
bnxt_en: fix potentially incorrect return value for ndo_rx_flow_steer

[ Upstream commit c573420b9bd941f5d79f7d4dc8195518423a5811 ]

In the bnxt_en driver ndo_rx_flow_steer returns '0' whenever an entry
that we are attempting to steer is already found.  This is not the
correct behavior.  The return code should be the value/index that
corresponds to the entry.  Returning zero all the time causes the
RFS records to be incorrect unless entry '0' is the correct one.  As
flows migrate to different cores this can create entries that are not
correct.

Fixes: dfe047769e71 ("bnxt_en: New Broadcom ethernet driver.")
Reported-by: Akshay Navgire <anavgire@purestorage.com>
Signed-off-by: Alex Barba <alex.barba@broadcom.com>
Signed-off-by: Andy Gospodarek <gospo@broadcom.com>
Signed-off-by: Michael Chan <michael.chan@broadcom.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/ethernet/broadcom/bnxt/bnxt.c