[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <6cb7c5b6-bf5a-dc1a-9676-d664fe1a7acc@amd.com>
Date: Fri, 15 Dec 2023 11:44:50 -0800
From: Brett Creeley <bcreeley@....com>
To: Michal Kubiak <michal.kubiak@...el.com>, intel-wired-lan@...ts.osuosl.org
Cc: aleksander.lobakin@...el.com, larysa.zaremba@...el.com,
alan.brady@...el.com, joshua.a.hay@...el.com, emil.s.tantilov@...el.com,
maciej.fijalkowski@...el.com, netdev@...r.kernel.org,
Przemek Kitszel <przemyslaw.kitszel@...el.com>
Subject: Re: [PATCH iwl-net v2] idpf: enable WB_ON_ITR
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.hay@...el.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.kitszel@...el.com>
> Reviewed-by: Alexander Lobakin <aleksander.lobakin@...el.com>
> Signed-off-by: Joshua Hay <joshua.a.hay@...el.com>
> Co-developed-by: Michal Kubiak <michal.kubiak@...el.com>
> Signed-off-by: Michal Kubiak <michal.kubiak@...el.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.creeley@....com>
Powered by blists - more mailing lists