[libvirt] [PATCH] qemu: Do not fail if detachment succeeded but failed on resetting device

Eric Blake eblake at redhat.com
Wed Jan 18 00:18:12 UTC 2012


On 01/17/2012 01:46 PM, Osier Yang wrote:
> It makes one curious to see error "Failed to detach device" while
> the device is detached successfully, only because of it failed
> on resetting the device. And on the other hand, failed on resetting
> is not the end of world, one could resolve the problem of resetting
> outside of libvirt, and do reattachment then.
> ---
>  src/qemu/qemu_hotplug.c |    4 ++--
>  1 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/src/qemu/qemu_hotplug.c b/src/qemu/qemu_hotplug.c
> index 4b60839..c3167ea 100644
> --- a/src/qemu/qemu_hotplug.c
> +++ b/src/qemu/qemu_hotplug.c
> @@ -2033,11 +2033,11 @@ qemuDomainDetachHostPciDevice(struct qemud_driver *driver,
>                             driver->inactivePciHostdevs) == 0)
>              qemuReattachPciDevice(activePci, driver);
>          else
> -            ret = -1;
> +            VIR_WARN("Device is detached, but failed to reset PCI device");
>          pciFreeDevice(pci);
>          pciFreeDevice(activePci);
>      } else {
> -        ret = -1;
> +        VIR_WARN("Device is detached, but failed to reset PCI device");

I'm not sure about this one.  Failure to reset a PCI device could mean
that a DMA transaction could still be in flight, and be exploited to
expose memory that should not otherwise be visible.

I'd like a second opinion before pushing this.

-- 
Eric Blake   eblake at redhat.com    +1-919-301-3266
Libvirt virtualization library http://libvirt.org

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 620 bytes
Desc: OpenPGP digital signature
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20120117/88c5b5fc/attachment-0001.sig>


More information about the libvir-list mailing list