From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:50561) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dS66B-0005FD-8V for qemu-devel@nongnu.org; Mon, 03 Jul 2017 14:29:28 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dS667-000320-07 for qemu-devel@nongnu.org; Mon, 03 Jul 2017 14:29:27 -0400 Received: from mx1.redhat.com ([209.132.183.28]:44172) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1dS666-00031K-Nh for qemu-devel@nongnu.org; Mon, 03 Jul 2017 14:29:22 -0400 Date: Mon, 3 Jul 2017 21:29:18 +0300 From: "Michael S. Tsirkin" Message-ID: <20170703212749-mutt-send-email-mst@kernel.org> References: <1498773362-18675-1-git-send-email-zuban32s@gmail.com> <20170630020622-mutt-send-email-mst@kernel.org> <20170703142711.0a1db036@nial.brq.redhat.com> <20170703193026-mutt-send-email-mst@kernel.org> <8c2c1c27-0b92-3877-3f19-640c82682cc4@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <8c2c1c27-0b92-3877-3f19-640c82682cc4@redhat.com> Subject: Re: [Qemu-devel] [PATCH RFC 0/6] q35: add acpi pci hotplug support List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Marcel Apfelbaum Cc: Igor Mammedov , Aleksandr Bezzubikov , qemu-devel@nongnu.org, pbonzini@redhat.com, rth@twiddle.net, ehabkost@redhat.com On Mon, Jul 03, 2017 at 09:26:33PM +0300, Marcel Apfelbaum wrote: > On 03/07/2017 19:34, Michael S. Tsirkin 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 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. > > Me neither, if Igor is right I am all for shpc hotplug > since Q35 is not supposed to support older guests. > > I remember I succeeded to enable shpc hotplug some time > ago, but only for Linux guests. > > Igor, do you have some spec/doc on newer Windows OSes that confirm > PCI shpc hotplug support? Just try it, easier than poking at specs which aren't always up to date. > > > > 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. > > > > Alexandr, if modern Windows OSes do support shpc, it makes our > job easier, can you please try to enable shpc hotplug? > > Thanks, > Marcel No need to enable or even have a bridge for that at all - set the bit in _OSC, see what does guest enable.