qemu: Add hotpluging support for PCI devices on S390 guests
qemu: Add hotpluging support for PCI devices on S390 guests

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
  SCSIVhost device

Signed-off-by: Yi Min Zhao <5bdf0032410856ea949e1abce934f6d55d9c7ba6@linux.ibm.com>
Reviewed-by: Boris Fiuczynski <2648abdd55bfebf313fd324b464b047e6eea300e@linux.ibm.com>
Reviewed-by: Stefan Zimmermann <3585c61fa02b3a7864ea2efc0bffd1e26decea6c@linux.ibm.com>
Reviewed-by: Bjoern Walk <40545c009452f40d2ae0bbfbd987b332d274d328@linux.ibm.com>
Reviewed-by: Ján Tomko <4cab11cfb98d3c937327354a78eb07dbb6ee2bc6@redhat.com>
Reviewed-by: Andrea Bolognani <3ada0bee826c753786fdbba72243dfba997094cf@redhat.com>

andreabolognani/libvirt,fabianfreyer/libvirt,eskultety/libvirt,andreabolognani/libvirt,jardasgit/libvirt,nertpinx/libvirt,zippy2/libvirt,nertpinx/libvirt,andreabolognani/libvirt,fabianfreyer/libvirt,jardasgit/libvirt,libvirt/libvirt,olafhering/libvirt,zippy2/libvirt,eskultety/libvirt,jfehlig/libvirt,libvirt/libvirt,nertpinx/libvirt,eskultety/libvirt,eskultety/libvirt,crobinso/libvirt,zippy2/libvirt,nertpinx/libvirt,andreabolognani/libvirt,jfehlig/libvirt,fabianfreyer/libvirt,fabianfreyer/libvirt,olafhering/libvirt,andreabolognani/libvirt,jfehlig/libvirt,fabianfreyer/libvirt,olafhering/libvirt,nertpinx/libvirt,libvirt/libvirt,jardasgit/libvirt,libvirt/libvirt,jardasgit/libvirt,zippy2/libvirt,crobinso/libvirt,crobinso/libvirt,olafhering/libvirt,jardasgit/libvirt,jfehlig/libvirt,crobinso/libvirt,eskultety/libvirt