qemu-ppc
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-ppc] [PATCH v3 00/11] pci: hotplug handler reworks


From: David Hildenbrand
Subject: Re: [Qemu-ppc] [PATCH v3 00/11] pci: hotplug handler reworks
Date: Wed, 21 Nov 2018 13:43:05 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.3.0

On 20.11.18 12:04, David Hildenbrand wrote:
> This series reworks some pci hotplug handlers (except for s390, that will
> require more work but is not required for now).
> 
> 1. Route all unplug calls via the hotplug handler when called from the
>    unplug_request handler. This will be required to get multi-stage
>    hotplug handlers running, but also makes sense on its own (just like we
>    already did for some CPU/memory hotplug handlers).
> 
> 2. Introduce some pre_plug handlers where it makes sense already.
> 
> 3. Call the plug/pre_plug handler also for coldplugged devices. Especially
>    pcihp is special as it overwrites hotplug handlers.
> 
> This series will not yet factor out pre_plug/plug/unplug from pci device
> realize/unrealize functions, this will require more work but this
> series is also required first to get it running.
> 
> In my opinion what needs to be done in the future:
> 1. Introduce pre_plug/plug/unplug_request/unplug handlers for all PCI
>    buses
> 2. Move pci realize/unrealize parts to pre_plug/pkug/unplug functions like
>    pci_pre_plug() ...
> 3. Call the pci pre_plug/plug/unplug handlers from the PCI bus hotplug
>    handler at the right spots
> 4. Factor more checks from existing plug() handlers out into pre_plug()
>    (e.g. after the call to pci_pre_plug())
> 
> v2 -> v3:
> - Added "pci: Reuse pci-bridge hotplug handler handlers for pcie-pci-bridge"
> -- Use one handler callback for pcie and !pcie
> - "pci/shpc: perform unplug via the hotplug handler"
> -- Use one handler callback for pcie and !pcie
> -- Replace error check by an assertion
> - Minor description changes.
> - Added Rbs
> 
> v1 -> v2:
> - Added "pci/pcie: rename hotplug handler callbacks"
> - Added "pci/shpc: rename hotplug handler callbacks"
> - Added "s390x/pci: rename hotplug handler callbacks"
> - Dropped "pci/shpc: move hotplug checks to preplug handler"
> -- We will have to factor out stuff into pre_plug() first as described
>    above
> - Renamed and added more details to the "perform unplug via the hotplug
>   handler" patches
> - "pci/pcihp: overwrite hotplug handler recursively from the start"
> -- Perform the overwrite only for cold plugged bridges, to keep the
>    existing behavior
> 
> David Hildenbrand (11):
>   pci/pcie: rename hotplug handler callbacks
>   pci/shpc: rename hotplug handler callbacks
>   s390x/pci: rename hotplug handler callbacks
>   pci/pcie: stop plug/unplug if the slot is locked
>   pci/pcihp: perform check for bus capability in pre_plug handler
>   pci/pcihp: overwrite hotplug handler recursively from the start
>   pci/pcihp: perform unplug via the hotplug handler
>   pci/pcie: perform unplug via the hotplug handler
>   pci: Reuse pci-bridge hotplug handler handlers for pcie-pci-bridge
>   pci/shpc: perform unplug via the hotplug handler
>   spapr_pci: perform unplug via the hotplug handler
> 
>  hw/acpi/pcihp.c                 | 47 ++++++++++++++++++++++++++++-----
>  hw/acpi/piix4.c                 | 39 ++++++++++++++-------------
>  hw/pci-bridge/pci_bridge_dev.c  | 31 ++++++++++++++--------
>  hw/pci-bridge/pcie_pci_bridge.c | 32 +++-------------------
>  hw/pci/pcie.c                   | 46 +++++++++++++++++++++-----------
>  hw/pci/pcie_port.c              |  6 +++--
>  hw/pci/shpc.c                   | 25 ++++++++++++------
>  hw/ppc/spapr_pci.c              | 33 ++++++++++++++---------
>  hw/s390x/s390-pci-bus.c         | 12 ++++-----
>  include/hw/acpi/pcihp.h         |  5 ++++
>  include/hw/pci/pci_bridge.h     |  6 +++++
>  include/hw/pci/pcie.h           | 12 ++++++---
>  include/hw/pci/shpc.h           | 10 ++++---
>  13 files changed, 187 insertions(+), 117 deletions(-)
> 

Seems like everything is reviewed and this is good to go. Anybody fancy
queuing this? (@mst?) Thanks!

-- 

Thanks,

David / dhildenb



reply via email to

[Prev in Thread] Current Thread [Next in Thread]