From: Jonah Palmer <jonah.palmer@oracle.com>
To: Eugenio Perez Martin <eperezma@redhat.com>,
Michael Tokarev <mjt@tls.msk.ru>
Cc: Jason Wang <jasowang@redhat.com>,
qemu-devel@nongnu.org, dtatulea@nvidia.com, mcoqueli@redhat.com,
mst@redhat.com, si-wei.liu@oracle.com, qemu-stable@nongnu.org,
leiyang@redhat.com, Ani Sinha <anisinha@redhat.com>
Subject: Re: [PATCH v2 0/2] Move net backend cleanup to NIC cleanup
Date: Mon, 6 Jan 2025 11:03:47 -0500 [thread overview]
Message-ID: <8a944e82-ac02-44d6-88dc-c2444a971377@oracle.com> (raw)
In-Reply-To: <CAJaqyWcgbFx=0LVLG-FFqGbYMrwa5qyWxhPhfqdYY0QAvsRe3Q@mail.gmail.com>
On 12/23/24 11:33 AM, Eugenio Perez Martin wrote:
> On Fri, Dec 20, 2024 at 10:02 PM Michael Tokarev <mjt@tls.msk.ru> wrote:
>>
>> 12.09.2024 19:54, Eugenio Pérez wrote:
>>> Commit a0d7215e33 ("vhost-vdpa: do not cleanup the vdpa/vhost-net
>>> structures if peer nic is present") effectively delayed the backend
>>> cleanup, allowing the frontend or the guest to access it resources as
>>> long as the frontend NIC is still visible to the guest.
>>>
>>> However it does not clean up the resources until the qemu process is
>>> over. This causes an effective leak if the device is deleted with
>>> device_del, as there is no way to close the vdpa device. This makes
>>> impossible to re-add that device to this or other QEMU instances until
>>> the first instance of QEMU is finished.
>>>
>>> Move the cleanup from qemu_cleanup to the NIC deletion.
>>>
>>> v2:
>>> Remove NIC peer also at net_cleanup. vhost-user trust all the
>>> backends are clean before qemu removes char devices.
>>>
>>> This is not a requisite introduced by this commit as
>>> system/runstate.c:qemu_cleanup shows.
>>>
>>> Eugenio Pérez (2):
>>> net: parameterize the removing client from nc list
>>> net: move backend cleanup to NIC cleanup
>>>
>>> net/net.c | 44 ++++++++++++++++++++++++++++++++++----------
>>> net/vhost-vdpa.c | 8 --------
>>> 2 files changed, 34 insertions(+), 18 deletions(-)
>> Hi!
>>
>> It looks like this series has been forgotten. Is it still needed?
>>
>> In order for it to build, a single line in patch 2 needs to be
>> changed (in net_cleanup()), from:
>>
>> + for (int i = 0; i < queues; i++) {
>> + NetClientState *nc = qemu_get_subqueue(nic, i);
>> + qemu_cleanup_net_client(nc->peer, false);
>> + }
>>
>> to
>>
>> + for (int i = 0; i < queues; i++) {
>> + nc = qemu_get_subqueue(nic, i);
>> + qemu_cleanup_net_client(nc->peer, false);
>> + }
>>
>> so there's no variable shadowing anymore.
>>
>> Should this series be resent (a v3), or can this be fixed at apply time?
>>
>
> I guess it is better to resend a v3, so we don't have a compiler
> warning (or error). Jonah, maybe do you want to move this one forward?
>
> Thanks!
>
Just sent out the v3 with the quick fix.
Ugh, and I just realized I forgot to CC Michael Tokarev in the v3
series. My apologies Michael!
Jonah
prev parent reply other threads:[~2025-01-06 16:04 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-09-12 16:54 [PATCH v2 0/2] Move net backend cleanup to NIC cleanup Eugenio Pérez
2024-09-12 16:54 ` [PATCH v2 1/2] net: parameterize the removing client from nc list Eugenio Pérez
2024-09-12 16:54 ` [PATCH v2 2/2] net: move backend cleanup to NIC cleanup Eugenio Pérez
2024-09-18 3:57 ` Si-Wei Liu
2024-10-09 8:34 ` Jason Wang
2024-10-23 4:04 ` Jason Wang
2024-12-20 21:01 ` [PATCH v2 0/2] Move net " Michael Tokarev
2024-12-23 16:33 ` Eugenio Perez Martin
2025-01-06 16:03 ` Jonah Palmer [this message]
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=8a944e82-ac02-44d6-88dc-c2444a971377@oracle.com \
--to=jonah.palmer@oracle.com \
--cc=anisinha@redhat.com \
--cc=dtatulea@nvidia.com \
--cc=eperezma@redhat.com \
--cc=jasowang@redhat.com \
--cc=leiyang@redhat.com \
--cc=mcoqueli@redhat.com \
--cc=mjt@tls.msk.ru \
--cc=mst@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=qemu-stable@nongnu.org \
--cc=si-wei.liu@oracle.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;
as well as URLs for NNTP newsgroup(s).