On 12/15/2023 11:37 AM, Michal Kubiak wrote:
Caution: This message originated from an External Source. Use proper caution
when opening attachments, clicking links, or responding.
From: Joshua Hay <joshua.a....@intel.com>
Tell hardware to write back completed descriptors even when interrupts
are disabled. Otherwise, descriptors might not be written back until
the hardware can flush a full cacheline of descriptors. This can cause
unnecessary delays when traffic is light (or even trigger Tx queue
timeout).
The example scenario to reproduce the Tx timeout if the fix is not
applied:
- configure at least 2 Tx queues to be assigned to the same q_vector,
- generate a huge Tx traffic on the first Tx queue
- try to send a few packets using the second Tx queue.
In such a case Tx timeout will appear on the second Tx queue because no
completion descriptors are written back for that queue while interrupts
are disabled due to NAPI polling.
The patch is necessary to start work on the AF_XDP implementation for
the idpf driver, because there may be a case where a regular LAN Tx
queue and an XDP queue share the same NAPI.
Fixes: c2d548cad150 ("idpf: add TX splitq napi poll support")
Fixes: a5ab9ee0df0b ("idpf: add singleq start_xmit and napi poll")
Reviewed-by: Przemek Kitszel <przemyslaw.kits...@intel.com>
Reviewed-by: Alexander Lobakin <aleksander.loba...@intel.com>
Signed-off-by: Joshua Hay <joshua.a....@intel.com>
Co-developed-by: Michal Kubiak <michal.kub...@intel.com>
Signed-off-by: Michal Kubiak <michal.kub...@intel.com>
---
v1 -> v2:
- reordered members of 'idpf_q_vector' to optimize the structure
layout in terms of cachelines,
- added kdocs for new structure members,
- added description of the example problem fixed by the patch,
- fixed a typo in the commit message ("writeback" -> "write
back").
---
drivers/net/ethernet/intel/idpf/idpf_dev.c | 2 ++
.../ethernet/intel/idpf/idpf_singleq_txrx.c | 6 ++++-
drivers/net/ethernet/intel/idpf/idpf_txrx.c | 7 ++++-
drivers/net/ethernet/intel/idpf/idpf_txrx.h | 26 +++++++++++++++++++
drivers/net/ethernet/intel/idpf/idpf_vf_dev.c | 2 ++
5 files changed, 41 insertions(+), 2 deletions(-)
[...]
Reviewed-by: Brett Creeley <brett.cree...@amd.com>
_______________________________________________
Intel-wired-lan mailing list
Intel-wired-lan@osuosl.org
https://lists.osuosl.org/mailman/listinfo/intel-wired-lan