net/cxgbe: fix packed Rx handling and flow port scoping
Get series with b4
b4 am [email protected]Versions newest first
- v1 Latest2 patches 2 repliesIn review
Patches in v1 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/2 | net/cxgbe: fix Rx handling for packed responses | +0 | 1 reply | |
| 2/2 | net/cxgbe: restrict rte flow rules to ingress port | +0 | 1 reply |
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.
Cover letter [PATCH 0/2] net/cxgbe: fix packed Rx handling and flow port scoping
This series fixes two correctness issues in the cxgbe PMD that can cause traffic loss on Chelsio T6 adapters, especially when rte_flow QUEUE rules concentrate ingress on a small set of RX queues.
Patch 1 fixes packed Rx response handling. The current PMD assumes every response descriptor starts a new Free List buffer by requiring F_RSPD_NEWBUF on each response. That assumption does not always hold for packed ingress responses. Under sustained small-packet traffic to a single ingress queue, the FL/IQ state goes out of sync and the affected Rx path stops making forward progress.
Patch 2 scopes rte_flow rules to the ingress port they were created on. Chelsio filters are programmed in adapter-wide tables, and the PMD already supports the iport field in the hardware filter spec. However, the flow parser never fills it for normal per-port rules, so a rule created on one port can also match traffic arriving on sibling ports of the same adapter.
Both issues reproduce with stock testpmd on T62100-LP-CR. The per-patch commit messages include the details and reproducers.
Abdulrahman Alshawi (2):
net/cxgbe: fix Rx handling for packed responses net/cxgbe: restrict rte_flow rules to ingress port
.mailmap | 1 +drivers/net/cxgbe/base/adapter.h | 1 + drivers/net/cxgbe/cxgbe_flow.c | 19 +++++ drivers/net/cxgbe/sge.c | 122 ++++++++++++++++++++++++-------
4 files changed, 118 insertions(+), 25 deletions(-)
--
2.39.5