[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v2 00/36] complete conversion to hotplug-handler
From: |
Michael S. Tsirkin |
Subject: |
Re: [Qemu-devel] [PATCH v2 00/36] complete conversion to hotplug-handler API |
Date: |
Mon, 29 Sep 2014 13:42:31 +0300 |
On Mon, Sep 29, 2014 at 12:28:04PM +0200, Igor Mammedov wrote:
> On Mon, 29 Sep 2014 13:16:08 +0300
> "Michael S. Tsirkin" <address@hidden> wrote:
>
> > On Fri, Sep 26, 2014 at 09:28:05AM +0000, Igor Mammedov wrote:
> > > Changes since v1:
> > > * added usb-uas test
> > > * drop hotplug check in bus_add_child()
> > > * make SCSI & USB bus as default HotplugHandler
> > > * fixed dummy HBA hot(un)plug
> > > * fixed hotunplug on s390x
> > > * prevent hotplug of non hotpluggable devices
> >
> > For pci, virtio, acpi bits:
> >
> > Reviewed-by: Michael S. Tsirkin <address@hidden>
> >
> > Which tree should this go in through? afaerber's?
> > In that case, it might be a good idea to Cc him ...
> I'm not sure through which tree it should go,
> it's not QOM or CPU that's why Andreas wasn't even CCed.
>
> Could you take it through your tree?
As usual with cross-tree changes, selecting a tree is not
obvious, but Andreas was handling most core/qdev patches.
So sure, I can merge these if I get his ack.
> >
> > > --
> > >
> > > Series unifies different hotplug mechanisms to a recent
> > > hotplug-handler API and does shallow conversion of
> > > devices that still use legacy qdev hotplug to it dropping
> > > not used after that legacy hotplug path [29/30].
> > > It also relaces SCSI's own way to do hotplug/unplug with
> > > hotplug-handler callbacks leaving it the only method
> > > perform hotplug tasks.
> > > And the last patch [30/30] allows to unplug of BUS-less
> > > devices using hotplug-handler API.
> > >
> > > Converted devices are covered with new hotplug
> > > unit-tests, except of:
> > > s390x-*: I have no idea how or means to test it, but code
> > > is close to virtio, so it's converted using
> > > virtio template
> > > pvscsi: is broken, so no means to test it
> > >
> > > Git tree for testing:
> > > https://github.com/imammedo/qemu/commits/hp_ctrl_conversion_v2
> > >
> > >
> > > Igor Mammedov (36):
> > > test: virtio-scsi: check if hot-plug/unplug works
> > > test: virtio-serial: check if hot-plug/unplug works
> > > test: libqos: add qpci_plug_device_test() and
> > > qpci_unplug_acpi_device_test()
> > > test: virtio-rng: check if hot-plug/unplug works
> > > test: virtio-net: check if hot-plug/unplug works
> > > test: virtio-blk: check if hot-plug/unplug works
> > > test: usb: move uhci port test code to libqos/usb.c
> > > test: usb: add port test to uhci unit test
> > > test: usb: generic usb device hotplug
> > > test: usb: usb-storage hotplug test
> > > test: usb: usb-uas hotplug test
> > > access BusState.allow_hotplug using wraper qbus_is_hotpluggable()
> > > qdev: do not allow to instantiate non hotpluggable device with
> > > device_add
> > > qdev: HotplugHandler: rename unplug callback to unplug_request
> > > qdev: HotplugHandler: provide unplug callback
> > > qdev: add simple/generic unplug callback for HotplugHandler
> > > qdev: add wrapper to set BUS as HotplugHandler
> > > qdev: drop hotplug check from bus_add_child()
> > > target-i386: ICC bus: drop BusState.allow_hotplug
> > > virtio-pci: drop BusState.allow_hotplug
> > > virtio-serial: convert to hotplug-handler API
> > > virtio-mmio: drop useless bus->allow_hotplug = 0
> > > s390x: drop not used allow_hotplug in event-facility
> > > s390x: convert s390-virtio to hotplug handler API
> > > s390x: convert virtio-ccw to hotplug handler API
> > > scsi: set SCSI BUS itself as default HotplugHandler
> > > scsi: convert pvscsi HBA to hotplug handler API
> > > scsi: convert virtio-scsi HBA to hotplug handler API
> > > scsi: cleanup not used anymore SCSIBusInfo{hotplug,hot_unplug}
> > > fields usb-bot: mark device as non hotpluggable
> > > usb-bot: drop not needed "allow_hotplug = 0"
> > > usb-storage: drop not needed "allow_hotplug = 0"
> > > usb: convert usb-ccid to hotplug handler API
> > > usb: convert usb devices to hotplug handler API
> > > qdev: drop legacy hotplug fields/methods
> > > qdev: HotplugHandler: add support for unplugging BUS-less devices
> > >
> > > hw/acpi/piix4.c | 6 +--
> > > hw/char/virtio-serial-bus.c | 20 +++++++---
> > > hw/core/hotplug.c | 11 ++++++
> > > hw/core/qdev.c | 85
> > > ++++++++++++++++++++++++++++--------------
> > > hw/cpu/icc_bus.c | 8 ----
> > > hw/i386/acpi-build.c | 2 +-
> > > hw/isa/lpc_ich9.c | 6 +--
> > > hw/pci-bridge/pci_bridge_dev.c | 2 +-
> > > hw/pci/pci-hotplug-old.c | 4 +-
> > > hw/pci/pcie.c | 4 +-
> > > hw/pci/pcie_port.c | 2 +-
> > > hw/pci/shpc.c | 4 +-
> > > hw/s390x/event-facility.c | 2 -
> > > hw/s390x/s390-virtio-bus.c | 12 +++---
> > > hw/s390x/virtio-ccw.c | 17 +++++----
> > > hw/scsi/scsi-bus.c | 24 ++++--------
> > > hw/scsi/virtio-scsi.c | 30 ++++++++++-----
> > > hw/scsi/vmw_pvscsi.c | 26 +++++++++----
> > > hw/usb/bus.c | 9 ++++-
> > > hw/usb/dev-smartcard-reader.c | 8 +++-
> > > hw/usb/dev-storage.c | 4 +-
> > > hw/virtio/virtio-mmio.c | 17 +--------
> > > hw/virtio/virtio-pci.c | 3 --
> > > include/hw/hotplug.h | 16 +++++++-
> > > include/hw/pci/pcie.h | 4 +-
> > > include/hw/pci/shpc.h | 4 +-
> > > include/hw/qdev-core.h | 17 +++++----
> > > include/hw/scsi/scsi.h | 2 -
> > > qdev-monitor.c | 5 ++-
> > > tests/Makefile | 13 ++++---
> > > tests/libqos/pci-pc.c | 49 ++++++++++++++++++++++++
> > > tests/libqos/pci.h | 3 ++
> > > tests/libqos/usb.c | 71
> > > +++++++++++++++++++++++++++++++++++ tests/libqos/usb.h
> > > | 17 +++++++++ tests/usb-hcd-ehci-test.c | 50
> > > ++++++++++--------------- tests/usb-hcd-ohci-test.c | 10 ++++-
> > > tests/usb-hcd-uhci-test.c | 65
> > > +++++++++++++++++++++++++++++++- tests/usb-hcd-xhci-test.c |
> > > 68 ++++++++++++++++++++++++++++++++- tests/virtio-blk-test.c
> > > | 49 ++++++++++++++++++------ tests/virtio-net-test.c | 10
> > > +++++ tests/virtio-rng-test.c | 10 +++++
> > > tests/virtio-scsi-test.c | 29 ++++++++++++++
> > > tests/virtio-serial-test.c | 27 ++++++++++++++ 43 files
> > > changed, 624 insertions(+), 201 deletions(-) create mode 100644
> > > tests/libqos/usb.c create mode 100644 tests/libqos/usb.h
> > >
> > > --
> > > 1.8.3.1
> >
- Re: [Qemu-devel] [PATCH v2 19/36] target-i386: ICC bus: drop BusState.allow_hotplug, (continued)
- [Qemu-devel] [PATCH v2 28/36] scsi: convert virtio-scsi HBA to hotplug handler API, Igor Mammedov, 2014/09/26
- [Qemu-devel] [PATCH v2 30/36] usb-bot: mark device as non hotpluggable, Igor Mammedov, 2014/09/26
- [Qemu-devel] [PATCH v2 27/36] scsi: convert pvscsi HBA to hotplug handler API, Igor Mammedov, 2014/09/26
- [Qemu-devel] [PATCH v2 29/36] scsi: cleanup not used anymore SCSIBusInfo{hotplug, hot_unplug} fields, Igor Mammedov, 2014/09/26
- Re: [Qemu-devel] [PATCH v2 00/36] complete conversion to hotplug-handler API, Cornelia Huck, 2014/09/26
- Re: [Qemu-devel] [PATCH v2 00/36] complete conversion to hotplug-handler API, Paolo Bonzini, 2014/09/26
- Re: [Qemu-devel] [PATCH v2 00/36] complete conversion to hotplug-handler API, Gerd Hoffmann, 2014/09/29
- Re: [Qemu-devel] [PATCH v2 00/36] complete conversion to hotplug-handler API, Michael S. Tsirkin, 2014/09/29