numam-dpdk/drivers/net/bnxt
Lance Richardson f0beaf8021 net/bnxt: limit Rx representor packets per poll
Without some limit on the number of packets transferred from the
HW ring to the representor ring per burst receive call, an entire ring's
worth of packets can be transferred. This can break assumptions
about ring indices (index on return could be identical to the index
on entry, which is assumed to mean that no packets were processed),
and can result in representor packets being dropped unnecessarily
due to representor ring overflow.

Fix by limiting the number of representor packets transferred per
poll to requested burst size.

Fixes: 6dc83230b4 ("net/bnxt: support port representor data path")
Cc: stable@dpdk.org

Signed-off-by: Lance Richardson <lance.richardson@broadcom.com>
Reviewed-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
Reviewed-by: Somnath Kotur <somnath.kotur@broadcom.com>
2021-01-08 16:03:06 +01:00
..
hcapi net/bnxt: add Stingray support to core layer 2020-11-03 23:35:03 +01:00
tf_core net/bnxt: fix format specifier for unsigned int 2021-01-08 16:03:05 +01:00
tf_ulp net/bnxt: add missing comments 2021-01-08 16:03:05 +01:00
bnxt_cpr.c net/bnxt: fix Rx performance by removing spinlock 2020-11-03 23:35:03 +01:00
bnxt_cpr.h net/bnxt: modify ring index logic 2021-01-08 16:03:05 +01:00
bnxt_ethdev.c net/bnxt: update indentation and coding style 2021-01-08 16:03:05 +01:00
bnxt_filter.c net/bnxt: fix checking VNIC in shutdown path 2020-09-18 18:55:12 +02:00
bnxt_filter.h net/bnxt: add flow stats in extended stats 2020-04-21 13:57:09 +02:00
bnxt_flow.c net/bnxt: support RSS hash selection 2020-10-08 19:58:11 +02:00
bnxt_hwrm.c net/bnxt: modify ring index logic 2021-01-08 16:03:05 +01:00
bnxt_hwrm.h net/bnxt: remove function declaration 2021-01-08 16:03:05 +01:00
bnxt_irq.c net/bnxt: fix probe in FreeBSD 2020-02-05 09:51:19 +01:00
bnxt_irq.h net/bnxt: change MSI-X vector to queue mapping 2019-10-23 16:43:08 +02:00
bnxt_nvm_defs.h net/bnxt: convert to SPDX license tag 2018-04-14 00:40:21 +02:00
bnxt_reps.c net/bnxt: modify ring index logic 2021-01-08 16:03:05 +01:00
bnxt_reps.h ethdev: change stop operation callback to return int 2020-10-16 22:26:41 +02:00
bnxt_ring.c net/bnxt: modify ring index logic 2021-01-08 16:03:05 +01:00
bnxt_ring.h net/bnxt: modify ring index logic 2021-01-08 16:03:05 +01:00
bnxt_rxq.c net/bnxt: fix max rings computation 2021-01-08 16:03:05 +01:00
bnxt_rxq.h net/bnxt: fix Rx performance by removing spinlock 2020-11-03 23:35:03 +01:00
bnxt_rxr.c net/bnxt: limit Rx representor packets per poll 2021-01-08 16:03:06 +01:00
bnxt_rxr.h net/bnxt: modify ring index logic 2021-01-08 16:03:05 +01:00
bnxt_rxtx_vec_common.h net/bnxt: modify ring index logic 2021-01-08 16:03:05 +01:00
bnxt_rxtx_vec_neon.c net/bnxt: modify ring index logic 2021-01-08 16:03:05 +01:00
bnxt_rxtx_vec_sse.c net/bnxt: modify ring index logic 2021-01-08 16:03:05 +01:00
bnxt_stats.c net/bnxt: fix xstats by id 2020-11-03 23:24:25 +01:00
bnxt_stats.h ethdev: make stats and xstats reset callbacks return int 2019-10-07 15:00:54 +02:00
bnxt_txq.c net/bnxt: fix max rings computation 2021-01-08 16:03:05 +01:00
bnxt_txq.h net/bnxt: remove unused macros and fields 2020-10-16 19:18:47 +02:00
bnxt_txr.c net/bnxt: modify ring index logic 2021-01-08 16:03:05 +01:00
bnxt_txr.h net/bnxt: modify ring index logic 2021-01-08 16:03:05 +01:00
bnxt_util.c net/bnxt: fix VF probe when MAC address is zero 2019-07-23 14:31:35 +02:00
bnxt_util.h net/bnxt: use macro for bit definitions 2019-10-08 12:14:30 +02:00
bnxt_vnic.c net/bnxt: remove references to Thor 2021-01-08 16:03:05 +01:00
bnxt_vnic.h net/bnxt: support RSS hash selection 2020-10-08 19:58:11 +02:00
bnxt.h net/bnxt: add missing comments 2021-01-08 16:03:05 +01:00
hsi_struct_def_dpdk.h net/bnxt: update HWRM structures 2020-10-08 19:58:11 +02:00
meson.build net/bnxt: support VXLAN decap offload 2020-11-03 23:35:03 +01:00
rte_pmd_bnxt.c ethdev: remove underscore prefix from internal API 2020-09-18 18:55:08 +02:00
rte_pmd_bnxt.h net/bnxt: switch CFA code to dynamic mbuf field 2020-10-31 16:13:11 +01:00
version.map build: remove library name from version map file name 2020-10-19 22:13:59 +02:00