qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH RFC 0/6] q35: add acpi pci hotplug support


From: Igor Mammedov
Subject: Re: [Qemu-devel] [PATCH RFC 0/6] q35: add acpi pci hotplug support
Date: Tue, 4 Jul 2017 15:12:55 +0200

On Mon, 3 Jul 2017 19:34:07 +0300
"Michael S. Tsirkin" <address@hidden> wrote:

> On Mon, Jul 03, 2017 at 02:27:11PM +0200, Igor Mammedov wrote:
> > On Fri, 30 Jun 2017 10:25:05 +0300
> > Marcel Apfelbaum <address@hidden> wrote:
> > 
> > [...]  
> > > 
> > > So for the modern systems not supporting PCI ACPI hotplug
> > > we don't need pci-bridges anyway, but for the older ones
> > > the ACPI code of the pci-bridge will be loaded into the
> > > ACPI namespace only if a pci-bridge is actually hot-plugged.  
> > 
> > just note that the set of 'older' guest OSes is limited to
> > one that do not support SHPC (i.e. to EOLed WinXP & co)
> > as for linux and more modern Windows SHPC hotplug should
> > just work without our ACPI hack (which taxes low memory
> > to keep acpi tables for bridges).
> > 
> > So I'm in favor of Michael's suggestion to leave ACPI PCI
> > only in PC machine for old WinXP guests and to keep Q35
> > clean, where linux or newer Windows guests could just
> > use standard SHPC.
> > 
> > [...]  
> 
> I didn't realize windows actually supports SHPC for PCI.
> 
> Do they correctly set _OSC Arg3, bit offset 1?
>       SHPC Native Hot Plug control
>       The OS sets this bit to 1 to request control over PCI/PCI-X Standard 
> Hot-Plug Controller
>       (SHPC) hot plug. If the OS successfully receives control of this 
> feature, it must track and
>       update the status of hot plug slots and handle hot plug events as 
> described in the SHPC
>       Specification.
> I was under impression they only set bit 0.

Alexander,

wrt windows it might be worth to keep in mind
  
https://msdn.microsoft.com/en-us/library/windows/hardware/dn631753(v=vs.85).aspx

as for QEMU,
one should remove masking SHPC support in QEMU ACPI part
 build_q35_osc_method()

hw switch to SHPC method happens for bridges in shpc_init() see 
qbus_set_hotplug_handler()





reply via email to

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