[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 0/6] PCI hotplug improvements
From: |
Gleb Natapov |
Subject: |
Re: [Qemu-devel] [PATCH 0/6] PCI hotplug improvements |
Date: |
Wed, 7 Mar 2012 14:43:03 +0200 |
On Tue, Mar 06, 2012 at 05:13:36PM -0700, Alex Williamson wrote:
> Here's a re-work of the patch that added _STA for the purpose of
> using it as an ack from the guest. Instead of that, add a notifier
> for device access. Once the guest reads from device config space,
> it owns it. Until that point, we can remove it directly. As pointed
> out by MST, this passes test b) below, which the _STA method would not.
> As a bonus, no bios change is required for this. Patches 5 & 6 are
> just cleanups that can be applied independently. Thanks,
>
While I agree with Michael that using _STA as ack is a hack I think
this approach is not less of a hack. It is unlikely that this is how it
work on bare metal and we should follow real HW if possible.
> Alex
>
> Tested using Linux guest:
> a) without acpiphp loaded:
> - device_add (nothing happens)
> - device_del (device removed directly)
How it works on real HW? On non ACPI compliant guest hot plug unplug is
not suppose to work.
> b) without acpiphp loaded:
> - device_add (nothing happens)
> - echo 1 > /sys/bus/pci/rescan (device discovered)
> - device_del (nothing happens, guest owns device)
So guest can block a device from being ever removed?
> - modprobe acpiphp
> - device_del (guest releases device)
> c) with acpiphp loaded:
> - device_add/del behave as expected (automatic add + coordinated removal)
> Tested using WinXP guest:
> - device_add/del behave as expected (automatic add + coordinated removal)
>
> ---
>
> Alex Williamson (6):
> api_piix4: Remove PCI_RMV_BASE write code
> acpi_piix4: Use pci_get/set_byte
> acpi_piix4: Track PCI hotplug status and allow non-ACPI remove path
> pci: Add notifier for device probing
> acpi_piix4: Only allow writes to PCI hotplug eject register
> acpi_piix4: Disallow write to up/down PCI hotplug registers
>
>
> hw/acpi_piix4.c | 175
> ++++++++++++++++++++++++++++---------------------------
> hw/pci_host.c | 19 ++++++
> hw/pci_host.h | 2 +
> 3 files changed, 111 insertions(+), 85 deletions(-)
--
Gleb.
- [Qemu-devel] [PATCH 0/6] PCI hotplug improvements, Alex Williamson, 2012/03/06
- [Qemu-devel] [PATCH 2/6] acpi_piix4: Only allow writes to PCI hotplug eject register, Alex Williamson, 2012/03/06
- [Qemu-devel] [PATCH 1/6] acpi_piix4: Disallow write to up/down PCI hotplug registers, Alex Williamson, 2012/03/06
- [Qemu-devel] [PATCH 3/6] pci: Add notifier for device probing, Alex Williamson, 2012/03/06
- [Qemu-devel] [PATCH 4/6] acpi_piix4: Track PCI hotplug status and allow non-ACPI remove path, Alex Williamson, 2012/03/06
- [Qemu-devel] [PATCH 5/6] acpi_piix4: Use pci_get/set_byte, Alex Williamson, 2012/03/06
- [Qemu-devel] [PATCH 6/6] api_piix4: Remove PCI_RMV_BASE write code, Alex Williamson, 2012/03/06
- Re: [Qemu-devel] [PATCH 0/6] PCI hotplug improvements,
Gleb Natapov <=
- Re: [Qemu-devel] [PATCH 0/6] PCI hotplug improvements, Alex Williamson, 2012/03/07
- Re: [Qemu-devel] [PATCH 0/6] PCI hotplug improvements, Gleb Natapov, 2012/03/07
- Re: [Qemu-devel] [PATCH 0/6] PCI hotplug improvements, Alex Williamson, 2012/03/07
- Re: [Qemu-devel] [PATCH 0/6] PCI hotplug improvements, Gleb Natapov, 2012/03/07
- Re: [Qemu-devel] [PATCH 0/6] PCI hotplug improvements, Alex Williamson, 2012/03/07
- Re: [Qemu-devel] [PATCH 0/6] PCI hotplug improvements, Gleb Natapov, 2012/03/07
- Re: [Qemu-devel] [PATCH 0/6] PCI hotplug improvements, Alex Williamson, 2012/03/07
- Re: [Qemu-devel] [PATCH 0/6] PCI hotplug improvements, Gleb Natapov, 2012/03/08