[libvirt] [PATCH 07/13] qemu: Add hotpluging support for PCI devices on S390 guests

Xiao Feng Ren renxiaof at linux.vnet.ibm.com
Mon May 28 08:26:57 UTC 2018



On 5/25/2018 6:22 PM, Bjoern Walk wrote:
> Cornelia Huck <cohuck at redhat.com> [2018-05-24, 06:25PM +0200]:
>> On Thu, 24 May 2018 14:24:32 +0200
>> Xiao Feng Ren <renxiaof at linux.vnet.ibm.com> wrote:
>>
>>> From: Yi Min Zhao <zyimin at linux.ibm.com>
>>>
>>> This commit adds hotplug support for PCI devices on S390 guests.
>>> There's no need to implement hot unplug for zPCI as QEMU implements
>>> an unplug callback which will unplug both PCI and zPCI device in a
>>> cascaded way.
>>> Currently, the following PCI devices are supported:
>>>    virtio-blk-pci
>>>    virtio-net-pci
>>>    virtio-rng-pci
>>>    virtio-input-host-pci
>>>    virtio-keyboard-pci
>>>    virtio-mouse-pci
>>>    virtio-tablet-pci
>>>    vfio-pci
>>>    Shmem device
>>>    SCSIVhost device
>> Hm, how did you arrive at this list? Is it 'anything that uses msi-x'?
> I guess it's just any device that libvirt actually supports hotplug for,
> with a few exceptions (cf. patch 3 and 6). Not familiar wuth msi-x.

The list should be the devices that support MSI-X and have realized the 
hotplug in qemu,
we support the hotplug for them in the libvirt.  So the list will be 
updated to:

   virtio-blk-pci
   virtio-net-pci
   virtio-input-host-pci
   virtio-keyboard-pci
   virtio-mouse-pci
   virtio-tablet-pci
   vfio-pci
   SCSIVhost device

As the model of Shmem is not support in qemu, the rng device doesn't 
support MSI-X.  So remove them.


In addition, the bug found need to be fixed for the hotplug of tablet, 
in the virDomainDeviceIsUSB()
if ((t == VIR_DOMAIN_DEVICE_DISK &&
          dev->data.disk->bus == VIR_DOMAIN_DISK_BUS_USB) ||
         (t == VIR_DOMAIN_DEVICE_INPUT &&
          dev->data.input->type == VIR_DOMAIN_INPUT_BUS_USB) ||  
---------->dev->data.input->bus == VIR_DOMAIN_INPUT_BUS_USB
         (t == VIR_DOMAIN_DEVICE_HOSTDEV &&
I will send the fix if this bug is agreed.




More information about the libvir-list mailing list