qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v6 09/19] vfio-user: find and init PCI device


From: Jag Raman
Subject: Re: [PATCH v6 09/19] vfio-user: find and init PCI device
Date: Mon, 28 Feb 2022 19:17:11 +0000


> On Feb 21, 2022, at 10:57 AM, Stefan Hajnoczi <stefanha@redhat.com> wrote:
> 
> On Thu, Feb 17, 2022 at 02:48:56AM -0500, Jagannathan Raman wrote:
>> @@ -221,6 +272,14 @@ static void vfu_object_finalize(Object *obj)
>> 
>>     o->device = NULL;
>> 
>> +    if (o->unplug_blocker && o->pci_dev) {
>> +        qdev_del_unplug_blocker(DEVICE(o->pci_dev), o->unplug_blocker);
>> +        error_free(o->unplug_blocker);
>> +        o->unplug_blocker = NULL;
>> +    }
>> +
>> +    o->pci_dev = NULL;
> 
> Since we don't hold a reference to o->pci_dev there is an assumption
> about the order of --object vs --device ->finalize() here. I think it
> will work because softmmu/runstate.c:qemu_cleanup() doesn't unref
> main_system_bus and only --object ->finalize() is called, but this seems
> fragile. We should probably hold a reference to pci_dev and call
> object_unref() on it.

OK, will do.

Thank you!
--
Jag




reply via email to

[Prev in Thread] Current Thread [Next in Thread]