]> git.baikalelectronics.ru Git - kernel.git/commit
bnxt_en: Flush XDP for bnxt_poll_nitroa0()'s NAPI
authorSebastian Andrzej Siewior <bigeasy@linutronix.de>
Mon, 18 Sep 2023 15:36:10 +0000 (17:36 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 6 Oct 2023 12:56:42 +0000 (14:56 +0200)
commit98ebbdefe4909b20df35ecba5e9685378d6b8d25
treefb1e45b212e4cf689d78b3b2b8d9acd847382fe0
parent26f1829c853860b60cf52175c875ad501e875dfd
bnxt_en: Flush XDP for bnxt_poll_nitroa0()'s NAPI

[ Upstream commit edc0140cc3b7b91874ebe70eb7d2a851e8817ccc ]

bnxt_poll_nitroa0() invokes bnxt_rx_pkt() which can run a XDP program
which in turn can return XDP_REDIRECT. bnxt_rx_pkt() is also used by
__bnxt_poll_work() which flushes (xdp_do_flush()) the packets after each
round. bnxt_poll_nitroa0() lacks this feature.
xdp_do_flush() should be invoked before leaving the NAPI callback.

Invoke xdp_do_flush() after a redirect in bnxt_poll_nitroa0() NAPI.

Cc: Michael Chan <michael.chan@broadcom.com>
Fixes: f18c2b77b2e4e ("bnxt_en: optimized XDP_REDIRECT support")
Reviewed-by: Andy Gospodarek <gospo@broadcom.com>
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Reviewed-by: Michael Chan <michael.chan@broadcom.com>
Acked-by: Jesper Dangaard Brouer <hawk@kernel.org>
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/ethernet/broadcom/bnxt/bnxt.c