From: Jakub Kicinski <kuba@kernel.org>
To: Junnan Wu <junnan01.wu@samsung.com>
Cc: jasowang@redhat.com, andrew+netdev@lunn.ch, davem@davemloft.net,
edumazet@google.com, eperezma@redhat.com, lei19.wang@samsung.com,
linux-kernel@vger.kernel.org, mst@redhat.com,
netdev@vger.kernel.org, pabeni@redhat.com, q1.huang@samsung.com,
virtualization@lists.linux.dev, xuanzhuo@linux.alibaba.com,
ying123.xu@samsung.com
Subject: Re: [PATCH net] virtio_net: adjust the execution order of function `virtnet_close` during freeze
Date: Fri, 15 Aug 2025 08:55:03 -0700 [thread overview]
Message-ID: <20250815085503.3034e391@kernel.org> (raw)
In-Reply-To: <20250815060615.4162-1-junnan01.wu@samsung.com>
On Fri, 15 Aug 2025 14:06:15 +0800 Junnan Wu wrote:
> On Fri, 15 Aug 2025 13:38:21 +0800 Jason Wang <jasowang@redhat.com> wrote
> > On Fri, Aug 15, 2025 at 10:24 AM Junnan Wu <junnan01.wu@samsung.com> wrote:
> > > Sorry, I basically mean that the tx napi which caused by
> > > userspace will not be scheduled during suspend, others can not be
> > > guaranteed, such as unfinished packets already in tx vq etc.
> > >
> > > But after this patch, once `virtnet_close` completes,
> > > both tx and rq napi will be disabled which guarantee their napi
> > > will not be scheduled in future. And the tx state will be set to
> > > "__QUEUE_STATE_DRV_XOFF" correctly in `netif_device_detach`.
> >
> > Ok, so the commit mentioned by fix tag is incorrect.
>
> Yes, you are right. The commit of this fix tag is the first commit I
> found which add function `virtnet_poll_cleantx`. Actually, we are not
> sure whether this issue appears after this commit.
>
> In our side, this issue is found by chance in version 5.15.
>
> It's hard to find the key commit which cause this issue
> for reason that the reproduction of this scenario is too complex.
I think the problem needs to be more clearly understood, and then it
will be easier to find the fixes tag. At the face of it the patch
makes it look like close() doesn't reliably stop the device, which
is highly odd.
next prev parent reply other threads:[~2025-08-15 15:55 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <CGME20250812090805epcas5p25ba25ca1c5c68bbdf9df27d95ccae4f5@epcas5p2.samsung.com>
2025-08-12 9:08 ` [PATCH net] virtio_net: adjust the execution order of function `virtnet_close` during freeze Junnan Wu
2025-08-14 0:23 ` Jakub Kicinski
2025-08-14 2:36 ` Junnan Wu
2025-08-14 4:01 ` Jason Wang
2025-08-14 5:43 ` Junnan Wu
2025-08-14 6:49 ` Jason Wang
2025-08-14 7:08 ` Junnan Wu
2025-08-15 1:07 ` Jason Wang
2025-08-15 2:23 ` Junnan Wu
2025-08-15 5:38 ` Jason Wang
2025-08-15 6:06 ` Junnan Wu
2025-08-15 15:55 ` Jakub Kicinski [this message]
2025-08-18 1:15 ` Junnan Wu
2025-08-18 15:39 ` Jakub Kicinski
2025-08-19 2:48 ` Jason Wang
2025-08-19 3:33 ` Junnan Wu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250815085503.3034e391@kernel.org \
--to=kuba@kernel.org \
--cc=andrew+netdev@lunn.ch \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=eperezma@redhat.com \
--cc=jasowang@redhat.com \
--cc=junnan01.wu@samsung.com \
--cc=lei19.wang@samsung.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mst@redhat.com \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=q1.huang@samsung.com \
--cc=virtualization@lists.linux.dev \
--cc=xuanzhuo@linux.alibaba.com \
--cc=ying123.xu@samsung.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox