[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20251024175402.397c05a9@kernel.org>
Date: Fri, 24 Oct 2025 17:54:02 -0700
From: Jakub Kicinski <kuba@...nel.org>
To: Jesper Dangaard Brouer <hawk@...nel.org>
Cc: netdev@...r.kernel.org, makita.toshiaki@....ntt.co.jp, Eric Dumazet
<eric.dumazet@...il.com>, "David S. Miller" <davem@...emloft.net>, Paolo
Abeni <pabeni@...hat.com>, ihor.solodrai@...ux.dev,
toshiaki.makita1@...il.com, bpf@...r.kernel.org,
linux-kernel@...r.kernel.org, kernel-team@...udflare.com
Subject: Re: [PATCH net V1 2/3] veth: stop and start all TX queue in netdev
down/up
On Thu, 23 Oct 2025 16:59:37 +0200 Jesper Dangaard Brouer wrote:
> The veth driver started manipulating TXQ states in commit
> dc82a33297fc ("veth: apply qdisc backpressure on full ptr_ring
> to reduce TX drops").
>
> Other drivers manipulating TXQ states takes care of stopping
> and starting TXQs in NDOs. Thus, adding this to veth .ndo_open
> and .ndo_stop.
Kinda, but taking a device up or down resets the qdisc, IIRC.
So stopping the qdisc for real drivers is mostly a way to make sure
that there's nothing entering the xmit handler as the driver dismantles
its state.
I'm not sure if this is an official rule, but I'm under the impression
that stopping the queues or carrier loss (and
netif_tx_stop_all_queues(peer) in close() is stopping peer's Tx queue
on carrier loss) is inadvisable as it may lead to old packets getting
transmitted when carrier comes back.
IOW based on the commit msg - I'm not sure this patch is needed..
Powered by blists - more mailing lists