From 01cda91809751f82ed24ae0eda11ae168d562d7e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=A1n=20Tomko?=
Date: Mon, 12 Aug 2013 13:39:04 +0200
Subject: [PATCH] Add pcihole64 element to root PCI controllers
1048576
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
---
docs/formatdomain.html.in | 9 +++++
docs/schemas/domaincommon.rng | 32 +++++++++++++-----
src/conf/domain_conf.c | 26 +++++++++++++--
src/conf/domain_conf.h | 8 +++++
.../qemuxml2argv-pcihole64-gib.xml | 23 +++++++++++++
.../qemuxml2argv-pcihole64-none.xml | 23 +++++++++++++
.../qemuxml2argv-pcihole64-q35.xml | 33 +++++++++++++++++++
.../qemuxml2argv-pcihole64.xml | 23 +++++++++++++
.../qemuxml2xmlout-pcihole64-gib.xml | 23 +++++++++++++
tests/qemuxml2xmltest.c | 5 +++
10 files changed, 195 insertions(+), 10 deletions(-)
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-pcihole64-gib.xml
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-pcihole64-none.xml
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-pcihole64-q35.xml
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-pcihole64.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-pcihole64-gib.xml
diff --git a/docs/formatdomain.html.in b/docs/formatdomain.html.in
index 7f057ec87d..cce179d12b 100644
--- a/docs/formatdomain.html.in
+++ b/docs/formatdomain.html.in
@@ -2465,6 +2465,15 @@
PCI controllers have an optional model attribute with
possible values pci-root, pcie-root,
pci-bridge, or dmi-to-pci-bridge.
+ The root controllers (pci-root and pcie-root)
+ have an optional pcihole64 element specifying how big
+ (in kilobytes, or in the unit specified by pcihole64's
+ unit 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). Since 1.1.2 (QEMU only)
+