[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20220331113135.025460c1@kernel.org>
Date: Thu, 31 Mar 2022 11:31:35 -0700
From: Jakub Kicinski <kuba@...nel.org>
To: Tomas Melin <tomas.melin@...sala.com>
Cc: netdev@...r.kernel.org, nicolas.ferre@...rochip.com,
claudiu.beznea@...rochip.com, davem@...emloft.net,
pabeni@...hat.com
Subject: Re: [PATCH] net: macb: Restart tx only if queue pointer is lagging
On Fri, 25 Mar 2022 08:50:12 +0200 Tomas Melin wrote:
> commit 5ea9c08a8692 ("net: macb: restart tx after tx used bit read")
Ooh, I just noticed the commit ID here is from the stable tree.
Please change it to the original commit ID, so 4298388574da
and repost once the discussion settles.
> added support for restarting transmission. Restarting tx does not work
> in case controller asserts TXUBR interrupt and TQBP is already at the end
> of the tx queue. In that situation, restarting tx will immediately cause
> assertion of another TXUBR interrupt. The driver will end up in an infinite
> interrupt loop which it cannot break out of.
>
> For cases where TQBP is at the end of the tx queue, instead
> only clear TXUBR interrupt. As more data gets pushed to the queue,
> transmission will resume.
>
> This issue was observed on a Xilinx Zynq based board. During stress test of
> the network interface, driver would get stuck on interrupt loop
> within seconds or minutes causing CPU to stall.
Powered by blists - more mailing lists