OSDN Git Service

Revert "PCI: Convert pci_device_hot_add() to QObject"
authorMarkus Armbruster <armbru@redhat.com>
Wed, 12 May 2010 08:53:00 +0000 (10:53 +0200)
committerLuiz Capitulino <lcapitulino@redhat.com>
Wed, 19 May 2010 15:04:08 +0000 (12:04 -0300)
commit6c6a58aee425338bf67ec8faffdcda56b0b82090
tree9409449bda8ef36cf2c891f6cc9e130efdfc6bcf
parentb3e5e3e6854bd3e3d642557b16f6cafb4b2fbe91
Revert "PCI: Convert pci_device_hot_add() to QObject"

Short story: We don't want pci_add in QMP.  Long story follows.

pci_add can do two things:

* Hot plug a PCI NIC.  device_add is more general.

* Hot plug a PCI disk controller, and a drive connected to it.

  The controller is either virtio-blk-pci (if=virtio) or lsi53c895a
  (if=scsi).  With the latter, the drive is optional.  Use drive_add to
  hotplug additional SCSI drives.  Except drive_add is not available in
  QMP.

  device_add is more general for controllers and the guest part of
  drives.  I'm working on a more general alternative for the host part
  of drives.

Why am I proposing to remove pci_add from QMP before its replacement is
ready?  I want it out sooner rather than later, because it isn't fully
functional (errors and drive_add are missing), and we do not plan to
complete the job.  In other words, it's not really usable over QMP now,
and it's not what we want for QMP anyway.  Since we don't want it to be
used over QMP, we should take it out, not leave it around as a trap for
the uninitiated.

Dan Berrange confirmed that libvirt has no need for pci_add & friends
over QMP.

This reverts commit 7a344f7ac7bb651d0556a933ed8060d3a9e5d949.

Conflicts:

hw/pci-hotplug.c
sysemu.h

Signed-off-by: Markus Armbruster <armbru@redhat.com>
hw/pci-hotplug.c
qemu-monitor.hx
sysemu.h