Add pcihole64 element to root PCI controllers

<controller type='pci' index='0' model='pci-root'>
  <pcihole64 unit='KiB'>1048576</pcihole64>
</controller>

It can be used to adjust (or disable) the size of the 64-bit
PCI hole. The size attribute is in kilobytes (different unit
can be specified on input), but it gets rounded up to
the nearest GB by QEMU.

Disabling it will be needed for guests that crash with the
64-bit PCI hole (like Windows XP), see:
https://bugzilla.redhat.com/show_bug.cgi?id=990418
This commit is contained in:
Ján Tomko committed 2013-08-27 17:42:29 +02:00
1 parent 4582bc2e78
commit 01cda91809
10 files changed
+195 -10

No files matched your search

+9
View File
@@ -2465,6 +2465,15 @@
PCI controllers have an optional <code>model</code> attribute with
possible values <code>pci-root</code>, <code>pcie-root</code>,
<code>pci-bridge</code>, or <code>dmi-to-pci-bridge</code>.
The root controllers (<code>pci-root</code> and <code>pcie-root</code>)
have an optional <code>pcihole64</code> element specifying how big
(in kilobytes, or in the unit specified by <code>pcihole64</code>'s
<code>unit</code> attribute) the 64-bit PCI hole should be. Some guests (like
Windows XP or Windows Server 2003) might crash when QEMU and Seabios
are recent enough to support 64-bit PCI holes, unless this is disabled
(set to 0). <span class="since">Since 1.1.2 (QEMU only)</span>
</p>
<p>
For machine types which provide an implicit PCI bus, the pci-root
controller with index=0 is auto-added and required to use PCI devices.
pci-root has no address.
+24 -8
View File
@@ -1544,14 +1544,30 @@
<attribute name="type">
<value>pci</value>
</attribute>
<attribute name="model">
<choice>
<value>pci-root</value>
<value>pcie-root</value>
<value>pci-bridge</value>
<value>dmi-to-pci-bridge</value>
</choice>
</attribute>
<!-- *-root controllers have an optional element "pcihole64"-->
<choice>
<group>
<attribute name="model">
<choice>
<value>pci-root</value>
<value>pcie-root</value>
</choice>
</attribute>
<optional>
<element name="pcihole64">
<ref name="scaledInteger"/>
</element>
</optional>
</group>
<group>
<attribute name="model">
<choice>
<value>pci-bridge</value>
<value>dmi-to-pci-bridge</value>
</choice>
</attribute>
</group>
</choice>
</group>
<!-- virtio-serial has optional "ports" and "vectors" -->
<group>