[Qemu-devel] [PATCH v2 0/3] qdev: Hotplug handler chaining

David Hildenbrand posted 3 patches 5 years, 1 month ago
Test asan passed
Test docker-mingw@fedora passed
Test docker-clang@ubuntu failed
Test checkpatch passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20190228122849.4296-1-david@redhat.com
Maintainers: Igor Mammedov <imammedo@redhat.com>, Christian Borntraeger <borntraeger@de.ibm.com>, David Hildenbrand <david@redhat.com>, Halil Pasic <pasic@linux.ibm.com>, Paolo Bonzini <pbonzini@redhat.com>, Richard Henderson <rth@twiddle.net>, David Gibson <david@gibson.dropbear.id.au>, Marcel Apfelbaum <marcel.apfelbaum@gmail.com>, Cornelia Huck <cohuck@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>, Collin Walling <walling@linux.ibm.com>, Eduardo Habkost <ehabkost@redhat.com>
hw/acpi/cpu.c            |  1 +
hw/acpi/memory_hotplug.c |  1 +
hw/acpi/pcihp.c          |  3 ++-
hw/core/qdev.c           | 19 ++++++++++++-------
hw/i386/pc.c             |  5 ++---
hw/pci/pci.c             |  3 ++-
hw/pci/pcie.c            |  3 ++-
hw/pci/shpc.c            |  3 ++-
hw/ppc/spapr.c           |  9 ++++++---
hw/ppc/spapr_pci.c       |  3 ++-
hw/s390x/css-bridge.c    |  2 +-
hw/s390x/s390-pci-bus.c  | 13 ++++++++-----
include/hw/qdev-core.h   | 12 ++++++++++++
qdev-monitor.c           |  9 +++++++--
14 files changed, 60 insertions(+), 26 deletions(-)
[Qemu-devel] [PATCH v2 0/3] qdev: Hotplug handler chaining
Posted by David Hildenbrand 5 years, 1 month ago
Can somebody please pick this up in the near future? (@Eduardo, @MST,
@Paolo, @David - I have no idea who the right person is :) )

The longer we wait, the more likely it is that some stuff gets upstreamed
that conflicts with patch 1 and will break unnoticed. (e.g. spapr PHB
hotplug was just upstreamed and required a fixup, luckily I was CC'ed on
that one).

---

This series implements support for hotplug handler chaining (proposed
by Igor), something that is necessary to turn selected virtio devices into
memory devices. Planned devices inlude virtio-mem and virtio-pmem.

The machine hotplug handler can intercept hotplug handler calls
to properly prepare/teardown the memory device part of a device. Control
is then passed on to the actual bus hotplug handler. So the default hotplug
handler is effectively overwritten to make interception possible.

This series was tested against the - now upstream - device unplug tests
part of "tests/device-plug-test".

v1 -> v2:
- Fixed spapr PHB unplug which was just upstreamed

RFCv2 -> v1:
- "qdev: Let the hotplug_handler_unplug() caller delete the device"
-- Fixed two spapr delete_device() calls I missed. Covered by tests now
-- Handle + add a comment for host pci bridge unplug, for which we have
   code but no user yet.
- virtio-pmem prototype will be handled from this point by Pankaj again,
  so no longer included

David Hildenbrand (2):
  qdev: Let the hotplug_handler_unplug() caller delete the device
  qdev: Provide qdev_get_bus_hotplug_handler()

Igor Mammedov (1):
  qdev: Let machine hotplug handler to override bus hotplug handler

 hw/acpi/cpu.c            |  1 +
 hw/acpi/memory_hotplug.c |  1 +
 hw/acpi/pcihp.c          |  3 ++-
 hw/core/qdev.c           | 19 ++++++++++++-------
 hw/i386/pc.c             |  5 ++---
 hw/pci/pci.c             |  3 ++-
 hw/pci/pcie.c            |  3 ++-
 hw/pci/shpc.c            |  3 ++-
 hw/ppc/spapr.c           |  9 ++++++---
 hw/ppc/spapr_pci.c       |  3 ++-
 hw/s390x/css-bridge.c    |  2 +-
 hw/s390x/s390-pci-bus.c  | 13 ++++++++-----
 include/hw/qdev-core.h   | 12 ++++++++++++
 qdev-monitor.c           |  9 +++++++--
 14 files changed, 60 insertions(+), 26 deletions(-)

-- 
2.17.2


Re: [Qemu-devel] [PATCH v2 0/3] qdev: Hotplug handler chaining
Posted by Eduardo Habkost 5 years, 1 month ago
On Thu, Feb 28, 2019 at 01:28:46PM +0100, David Hildenbrand wrote:
> Can somebody please pick this up in the near future? (@Eduardo, @MST,
> @Paolo, @David - I have no idea who the right person is :) )
> 
> The longer we wait, the more likely it is that some stuff gets upstreamed
> that conflicts with patch 1 and will break unnoticed. (e.g. spapr PHB
> hotplug was just upstreamed and required a fixup, luckily I was CC'ed on
> that one).

I'm queueing it on machine-next, thanks!

-- 
Eduardo

Re: [Qemu-devel] [qemu-s390x] [PATCH v2 0/3] qdev: Hotplug handler chaining
Posted by David Hildenbrand 5 years, 1 month ago
On 28.02.19 18:17, Eduardo Habkost wrote:
> On Thu, Feb 28, 2019 at 01:28:46PM +0100, David Hildenbrand wrote:
>> Can somebody please pick this up in the near future? (@Eduardo, @MST,
>> @Paolo, @David - I have no idea who the right person is :) )
>>
>> The longer we wait, the more likely it is that some stuff gets upstreamed
>> that conflicts with patch 1 and will break unnoticed. (e.g. spapr PHB
>> hotplug was just upstreamed and required a fixup, luckily I was CC'ed on
>> that one).
> 
> I'm queueing it on machine-next, thanks!
> 

Thanks Eduardo! Have a great weekend!

-- 

Thanks,

David / dhildenb