[libvirt] [PATCH] node: Replace variable named 'system' with 'syscap'
by John Ferlan
Changes in commit id 'dec6d9df' caused a compilation failure on a RHEL6
CI build environment. So just replace 'system' with 'syscap' as a name.
cc1: warnings being treated as errors
../../src/conf/node_device_conf.c: In function 'virNodeDevCapSystemParseXML':
../../src/conf/node_device_conf.c:1415: error: declaration of 'system' shadows a global declaration [-Wshadow]
Signed-off-by: John Ferlan <jferlan(a)redhat.com>
---
Pushed as a build breaker
src/conf/node_device_conf.c | 8 ++++----
src/node_device/node_device_udev.c | 8 ++++----
2 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/src/conf/node_device_conf.c b/src/conf/node_device_conf.c
index d60f69d..3565aec 100644
--- a/src/conf/node_device_conf.c
+++ b/src/conf/node_device_conf.c
@@ -1412,10 +1412,10 @@ static int
virNodeDevCapSystemParseXML(xmlXPathContextPtr ctxt,
virNodeDeviceDefPtr def,
xmlNodePtr node,
- virNodeDevCapSystemPtr system)
+ virNodeDevCapSystemPtr syscap)
{
- virNodeDevCapSystemHardwarePtr hardware = &system->hardware;
- virNodeDevCapSystemFirmwarePtr firmware = &system->firmware;
+ virNodeDevCapSystemHardwarePtr hardware = &syscap->hardware;
+ virNodeDevCapSystemFirmwarePtr firmware = &syscap->firmware;
xmlNodePtr orignode;
int ret = -1;
char *tmp;
@@ -1423,7 +1423,7 @@ virNodeDevCapSystemParseXML(xmlXPathContextPtr ctxt,
orignode = ctxt->node;
ctxt->node = node;
- system->product_name = virXPathString("string(./product[1])", ctxt);
+ syscap->product_name = virXPathString("string(./product[1])", ctxt);
hardware->vendor_name = virXPathString("string(./hardware/vendor[1])", ctxt);
hardware->version = virXPathString("string(./hardware/version[1])", ctxt);
diff --git a/src/node_device/node_device_udev.c b/src/node_device/node_device_udev.c
index af44604..bcae444 100644
--- a/src/node_device/node_device_udev.c
+++ b/src/node_device/node_device_udev.c
@@ -1420,12 +1420,12 @@ static void udevEventHandleCallback(int watch ATTRIBUTE_UNUSED,
/* DMI is intel-compatible specific */
#if defined(__x86_64__) || defined(__i386__) || defined(__amd64__)
static void
-udevGetDMIData(virNodeDevCapSystemPtr system)
+udevGetDMIData(virNodeDevCapSystemPtr syscap)
{
struct udev *udev = NULL;
struct udev_device *device = NULL;
- virNodeDevCapSystemHardwarePtr hardware = &system->hardware;
- virNodeDevCapSystemFirmwarePtr firmware = &system->firmware;
+ virNodeDevCapSystemHardwarePtr hardware = &syscap->hardware;
+ virNodeDevCapSystemFirmwarePtr firmware = &syscap->firmware;
udev = udev_monitor_get_udev(DRV_STATE_UDEV_MONITOR(driver));
@@ -1441,7 +1441,7 @@ udevGetDMIData(virNodeDevCapSystemPtr system)
}
if (udevGetStringSysfsAttr(device, "product_name",
- &system->product_name) < 0)
+ &syscap->product_name) < 0)
goto cleanup;
if (udevGetStringSysfsAttr(device, "sys_vendor",
&hardware->vendor_name) < 0)
--
2.9.3
7 years, 9 months
[libvirt] [PATCH v2] Document preferred naming conventions
by Daniel P. Berrange
This documents the preferred conventions for naming files,
structs, enums, typedefs and functions.
Signed-off-by: Daniel P. Berrange <berrange(a)redhat.com>
---
Changed in v2:
- Fix typo
- Add macro docs
- Clarify that $VERB is always last in function/macro names
HACKING | 81 ++++++++++++++++++++++++++++++++++++++++++++
docs/hacking.html.in | 94 ++++++++++++++++++++++++++++++++++++++++++++++++++++
docs/hacking2.xsl | 4 +++
3 files changed, 179 insertions(+)
diff --git a/HACKING b/HACKING
index fff003b..5077304 100644
--- a/HACKING
+++ b/HACKING
@@ -239,6 +239,87 @@ on the subject, on Richard Jones' guide to working with open source projects
<http://people.redhat.com/rjones/how-to-supply-code-to-open-source-projects/>.
+Naming conventions
+==================
+When reading libvirt code, a number of different naming conventions will be
+evident due to various changes in thinking over the course of the project's
+lifetime. The conventions documented below should be followed when creating
+any entirely new files in libvirt. When working on existing files, while it is
+desirable to apply these conventions, keeping a consistent style with existing
+code in that particular file is generally more important. The overall guiding
+rule is that every file, enum, struct, function, and typedef name must have a
+'vir' or 'VIR' prefix. All local scope variable names are exempt, and global
+variables are exempt, unless exported in a header file.
+
+*File names*
+
+File naming varies depending on the subdirectory. The preferred style is to
+have a 'vir' prefix, followed by a name which matches the name of the
+functions / objects inside the file. For example, a file containing an object
+'virHashtable' is stored in files 'virhashtable.c' and 'virhashtable.h'.
+Sometimes, methods which would otherwise be declared 'static' need to be
+exported for use by a test suite. For this purpose a second header file should
+be added with a suffix of 'priv'. e.g. 'virhashtablepriv.h'. Use of
+underscores in file names is discouraged when using the 'vir' prefix style.
+The 'vir' prefix naming applies to src/util, src/rpc and tests/ directories.
+Most other directories do not follow this convention.
+
+
+
+*Enum type & field names*
+
+All enums should have a 'vir' prefix in their typedef name, and each following
+word should have its first letter in uppercase. The enum name should match the
+typedef name with a leading underscore. The enum member names should be in all
+uppercase, and use an underscore to separate each word. The enum member name
+prefix should match the enum typedef name.
+
+ typedef enum _virSocketType virSocketType;
+ enum _virSocketType {
+ VIR_SOCKET_TYPE_IPV4,
+ VIR_SOCKET_TYPE_IPV6,
+ };
+
+
+*Struct type names*
+
+All structs should have a 'vir' prefix in their typedef name, and each
+following word should have its first letter in uppercase. The struct name
+should be the same as the typedef name with a leading underscore. A second
+typedef should be given for a pointer to the struct with a 'Ptr' suffix.
+
+ typedef struct _virHashTable virHashTable;
+ typedef virHashTable *virHashTablePtr;
+ struct _virHashTable {
+ ...
+ };
+
+
+*Function names*
+
+All functions should have a 'vir' prefix in their name, followed by one or
+more words with first letter of each word capitalized. Underscores should not
+be used in function names. If the function is operating on an object, then the
+function name prefix should match the object typedef name. When naming
+functions the verb should always be the last part of the name. For example,
+given an object 'virHashTable', all functions should have a name
+'virHashTable$VERB' e.g. 'virHashTableLookup'. If there is no object
+associated with the function, then its name prefix should match the filename.
+For example, given a filename of 'virfile.h', all functions should have a name
+'virFile$VERB' e.g. 'virFileTouch'.
+
+
+
+*Macro names*
+
+All macros should have a "VIR" prefix in their name, followed by one or more
+uppercase words separated by underscores. The macro argument names should be
+in lowercase. As with functions, the verb should always be the last part of
+the name. For example "VIR_FILE_CLOSE".
+
+
+
+
Code indentation
================
Libvirt's C source code generally adheres to some basic code-formatting
diff --git a/docs/hacking.html.in b/docs/hacking.html.in
index b1bb149..1001f49 100644
--- a/docs/hacking.html.in
+++ b/docs/hacking.html.in
@@ -314,6 +314,100 @@
Richard Jones' guide to working with open source projects</a>.
</p>
+ <h2><a name="naming">Naming conventions</a></h2>
+
+ <p>
+ When reading libvirt code, a number of different naming conventions will
+ be evident due to various changes in thinking over the course of the
+ project's lifetime. The conventions documented below should be followed
+ when creating any entirely new files in libvirt. When working on existing
+ files, while it is desirable to apply these conventions, keeping a
+ consistent style with existing code in that particular file is generally
+ more important. The overall guiding rule is that every file, enum, struct,
+ function, and typedef name must have a 'vir' or 'VIR' prefix. All local
+ scope variable names are exempt, and global variables are exempt, unless
+ exported in a header file.
+ </p>
+
+ <dl>
+ <dt>File names</dt>
+ <dd>
+ <p>
+ File naming varies depending on the subdirectory. The preferred
+ style is to have a 'vir' prefix, followed by a name which matches
+ the name of the functions / objects inside the file. For example,
+ a file containing an object 'virHashtable' is stored in files
+ 'virhashtable.c' and 'virhashtable.h'. Sometimes, methods which
+ would otherwise be declared 'static' need to be exported for use
+ by a test suite. For this purpose a second header file should be
+ added with a suffix of 'priv'. e.g. 'virhashtablepriv.h'. Use of
+ underscores in file names is discouraged when using the 'vir'
+ prefix style. The 'vir' prefix naming applies to src/util,
+ src/rpc and tests/ directories. Most other directories do not
+ follow this convention.
+ </p>
+ </dd>
+ <dt>Enum type & field names</dt>
+ <dd>
+ <p>
+ All enums should have a 'vir' prefix in their typedef name,
+ and each following word should have its first letter in
+ uppercase. The enum name should match the typedef name with
+ a leading underscore. The enum member names should be in all
+ uppercase, and use an underscore to separate each word. The
+ enum member name prefix should match the enum typedef name.
+ </p>
+ <pre>
+ typedef enum _virSocketType virSocketType;
+ enum _virSocketType {
+ VIR_SOCKET_TYPE_IPV4,
+ VIR_SOCKET_TYPE_IPV6,
+ };</pre>
+ </dd>
+ <dt>Struct type names</dt>
+ <dd>
+ <p>
+ All structs should have a 'vir' prefix in their typedef name,
+ and each following word should have its first letter in
+ uppercase. The struct name should be the same as the typedef
+ name with a leading underscore. A second typedef should be
+ given for a pointer to the struct with a 'Ptr' suffix.
+ </p>
+ <pre>
+ typedef struct _virHashTable virHashTable;
+ typedef virHashTable *virHashTablePtr;
+ struct _virHashTable {
+ ...
+ };</pre>
+ </dd>
+ <dt>Function names</dt>
+ <dd>
+ <p>
+ All functions should have a 'vir' prefix in their name,
+ followed by one or more words with first letter of each
+ word capitalized. Underscores should not be used in function
+ names. If the function is operating on an object, then the
+ function name prefix should match the object typedef name.
+ When naming functions the verb should always be the last
+ part of the name. For example, given an object 'virHashTable',
+ all functions should have a name 'virHashTable$VERB'
+ e.g. 'virHashTableLookup'. If there is no object associated
+ with the function, then its name prefix should match the
+ filename. For example, given a filename of 'virfile.h', all
+ functions should have a name 'virFile$VERB' e.g. 'virFileTouch'.
+ </p>
+ </dd>
+ <dt>Macro names</dt>
+ <dd>
+ <p>
+ All macros should have a "VIR" prefix in their name, followed
+ by one or more uppercase words separated by underscores. The
+ macro argument names should be in lowercase. As with functions,
+ the verb should always be the last part of the name. For example
+ "VIR_FILE_CLOSE".
+ </p>
+ </dd>
+ </dl>
<h2><a name="indent">Code indentation</a></h2>
<p>
diff --git a/docs/hacking2.xsl b/docs/hacking2.xsl
index 3595b7e..7e5ac82 100644
--- a/docs/hacking2.xsl
+++ b/docs/hacking2.xsl
@@ -114,6 +114,10 @@ from docs/hacking.html.in!
<xsl:template match="html:li/html:ul/html:li">-- <xsl:apply-templates/><xsl:value-of select="$newline"/><xsl:value-of select="$newline"/>
</xsl:template>
+<xsl:template match="html:dl/html:dt">*<xsl:apply-templates/>*<xsl:value-of select="$newline"/><xsl:value-of select="$newline"/>
+</xsl:template>
+<xsl:template match="html:dl/html:dd"><xsl:apply-templates/><xsl:value-of select="$newline"/><xsl:value-of select="$newline"/>
+</xsl:template>
<!-- add newline before nested <ul> -->
--
2.9.3
7 years, 9 months
[libvirt] [PATCH RESEND] qdev: Make "hotplugged" property read-only
by Eduardo Habkost
The "hotplugged" property is user visible, but it was never meant
to be set by the user. There are probably multiple ways to break
or crash device code by overriding the property. For example, we
recently fixed a crash in rtc_set_memory() related to the
property (commit 26ef65beab852caf2b1ef4976e3473f2d525164d).
There has been some discussion about making management software
use "hotplugged=on" on migration, to indicate devices that were
hotplugged in the migration source. There were other suggestions
to address this, like including the "hotplugged" field in the
migration stream instead of requiring it to be set propertly.
Whatever solution we choose in the future, this patch disables
setting "hotplugged" explicitly in the command-line by now,
because the ability to set the property is unused, untested, and
undocumented.
Signed-off-by: Eduardo Habkost <ehabkost(a)redhat.com>
---
hw/core/qdev.c | 9 +--------
1 file changed, 1 insertion(+), 8 deletions(-)
diff --git a/hw/core/qdev.c b/hw/core/qdev.c
index 06ba02e2a3..800c9ca23f 100644
--- a/hw/core/qdev.c
+++ b/hw/core/qdev.c
@@ -1016,13 +1016,6 @@ static bool device_get_hotplugged(Object *obj, Error **err)
return dev->hotplugged;
}
-static void device_set_hotplugged(Object *obj, bool value, Error **err)
-{
- DeviceState *dev = DEVICE(obj);
-
- dev->hotplugged = value;
-}
-
static void device_initfn(Object *obj)
{
DeviceState *dev = DEVICE(obj);
@@ -1042,7 +1035,7 @@ static void device_initfn(Object *obj)
object_property_add_bool(obj, "hotpluggable",
device_get_hotpluggable, NULL, NULL);
object_property_add_bool(obj, "hotplugged",
- device_get_hotplugged, device_set_hotplugged,
+ device_get_hotplugged, NULL,
&error_abort);
class = object_get_class(OBJECT(dev));
--
2.11.0.259.g40922b1
7 years, 9 months
[libvirt] [PATCH] news: Move host CPU model improvement to 3.2.0
by Jiri Denemark
Signed-off-by: Jiri Denemark <jdenemar(a)redhat.com>
---
Pushed as trivial.
docs/news.xml | 23 +++++++++++------------
1 file changed, 11 insertions(+), 12 deletions(-)
diff --git a/docs/news.xml b/docs/news.xml
index e4b5a9d31..584c9afac 100644
--- a/docs/news.xml
+++ b/docs/news.xml
@@ -15,7 +15,17 @@
<change/>
</section>
<section title="Improvements">
- <change/>
+ <change>
+ <summary>
+ qemu: Detect host CPU model by asking QEMU on x86_64
+ </summary>
+ <description>
+ Previously, libvirt detected the host CPU model using CPUID
+ instruction, which cased libvirt to detect a lot of CPU features
+ that are not supported by QEMU/KVM. Asking QEMU makes sure we
+ don't start it with unsupported features.
+ </description>
+ </change>
</section>
<section title="Bug fixes">
<change/>
@@ -141,17 +151,6 @@
driver with all backends which may pull in too many dependencies.
</description>
</change>
- <change>
- <summary>
- qemu: Detect host CPU model by asking QEMU on x86_64
- </summary>
- <description>
- Previously, libvirt detected the host CPU model using CPUID
- instruction, which cased libvirt to detect a lot of CPU features
- that are not supported by QEMU/KVM. Asking QEMU makes sure we
- don't start it with unsupported features.
- </description>
- </change>
</section>
<section title="Bug fixes">
<change>
--
2.12.0
7 years, 9 months
[libvirt] [PATCH 0/2] cpu_x86: Disable TSX on broken models
by Jiri Denemark
This series applies on top of "qemu: Detect host CPU model by asking
QEMU on x86_64".
https://bugzilla.redhat.com/show_bug.cgi?id=1406791
Jiri Denemark (2):
cpu_x86: Disable TSX on broken models
cputest: Add CPUID data for Haswell with TSX
src/cpu/cpu_x86.c | 72 ++++++++++++++++++++--
tests/cputest.c | 1 +
.../x86_64-cpuid-Core-i5-4670T-guest.xml | 2 +-
.../x86_64-cpuid-Core-i5-4670T-host.xml | 2 +-
.../x86_64-cpuid-Core-i5-4670T-json.xml | 2 +-
.../x86_64-cpuid-Xeon-E7-8890-guest.xml | 32 ++++++++++
.../cputestdata/x86_64-cpuid-Xeon-E7-8890-host.xml | 32 ++++++++++
tests/cputestdata/x86_64-cpuid-Xeon-E7-8890.xml | 37 +++++++++++
8 files changed, 172 insertions(+), 8 deletions(-)
create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-guest.xml
create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-host.xml
create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-E7-8890.xml
--
2.11.1
7 years, 9 months
[libvirt] [PATCH v3 00/28] qemu: Detect host CPU model by asking QEMU on x86_64
by Jiri Denemark
Until now host-model CPU mode tried to enable all CPU features supported
by the host CPU even if QEMU/KVM did not support them. This caused a
number of issues and made host-model quite unreliable. Asking QEMU for
the CPU it can provide and the current host makes host-model much more
robust.
This series fixes the following bugs:
https://bugzilla.redhat.com/show_bug.cgi?id=1018251
https://bugzilla.redhat.com/show_bug.cgi?id=1371617
https://bugzilla.redhat.com/show_bug.cgi?id=1372581
https://bugzilla.redhat.com/show_bug.cgi?id=1404627
https://bugzilla.redhat.com/show_bug.cgi?id=870071
In addition to that, the following bug should be mostly limited to cases
when an unsupported feature is explicitly requested:
https://bugzilla.redhat.com/show_bug.cgi?id=1335534
The series relies on features which are not in QEMU yet, but should be
hopefully close enough to be pushed in 2.9.0. In the meantime, Eduardo's
work/x86-query-cpu-expansion-full branch can be used to play with them.
Version 3:
- a few patches which were ACKed in v2 and didn't have any dependencies
were pushed to make the series a bit smaller
- review comments addressed (see individual patches for more details)
Version 2:
- properly set vendor property in converted test data files
- fix cpu-parse.sh to use "x86_64" prefix for the generated files
Jiri Denemark (28):
qemucapstest: Update test data for QEMU 2.9.0
domaincapstest: Add test data for QEMU 2.9.0
qemu: Refactor virQEMUCapsInitHostCPUModel
qemu: Fix CPU model fallback in domain capabilities
docs: Update description of the host-model CPU mode
qemu: Rename hostCPU/feature element in capabilities cache
qemu: Prepare for more types in qemuMonitorCPUModelInfo
qemu: Store more types in qemuMonitorCPUModelInfo
qemu: Probe "max" CPU model in TCG
cpu_x86: Drop virCPUx86MakeData and use virCPUDataNew
cpu_x86: Make virCPUx86DataClear static
cpu: Rework cpuDataFree
cpu_x86: Make virCPUx86DataAddCPUID work with virCPUDataPtr
cpu_x86: Introduce virCPUx86DataSetSignature
cpu_x86: Introduce virCPUx86DataSetVendor
cpu_x86: Introduce virCPUx86DataAddFeature
qemu: Get host CPU model from QEMU on x86_64
qemu: Use enum for CPU model expansion type
qemu: Use full CPU model expansion on x86
qemu: Make virQEMUCapsInitCPUModel testable
cputest: Rename x86 data files
cputest: Use virArch enum rather then strings
cputest: Switch host CPU data scripts to model expansion
cputest: Convert all json data files to query-cpu-model-expansion
cputest: Test virQEMUCapsInitCPUModel
cputest: Drop obsolete CPU test data files
cputest: Drop .new suffix from CPU test data files
news: Detect host CPU model by asking QEMU on x86_64
docs/formatdomain.html.in | 37 +-
docs/news.xml | 11 +
src/bhyve/bhyve_capabilities.c | 2 +-
src/cpu/cpu.c | 21 +-
src/cpu/cpu.h | 4 +-
src/cpu/cpu_arm.c | 7 -
src/cpu/cpu_ppc64.c | 6 +-
src/cpu/cpu_s390.c | 7 -
src/cpu/cpu_x86.c | 280 ++++---
src/cpu/cpu_x86.h | 13 +-
src/libvirt_private.syms | 7 +-
src/libxl/libxl_capabilities.c | 18 +-
src/qemu/qemu_capabilities.c | 463 ++++++++---
src/qemu/qemu_capabilities.h | 3 +-
src/qemu/qemu_capspriv.h | 13 +-
src/qemu/qemu_command.c | 2 +-
src/qemu/qemu_monitor.c | 29 +-
src/qemu/qemu_monitor.h | 35 +-
src/qemu/qemu_monitor_json.c | 107 ++-
src/qemu/qemu_monitor_json.h | 4 +-
src/qemu/qemu_parse_command.c | 2 +-
src/qemu/qemu_process.c | 7 +-
src/vmware/vmware_conf.c | 2 +-
src/vz/vz_driver.c | 2 +-
tests/cputest.c | 324 ++++----
tests/cputestdata/cpu-convert.py | 249 ++++++
tests/cputestdata/cpu-gather.sh | 39 +-
tests/cputestdata/cpu-parse.sh | 5 +-
tests/cputestdata/x86-cpuid-A10-5800K.json | 77 --
tests/cputestdata/x86-cpuid-Core-i5-2500.json | 88 ---
tests/cputestdata/x86-cpuid-Core-i5-2540M.json | 82 --
tests/cputestdata/x86-cpuid-Core-i5-4670T.json | 77 --
tests/cputestdata/x86-cpuid-Core-i5-6600.json | 82 --
tests/cputestdata/x86-cpuid-Core-i7-2600.json | 77 --
tests/cputestdata/x86-cpuid-Core-i7-3740QM.json | 77 --
tests/cputestdata/x86-cpuid-Core-i7-3770.json | 77 --
tests/cputestdata/x86-cpuid-Core-i7-4600U.json | 82 --
tests/cputestdata/x86-cpuid-Core-i7-5600U-json.xml | 12 -
tests/cputestdata/x86-cpuid-Core-i7-5600U.json | 88 ---
tests/cputestdata/x86-cpuid-Core2-E6850.json | 77 --
tests/cputestdata/x86-cpuid-Opteron-2350.json | 71 --
tests/cputestdata/x86-cpuid-Opteron-6234.json | 88 ---
tests/cputestdata/x86-cpuid-Phenom-B95.json | 77 --
tests/cputestdata/x86-cpuid-Xeon-E3-1245.json | 88 ---
tests/cputestdata/x86-cpuid-Xeon-E5-2630.json | 77 --
tests/cputestdata/x86-cpuid-Xeon-E5-2650.json | 71 --
tests/cputestdata/x86-cpuid-Xeon-E7-4820.json | 77 --
tests/cputestdata/x86-cpuid-Xeon-W3520.json | 77 --
...ack.xml => x86_64-Haswell-noTSX-nofallback.xml} | 0
...-Haswell-noTSX.xml => x86_64-Haswell-noTSX.xml} | 0
.../{x86-Haswell.xml => x86_64-Haswell.xml} | 0
...e-1-result.xml => x86_64-baseline-1-result.xml} | 0
.../{x86-baseline-1.xml => x86_64-baseline-1.xml} | 0
...e-2-result.xml => x86_64-baseline-2-result.xml} | 0
.../{x86-baseline-2.xml => x86_64-baseline-2.xml} | 0
...expanded.xml => x86_64-baseline-3-expanded.xml} | 0
...e-3-result.xml => x86_64-baseline-3-result.xml} | 0
.../{x86-baseline-3.xml => x86_64-baseline-3.xml} | 0
...expanded.xml => x86_64-baseline-4-expanded.xml} | 0
...e-4-result.xml => x86_64-baseline-4-result.xml} | 0
.../{x86-baseline-4.xml => x86_64-baseline-4.xml} | 0
...expanded.xml => x86_64-baseline-5-expanded.xml} | 0
...e-5-result.xml => x86_64-baseline-5-result.xml} | 0
.../{x86-baseline-5.xml => x86_64-baseline-5.xml} | 0
...atable.xml => x86_64-baseline-6-migratable.xml} | 0
...e-6-result.xml => x86_64-baseline-6-result.xml} | 0
.../{x86-baseline-6.xml => x86_64-baseline-6.xml} | 0
...e-7-result.xml => x86_64-baseline-7-result.xml} | 0
.../{x86-baseline-7.xml => x86_64-baseline-7.xml} | 0
...e-8-result.xml => x86_64-baseline-8-result.xml} | 0
.../{x86-baseline-8.xml => x86_64-baseline-8.xml} | 0
...ml => x86_64-baseline-incompatible-vendors.xml} | 0
...lt.xml => x86_64-baseline-no-vendor-result.xml} | 0
...no-vendor.xml => x86_64-baseline-no-vendor.xml} | 0
...xml => x86_64-baseline-some-vendors-result.xml} | 0
...endors.xml => x86_64-baseline-some-vendors.xml} | 0
...-bogus-feature.xml => x86_64-bogus-feature.xml} | 0
...{x86-bogus-model.xml => x86_64-bogus-model.xml} | 0
...86-bogus-vendor.xml => x86_64-bogus-vendor.xml} | 0
...-guest.xml => x86_64-cpuid-A10-5800K-guest.xml} | 0
...0K-host.xml => x86_64-cpuid-A10-5800K-host.xml} | 0
...0K-json.xml => x86_64-cpuid-A10-5800K-json.xml} | 1 +
tests/cputestdata/x86_64-cpuid-A10-5800K.json | 203 +++++
...id-A10-5800K.xml => x86_64-cpuid-A10-5800K.xml} | 0
...-guest.xml => x86_64-cpuid-Atom-D510-guest.xml} | 0
...10-host.xml => x86_64-cpuid-Atom-D510-host.xml} | 0
...id-Atom-D510.xml => x86_64-cpuid-Atom-D510.xml} | 0
...-guest.xml => x86_64-cpuid-Atom-N450-guest.xml} | 0
...50-host.xml => x86_64-cpuid-Atom-N450-host.xml} | 0
...id-Atom-N450.xml => x86_64-cpuid-Atom-N450.xml} | 0
...est.xml => x86_64-cpuid-Core-i5-2500-guest.xml} | 0
...host.xml => x86_64-cpuid-Core-i5-2500-host.xml} | 0
...json.xml => x86_64-cpuid-Core-i5-2500-json.xml} | 1 +
tests/cputestdata/x86_64-cpuid-Core-i5-2500.json | 203 +++++
...e-i5-2500.xml => x86_64-cpuid-Core-i5-2500.xml} | 0
...st.xml => x86_64-cpuid-Core-i5-2540M-guest.xml} | 0
...ost.xml => x86_64-cpuid-Core-i5-2540M-host.xml} | 0
...son.xml => x86_64-cpuid-Core-i5-2540M-json.xml} | 1 +
tests/cputestdata/x86_64-cpuid-Core-i5-2540M.json | 203 +++++
...i5-2540M.xml => x86_64-cpuid-Core-i5-2540M.xml} | 0
...st.xml => x86_64-cpuid-Core-i5-4670T-guest.xml} | 0
...ost.xml => x86_64-cpuid-Core-i5-4670T-host.xml} | 0
...son.xml => x86_64-cpuid-Core-i5-4670T-json.xml} | 1 +
tests/cputestdata/x86_64-cpuid-Core-i5-4670T.json | 203 +++++
...i5-4670T.xml => x86_64-cpuid-Core-i5-4670T.xml} | 0
...est.xml => x86_64-cpuid-Core-i5-6600-guest.xml} | 0
...host.xml => x86_64-cpuid-Core-i5-6600-host.xml} | 0
...json.xml => x86_64-cpuid-Core-i5-6600-json.xml} | 1 +
tests/cputestdata/x86_64-cpuid-Core-i5-6600.json | 203 +++++
...e-i5-6600.xml => x86_64-cpuid-Core-i5-6600.xml} | 0
...est.xml => x86_64-cpuid-Core-i7-2600-guest.xml} | 0
...host.xml => x86_64-cpuid-Core-i7-2600-host.xml} | 0
...json.xml => x86_64-cpuid-Core-i7-2600-json.xml} | 1 +
tests/cputestdata/x86_64-cpuid-Core-i7-2600.json | 203 +++++
...e-i7-2600.xml => x86_64-cpuid-Core-i7-2600.xml} | 0
...st.xml => x86_64-cpuid-Core-i7-3520M-guest.xml} | 0
...ost.xml => x86_64-cpuid-Core-i7-3520M-host.xml} | 0
...i7-3520M.xml => x86_64-cpuid-Core-i7-3520M.xml} | 0
...t.xml => x86_64-cpuid-Core-i7-3740QM-guest.xml} | 0
...st.xml => x86_64-cpuid-Core-i7-3740QM-host.xml} | 0
...on.xml => x86_64-cpuid-Core-i7-3740QM-json.xml} | 1 +
tests/cputestdata/x86_64-cpuid-Core-i7-3740QM.json | 203 +++++
...-3740QM.xml => x86_64-cpuid-Core-i7-3740QM.xml} | 0
...est.xml => x86_64-cpuid-Core-i7-3770-guest.xml} | 0
...host.xml => x86_64-cpuid-Core-i7-3770-host.xml} | 0
...json.xml => x86_64-cpuid-Core-i7-3770-json.xml} | 1 +
tests/cputestdata/x86_64-cpuid-Core-i7-3770.json | 203 +++++
...e-i7-3770.xml => x86_64-cpuid-Core-i7-3770.xml} | 0
...st.xml => x86_64-cpuid-Core-i7-4600U-guest.xml} | 0
...ost.xml => x86_64-cpuid-Core-i7-4600U-host.xml} | 0
...son.xml => x86_64-cpuid-Core-i7-4600U-json.xml} | 1 +
tests/cputestdata/x86_64-cpuid-Core-i7-4600U.json | 203 +++++
...i7-4600U.xml => x86_64-cpuid-Core-i7-4600U.xml} | 0
...st.xml => x86_64-cpuid-Core-i7-5600U-guest.xml} | 0
...ost.xml => x86_64-cpuid-Core-i7-5600U-host.xml} | 0
.../x86_64-cpuid-Core-i7-5600U-json.xml | 16 +
tests/cputestdata/x86_64-cpuid-Core-i7-5600U.json | 203 +++++
...i7-5600U.xml => x86_64-cpuid-Core-i7-5600U.xml} | 0
...uest.xml => x86_64-cpuid-Core2-E6850-guest.xml} | 0
...-host.xml => x86_64-cpuid-Core2-E6850-host.xml} | 0
...-json.xml => x86_64-cpuid-Core2-E6850-json.xml} | 5 +-
tests/cputestdata/x86_64-cpuid-Core2-E6850.json | 203 +++++
...ore2-E6850.xml => x86_64-cpuid-Core2-E6850.xml} | 0
...uest.xml => x86_64-cpuid-Core2-Q9500-guest.xml} | 0
...-host.xml => x86_64-cpuid-Core2-Q9500-host.xml} | 0
...ore2-Q9500.xml => x86_64-cpuid-Core2-Q9500.xml} | 0
...50-guest.xml => x86_64-cpuid-FX-8150-guest.xml} | 0
...8150-host.xml => x86_64-cpuid-FX-8150-host.xml} | 0
...-cpuid-FX-8150.xml => x86_64-cpuid-FX-8150.xml} | 0
...est.xml => x86_64-cpuid-Opteron-1352-guest.xml} | 0
...host.xml => x86_64-cpuid-Opteron-1352-host.xml} | 0
...eron-1352.xml => x86_64-cpuid-Opteron-1352.xml} | 0
...est.xml => x86_64-cpuid-Opteron-2350-guest.xml} | 0
...host.xml => x86_64-cpuid-Opteron-2350-host.xml} | 0
...json.xml => x86_64-cpuid-Opteron-2350-json.xml} | 1 +
tests/cputestdata/x86_64-cpuid-Opteron-2350.json | 203 +++++
...eron-2350.xml => x86_64-cpuid-Opteron-2350.xml} | 0
...est.xml => x86_64-cpuid-Opteron-6234-guest.xml} | 0
...host.xml => x86_64-cpuid-Opteron-6234-host.xml} | 0
...json.xml => x86_64-cpuid-Opteron-6234-json.xml} | 1 +
tests/cputestdata/x86_64-cpuid-Opteron-6234.json | 203 +++++
...eron-6234.xml => x86_64-cpuid-Opteron-6234.xml} | 0
...est.xml => x86_64-cpuid-Opteron-6282-guest.xml} | 0
...host.xml => x86_64-cpuid-Opteron-6282-host.xml} | 0
...eron-6282.xml => x86_64-cpuid-Opteron-6282.xml} | 0
...st.xml => x86_64-cpuid-Pentium-P6100-guest.xml} | 0
...ost.xml => x86_64-cpuid-Pentium-P6100-host.xml} | 0
...um-P6100.xml => x86_64-cpuid-Pentium-P6100.xml} | 0
...guest.xml => x86_64-cpuid-Phenom-B95-guest.xml} | 0
...5-host.xml => x86_64-cpuid-Phenom-B95-host.xml} | 0
...5-json.xml => x86_64-cpuid-Phenom-B95-json.xml} | 1 +
tests/cputestdata/x86_64-cpuid-Phenom-B95.json | 203 +++++
...-Phenom-B95.xml => x86_64-cpuid-Phenom-B95.xml} | 0
...-guest.xml => x86_64-cpuid-Xeon-5110-guest.xml} | 0
...10-host.xml => x86_64-cpuid-Xeon-5110-host.xml} | 0
...id-Xeon-5110.xml => x86_64-cpuid-Xeon-5110.xml} | 0
...est.xml => x86_64-cpuid-Xeon-E3-1245-guest.xml} | 0
...host.xml => x86_64-cpuid-Xeon-E3-1245-host.xml} | 0
...json.xml => x86_64-cpuid-Xeon-E3-1245-json.xml} | 1 +
tests/cputestdata/x86_64-cpuid-Xeon-E3-1245.json | 203 +++++
...n-E3-1245.xml => x86_64-cpuid-Xeon-E3-1245.xml} | 0
...est.xml => x86_64-cpuid-Xeon-E5-2630-guest.xml} | 0
...host.xml => x86_64-cpuid-Xeon-E5-2630-host.xml} | 0
...json.xml => x86_64-cpuid-Xeon-E5-2630-json.xml} | 1 +
tests/cputestdata/x86_64-cpuid-Xeon-E5-2630.json | 203 +++++
...n-E5-2630.xml => x86_64-cpuid-Xeon-E5-2630.xml} | 0
...est.xml => x86_64-cpuid-Xeon-E5-2650-guest.xml} | 0
...host.xml => x86_64-cpuid-Xeon-E5-2650-host.xml} | 0
...json.xml => x86_64-cpuid-Xeon-E5-2650-json.xml} | 1 +
tests/cputestdata/x86_64-cpuid-Xeon-E5-2650.json | 203 +++++
...n-E5-2650.xml => x86_64-cpuid-Xeon-E5-2650.xml} | 0
...est.xml => x86_64-cpuid-Xeon-E7-4820-guest.xml} | 0
...host.xml => x86_64-cpuid-Xeon-E7-4820-host.xml} | 0
...json.xml => x86_64-cpuid-Xeon-E7-4820-json.xml} | 1 +
tests/cputestdata/x86_64-cpuid-Xeon-E7-4820.json | 203 +++++
...n-E7-4820.xml => x86_64-cpuid-Xeon-E7-4820.xml} | 0
...guest.xml => x86_64-cpuid-Xeon-W3520-guest.xml} | 0
...0-host.xml => x86_64-cpuid-Xeon-W3520-host.xml} | 0
...0-json.xml => x86_64-cpuid-Xeon-W3520-json.xml} | 1 +
tests/cputestdata/x86_64-cpuid-Xeon-W3520.json | 203 +++++
...-Xeon-W3520.xml => x86_64-cpuid-Xeon-W3520.xml} | 0
...guest.xml => x86_64-cpuid-Xeon-X5460-guest.xml} | 0
...0-host.xml => x86_64-cpuid-Xeon-X5460-host.xml} | 0
...-Xeon-X5460.xml => x86_64-cpuid-Xeon-X5460.xml} | 0
...le-extra.xml => x86_64-exact-disable-extra.xml} | 0
...-exact-disable.xml => x86_64-exact-disable.xml} | 0
...xact-disable2.xml => x86_64-exact-disable2.xml} | 0
...bid-extra.xml => x86_64-exact-forbid-extra.xml} | 0
...86-exact-forbid.xml => x86_64-exact-forbid.xml} | 0
...-Haswell.xml => x86_64-exact-force-Haswell.xml} | 0
...{x86-exact-force.xml => x86_64-exact-force.xml} | 0
...re-extra.xml => x86_64-exact-require-extra.xml} | 0
...-exact-require.xml => x86_64-exact-require.xml} | 0
.../{x86-exact.xml => x86_64-exact.xml} | 0
...-nofallback.xml => x86_64-guest-nofallback.xml} | 0
.../{x86-guest.xml => x86_64-guest.xml} | 0
...t.xml => x86_64-host+guest,model486-result.xml} | 0
...ult.xml => x86_64-host+guest,models-result.xml} | 0
...est-result.xml => x86_64-host+guest-result.xml} | 0
.../{x86-host+guest.xml => x86_64-host+guest.xml} | 0
... x86_64-host+host+host-model,models-result.xml} | 0
...k.xml => x86_64-host+host-model-nofallback.xml} | 0
...t+host-model.xml => x86_64-host+host-model.xml} | 0
...l => x86_64-host+host-passthrough-features.xml} | 0
...hrough.xml => x86_64-host+host-passthrough.xml} | 0
.../{x86-host+min.xml => x86_64-host+min.xml} | 0
...ult.xml => x86_64-host+penryn-force-result.xml} | 0
...-host+pentium3.xml => x86_64-host+pentium3.xml} | 0
...l => x86_64-host+strict-force-extra-result.xml} | 0
...-host-Haswell-noTSX+Haswell,haswell-result.xml} | 0
...Haswell-noTSX+Haswell-noTSX,haswell-result.xml} | 0
...64-host-Haswell-noTSX+Haswell-noTSX-result.xml} | 0
...ell-noTSX.xml => x86_64-host-Haswell-noTSX.xml} | 0
...SandyBridge.xml => x86_64-host-SandyBridge.xml} | 0
...-host-amd-fake.xml => x86_64-host-amd-fake.xml} | 0
.../{x86-host-amd.xml => x86_64-host-amd.xml} | 0
....xml => x86_64-host-better+pentium3-result.xml} | 0
...{x86-host-better.xml => x86_64-host-better.xml} | 0
...incomp-arch.xml => x86_64-host-incomp-arch.xml} | 0
...model.xml => x86_64-host-invtsc+host-model.xml} | 0
...{x86-host-invtsc.xml => x86_64-host-invtsc.xml} | 0
...llback.xml => x86_64-host-model-nofallback.xml} | 0
.../{x86-host-model.xml => x86_64-host-model.xml} | 0
...ost-no-vendor.xml => x86_64-host-no-vendor.xml} | 0
...es.xml => x86_64-host-passthrough-features.xml} | 0
...passthrough.xml => x86_64-host-passthrough.xml} | 0
...sult.xml => x86_64-host-worse+guest-result.xml} | 0
.../{x86-host-worse.xml => x86_64-host-worse.xml} | 0
.../cputestdata/{x86-host.xml => x86_64-host.xml} | 0
tests/cputestdata/{x86-min.xml => x86_64-min.xml} | 0
...86-penryn-force.xml => x86_64-penryn-force.xml} | 0
...86-pentium3-amd.xml => x86_64-pentium3-amd.xml} | 0
.../{x86-pentium3.xml => x86_64-pentium3.xml} | 0
...trict-disable.xml => x86_64-strict-disable.xml} | 0
...rce-extra.xml => x86_64-strict-force-extra.xml} | 0
...{x86-strict-full.xml => x86_64-strict-full.xml} | 0
.../{x86-strict.xml => x86_64-strict.xml} | 0
tests/domaincapsschemadata/qemu_2.8.0.s390x.xml | 2 +-
.../domaincapsschemadata/qemu_2.9.0-tcg.x86_64.xml | 145 ++++
tests/domaincapsschemadata/qemu_2.9.0.x86_64.xml | 124 +++
tests/domaincapstest.c | 8 +
.../qemucapabilitiesdata/caps_2.8.0.s390x.replies | 8 +
tests/qemucapabilitiesdata/caps_2.8.0.s390x.xml | 32 +-
.../qemucapabilitiesdata/caps_2.9.0.x86_64.replies | 879 ++++++++++++++++++++-
tests/qemucapabilitiesdata/caps_2.9.0.x86_64.xml | 465 ++++++++++-
tests/qemumonitorjsontest.c | 4 +-
tests/qemuxml2argvtest.c | 3 +-
267 files changed, 6731 insertions(+), 2055 deletions(-)
create mode 100755 tests/cputestdata/cpu-convert.py
delete mode 100644 tests/cputestdata/x86-cpuid-A10-5800K.json
delete mode 100644 tests/cputestdata/x86-cpuid-Core-i5-2500.json
delete mode 100644 tests/cputestdata/x86-cpuid-Core-i5-2540M.json
delete mode 100644 tests/cputestdata/x86-cpuid-Core-i5-4670T.json
delete mode 100644 tests/cputestdata/x86-cpuid-Core-i5-6600.json
delete mode 100644 tests/cputestdata/x86-cpuid-Core-i7-2600.json
delete mode 100644 tests/cputestdata/x86-cpuid-Core-i7-3740QM.json
delete mode 100644 tests/cputestdata/x86-cpuid-Core-i7-3770.json
delete mode 100644 tests/cputestdata/x86-cpuid-Core-i7-4600U.json
delete mode 100644 tests/cputestdata/x86-cpuid-Core-i7-5600U-json.xml
delete mode 100644 tests/cputestdata/x86-cpuid-Core-i7-5600U.json
delete mode 100644 tests/cputestdata/x86-cpuid-Core2-E6850.json
delete mode 100644 tests/cputestdata/x86-cpuid-Opteron-2350.json
delete mode 100644 tests/cputestdata/x86-cpuid-Opteron-6234.json
delete mode 100644 tests/cputestdata/x86-cpuid-Phenom-B95.json
delete mode 100644 tests/cputestdata/x86-cpuid-Xeon-E3-1245.json
delete mode 100644 tests/cputestdata/x86-cpuid-Xeon-E5-2630.json
delete mode 100644 tests/cputestdata/x86-cpuid-Xeon-E5-2650.json
delete mode 100644 tests/cputestdata/x86-cpuid-Xeon-E7-4820.json
delete mode 100644 tests/cputestdata/x86-cpuid-Xeon-W3520.json
rename tests/cputestdata/{x86-Haswell-noTSX-nofallback.xml => x86_64-Haswell-noTSX-nofallback.xml} (100%)
rename tests/cputestdata/{x86-Haswell-noTSX.xml => x86_64-Haswell-noTSX.xml} (100%)
rename tests/cputestdata/{x86-Haswell.xml => x86_64-Haswell.xml} (100%)
rename tests/cputestdata/{x86-baseline-1-result.xml => x86_64-baseline-1-result.xml} (100%)
rename tests/cputestdata/{x86-baseline-1.xml => x86_64-baseline-1.xml} (100%)
rename tests/cputestdata/{x86-baseline-2-result.xml => x86_64-baseline-2-result.xml} (100%)
rename tests/cputestdata/{x86-baseline-2.xml => x86_64-baseline-2.xml} (100%)
rename tests/cputestdata/{x86-baseline-3-expanded.xml => x86_64-baseline-3-expanded.xml} (100%)
rename tests/cputestdata/{x86-baseline-3-result.xml => x86_64-baseline-3-result.xml} (100%)
rename tests/cputestdata/{x86-baseline-3.xml => x86_64-baseline-3.xml} (100%)
rename tests/cputestdata/{x86-baseline-4-expanded.xml => x86_64-baseline-4-expanded.xml} (100%)
rename tests/cputestdata/{x86-baseline-4-result.xml => x86_64-baseline-4-result.xml} (100%)
rename tests/cputestdata/{x86-baseline-4.xml => x86_64-baseline-4.xml} (100%)
rename tests/cputestdata/{x86-baseline-5-expanded.xml => x86_64-baseline-5-expanded.xml} (100%)
rename tests/cputestdata/{x86-baseline-5-result.xml => x86_64-baseline-5-result.xml} (100%)
rename tests/cputestdata/{x86-baseline-5.xml => x86_64-baseline-5.xml} (100%)
rename tests/cputestdata/{x86-baseline-6-migratable.xml => x86_64-baseline-6-migratable.xml} (100%)
rename tests/cputestdata/{x86-baseline-6-result.xml => x86_64-baseline-6-result.xml} (100%)
rename tests/cputestdata/{x86-baseline-6.xml => x86_64-baseline-6.xml} (100%)
rename tests/cputestdata/{x86-baseline-7-result.xml => x86_64-baseline-7-result.xml} (100%)
rename tests/cputestdata/{x86-baseline-7.xml => x86_64-baseline-7.xml} (100%)
rename tests/cputestdata/{x86-baseline-8-result.xml => x86_64-baseline-8-result.xml} (100%)
rename tests/cputestdata/{x86-baseline-8.xml => x86_64-baseline-8.xml} (100%)
rename tests/cputestdata/{x86-baseline-incompatible-vendors.xml => x86_64-baseline-incompatible-vendors.xml} (100%)
rename tests/cputestdata/{x86-baseline-no-vendor-result.xml => x86_64-baseline-no-vendor-result.xml} (100%)
rename tests/cputestdata/{x86-baseline-no-vendor.xml => x86_64-baseline-no-vendor.xml} (100%)
rename tests/cputestdata/{x86-baseline-some-vendors-result.xml => x86_64-baseline-some-vendors-result.xml} (100%)
rename tests/cputestdata/{x86-baseline-some-vendors.xml => x86_64-baseline-some-vendors.xml} (100%)
rename tests/cputestdata/{x86-bogus-feature.xml => x86_64-bogus-feature.xml} (100%)
rename tests/cputestdata/{x86-bogus-model.xml => x86_64-bogus-model.xml} (100%)
rename tests/cputestdata/{x86-bogus-vendor.xml => x86_64-bogus-vendor.xml} (100%)
rename tests/cputestdata/{x86-cpuid-A10-5800K-guest.xml => x86_64-cpuid-A10-5800K-guest.xml} (100%)
rename tests/cputestdata/{x86-cpuid-A10-5800K-host.xml => x86_64-cpuid-A10-5800K-host.xml} (100%)
rename tests/cputestdata/{x86-cpuid-A10-5800K-json.xml => x86_64-cpuid-A10-5800K-json.xml} (96%)
create mode 100644 tests/cputestdata/x86_64-cpuid-A10-5800K.json
rename tests/cputestdata/{x86-cpuid-A10-5800K.xml => x86_64-cpuid-A10-5800K.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Atom-D510-guest.xml => x86_64-cpuid-Atom-D510-guest.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Atom-D510-host.xml => x86_64-cpuid-Atom-D510-host.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Atom-D510.xml => x86_64-cpuid-Atom-D510.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Atom-N450-guest.xml => x86_64-cpuid-Atom-N450-guest.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Atom-N450-host.xml => x86_64-cpuid-Atom-N450-host.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Atom-N450.xml => x86_64-cpuid-Atom-N450.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Core-i5-2500-guest.xml => x86_64-cpuid-Core-i5-2500-guest.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Core-i5-2500-host.xml => x86_64-cpuid-Core-i5-2500-host.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Core-i5-2540M-json.xml => x86_64-cpuid-Core-i5-2500-json.xml} (94%)
create mode 100644 tests/cputestdata/x86_64-cpuid-Core-i5-2500.json
rename tests/cputestdata/{x86-cpuid-Core-i5-2500.xml => x86_64-cpuid-Core-i5-2500.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Core-i5-2540M-guest.xml => x86_64-cpuid-Core-i5-2540M-guest.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Core-i5-2540M-host.xml => x86_64-cpuid-Core-i5-2540M-host.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Core-i5-2500-json.xml => x86_64-cpuid-Core-i5-2540M-json.xml} (94%)
create mode 100644 tests/cputestdata/x86_64-cpuid-Core-i5-2540M.json
rename tests/cputestdata/{x86-cpuid-Core-i5-2540M.xml => x86_64-cpuid-Core-i5-2540M.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Core-i5-4670T-guest.xml => x86_64-cpuid-Core-i5-4670T-guest.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Core-i5-4670T-host.xml => x86_64-cpuid-Core-i5-4670T-host.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Core-i5-4670T-json.xml => x86_64-cpuid-Core-i5-4670T-json.xml} (95%)
create mode 100644 tests/cputestdata/x86_64-cpuid-Core-i5-4670T.json
rename tests/cputestdata/{x86-cpuid-Core-i5-4670T.xml => x86_64-cpuid-Core-i5-4670T.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Core-i5-6600-guest.xml => x86_64-cpuid-Core-i5-6600-guest.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Core-i5-6600-host.xml => x86_64-cpuid-Core-i5-6600-host.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Core-i5-6600-json.xml => x86_64-cpuid-Core-i5-6600-json.xml} (93%)
create mode 100644 tests/cputestdata/x86_64-cpuid-Core-i5-6600.json
rename tests/cputestdata/{x86-cpuid-Core-i5-6600.xml => x86_64-cpuid-Core-i5-6600.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Core-i7-2600-guest.xml => x86_64-cpuid-Core-i7-2600-guest.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Core-i7-2600-host.xml => x86_64-cpuid-Core-i7-2600-host.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Core-i7-2600-json.xml => x86_64-cpuid-Core-i7-2600-json.xml} (93%)
create mode 100644 tests/cputestdata/x86_64-cpuid-Core-i7-2600.json
rename tests/cputestdata/{x86-cpuid-Core-i7-2600.xml => x86_64-cpuid-Core-i7-2600.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Core-i7-3520M-guest.xml => x86_64-cpuid-Core-i7-3520M-guest.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Core-i7-3520M-host.xml => x86_64-cpuid-Core-i7-3520M-host.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Core-i7-3520M.xml => x86_64-cpuid-Core-i7-3520M.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Core-i7-3740QM-guest.xml => x86_64-cpuid-Core-i7-3740QM-guest.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Core-i7-3740QM-host.xml => x86_64-cpuid-Core-i7-3740QM-host.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Core-i7-3740QM-json.xml => x86_64-cpuid-Core-i7-3740QM-json.xml} (93%)
create mode 100644 tests/cputestdata/x86_64-cpuid-Core-i7-3740QM.json
rename tests/cputestdata/{x86-cpuid-Core-i7-3740QM.xml => x86_64-cpuid-Core-i7-3740QM.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Core-i7-3770-guest.xml => x86_64-cpuid-Core-i7-3770-guest.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Core-i7-3770-host.xml => x86_64-cpuid-Core-i7-3770-host.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Core-i7-3770-json.xml => x86_64-cpuid-Core-i7-3770-json.xml} (92%)
create mode 100644 tests/cputestdata/x86_64-cpuid-Core-i7-3770.json
rename tests/cputestdata/{x86-cpuid-Core-i7-3770.xml => x86_64-cpuid-Core-i7-3770.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Core-i7-4600U-guest.xml => x86_64-cpuid-Core-i7-4600U-guest.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Core-i7-4600U-host.xml => x86_64-cpuid-Core-i7-4600U-host.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Core-i7-4600U-json.xml => x86_64-cpuid-Core-i7-4600U-json.xml} (95%)
create mode 100644 tests/cputestdata/x86_64-cpuid-Core-i7-4600U.json
rename tests/cputestdata/{x86-cpuid-Core-i7-4600U.xml => x86_64-cpuid-Core-i7-4600U.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Core-i7-5600U-guest.xml => x86_64-cpuid-Core-i7-5600U-guest.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Core-i7-5600U-host.xml => x86_64-cpuid-Core-i7-5600U-host.xml} (100%)
create mode 100644 tests/cputestdata/x86_64-cpuid-Core-i7-5600U-json.xml
create mode 100644 tests/cputestdata/x86_64-cpuid-Core-i7-5600U.json
rename tests/cputestdata/{x86-cpuid-Core-i7-5600U.xml => x86_64-cpuid-Core-i7-5600U.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Core2-E6850-guest.xml => x86_64-cpuid-Core2-E6850-guest.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Core2-E6850-host.xml => x86_64-cpuid-Core2-E6850-host.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Core2-E6850-json.xml => x86_64-cpuid-Core2-E6850-json.xml} (75%)
create mode 100644 tests/cputestdata/x86_64-cpuid-Core2-E6850.json
rename tests/cputestdata/{x86-cpuid-Core2-E6850.xml => x86_64-cpuid-Core2-E6850.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Core2-Q9500-guest.xml => x86_64-cpuid-Core2-Q9500-guest.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Core2-Q9500-host.xml => x86_64-cpuid-Core2-Q9500-host.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Core2-Q9500.xml => x86_64-cpuid-Core2-Q9500.xml} (100%)
rename tests/cputestdata/{x86-cpuid-FX-8150-guest.xml => x86_64-cpuid-FX-8150-guest.xml} (100%)
rename tests/cputestdata/{x86-cpuid-FX-8150-host.xml => x86_64-cpuid-FX-8150-host.xml} (100%)
rename tests/cputestdata/{x86-cpuid-FX-8150.xml => x86_64-cpuid-FX-8150.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Opteron-1352-guest.xml => x86_64-cpuid-Opteron-1352-guest.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Opteron-1352-host.xml => x86_64-cpuid-Opteron-1352-host.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Opteron-1352.xml => x86_64-cpuid-Opteron-1352.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Opteron-2350-guest.xml => x86_64-cpuid-Opteron-2350-guest.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Opteron-2350-host.xml => x86_64-cpuid-Opteron-2350-host.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Opteron-2350-json.xml => x86_64-cpuid-Opteron-2350-json.xml} (97%)
create mode 100644 tests/cputestdata/x86_64-cpuid-Opteron-2350.json
rename tests/cputestdata/{x86-cpuid-Opteron-2350.xml => x86_64-cpuid-Opteron-2350.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Opteron-6234-guest.xml => x86_64-cpuid-Opteron-6234-guest.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Opteron-6234-host.xml => x86_64-cpuid-Opteron-6234-host.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Opteron-6234-json.xml => x86_64-cpuid-Opteron-6234-json.xml} (96%)
create mode 100644 tests/cputestdata/x86_64-cpuid-Opteron-6234.json
rename tests/cputestdata/{x86-cpuid-Opteron-6234.xml => x86_64-cpuid-Opteron-6234.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Opteron-6282-guest.xml => x86_64-cpuid-Opteron-6282-guest.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Opteron-6282-host.xml => x86_64-cpuid-Opteron-6282-host.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Opteron-6282.xml => x86_64-cpuid-Opteron-6282.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Pentium-P6100-guest.xml => x86_64-cpuid-Pentium-P6100-guest.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Pentium-P6100-host.xml => x86_64-cpuid-Pentium-P6100-host.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Pentium-P6100.xml => x86_64-cpuid-Pentium-P6100.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Phenom-B95-guest.xml => x86_64-cpuid-Phenom-B95-guest.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Phenom-B95-host.xml => x86_64-cpuid-Phenom-B95-host.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Phenom-B95-json.xml => x86_64-cpuid-Phenom-B95-json.xml} (97%)
create mode 100644 tests/cputestdata/x86_64-cpuid-Phenom-B95.json
rename tests/cputestdata/{x86-cpuid-Phenom-B95.xml => x86_64-cpuid-Phenom-B95.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Xeon-5110-guest.xml => x86_64-cpuid-Xeon-5110-guest.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Xeon-5110-host.xml => x86_64-cpuid-Xeon-5110-host.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Xeon-5110.xml => x86_64-cpuid-Xeon-5110.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Xeon-E3-1245-guest.xml => x86_64-cpuid-Xeon-E3-1245-guest.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Xeon-E3-1245-host.xml => x86_64-cpuid-Xeon-E3-1245-host.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Xeon-E3-1245-json.xml => x86_64-cpuid-Xeon-E3-1245-json.xml} (93%)
create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-E3-1245.json
rename tests/cputestdata/{x86-cpuid-Xeon-E3-1245.xml => x86_64-cpuid-Xeon-E3-1245.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Xeon-E5-2630-guest.xml => x86_64-cpuid-Xeon-E5-2630-guest.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Xeon-E5-2630-host.xml => x86_64-cpuid-Xeon-E5-2630-host.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Xeon-E5-2630-json.xml => x86_64-cpuid-Xeon-E5-2630-json.xml} (95%)
create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-E5-2630.json
rename tests/cputestdata/{x86-cpuid-Xeon-E5-2630.xml => x86_64-cpuid-Xeon-E5-2630.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Xeon-E5-2650-guest.xml => x86_64-cpuid-Xeon-E5-2650-guest.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Xeon-E5-2650-host.xml => x86_64-cpuid-Xeon-E5-2650-host.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Xeon-E5-2650-json.xml => x86_64-cpuid-Xeon-E5-2650-json.xml} (94%)
create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-E5-2650.json
rename tests/cputestdata/{x86-cpuid-Xeon-E5-2650.xml => x86_64-cpuid-Xeon-E5-2650.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Xeon-E7-4820-guest.xml => x86_64-cpuid-Xeon-E7-4820-guest.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Xeon-E7-4820-host.xml => x86_64-cpuid-Xeon-E7-4820-host.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Xeon-E7-4820-json.xml => x86_64-cpuid-Xeon-E7-4820-json.xml} (94%)
create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-E7-4820.json
rename tests/cputestdata/{x86-cpuid-Xeon-E7-4820.xml => x86_64-cpuid-Xeon-E7-4820.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Xeon-W3520-guest.xml => x86_64-cpuid-Xeon-W3520-guest.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Xeon-W3520-host.xml => x86_64-cpuid-Xeon-W3520-host.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Xeon-W3520-json.xml => x86_64-cpuid-Xeon-W3520-json.xml} (93%)
create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-W3520.json
rename tests/cputestdata/{x86-cpuid-Xeon-W3520.xml => x86_64-cpuid-Xeon-W3520.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Xeon-X5460-guest.xml => x86_64-cpuid-Xeon-X5460-guest.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Xeon-X5460-host.xml => x86_64-cpuid-Xeon-X5460-host.xml} (100%)
rename tests/cputestdata/{x86-cpuid-Xeon-X5460.xml => x86_64-cpuid-Xeon-X5460.xml} (100%)
rename tests/cputestdata/{x86-exact-disable-extra.xml => x86_64-exact-disable-extra.xml} (100%)
rename tests/cputestdata/{x86-exact-disable.xml => x86_64-exact-disable.xml} (100%)
rename tests/cputestdata/{x86-exact-disable2.xml => x86_64-exact-disable2.xml} (100%)
rename tests/cputestdata/{x86-exact-forbid-extra.xml => x86_64-exact-forbid-extra.xml} (100%)
rename tests/cputestdata/{x86-exact-forbid.xml => x86_64-exact-forbid.xml} (100%)
rename tests/cputestdata/{x86-exact-force-Haswell.xml => x86_64-exact-force-Haswell.xml} (100%)
rename tests/cputestdata/{x86-exact-force.xml => x86_64-exact-force.xml} (100%)
rename tests/cputestdata/{x86-exact-require-extra.xml => x86_64-exact-require-extra.xml} (100%)
rename tests/cputestdata/{x86-exact-require.xml => x86_64-exact-require.xml} (100%)
rename tests/cputestdata/{x86-exact.xml => x86_64-exact.xml} (100%)
rename tests/cputestdata/{x86-guest-nofallback.xml => x86_64-guest-nofallback.xml} (100%)
rename tests/cputestdata/{x86-guest.xml => x86_64-guest.xml} (100%)
rename tests/cputestdata/{x86-host+guest,model486-result.xml => x86_64-host+guest,model486-result.xml} (100%)
rename tests/cputestdata/{x86-host+guest,models-result.xml => x86_64-host+guest,models-result.xml} (100%)
rename tests/cputestdata/{x86-host+guest-result.xml => x86_64-host+guest-result.xml} (100%)
rename tests/cputestdata/{x86-host+guest.xml => x86_64-host+guest.xml} (100%)
rename tests/cputestdata/{x86-host+host+host-model,models-result.xml => x86_64-host+host+host-model,models-result.xml} (100%)
rename tests/cputestdata/{x86-host+host-model-nofallback.xml => x86_64-host+host-model-nofallback.xml} (100%)
rename tests/cputestdata/{x86-host+host-model.xml => x86_64-host+host-model.xml} (100%)
rename tests/cputestdata/{x86-host+host-passthrough-features.xml => x86_64-host+host-passthrough-features.xml} (100%)
rename tests/cputestdata/{x86-host+host-passthrough.xml => x86_64-host+host-passthrough.xml} (100%)
rename tests/cputestdata/{x86-host+min.xml => x86_64-host+min.xml} (100%)
rename tests/cputestdata/{x86-host+penryn-force-result.xml => x86_64-host+penryn-force-result.xml} (100%)
rename tests/cputestdata/{x86-host+pentium3.xml => x86_64-host+pentium3.xml} (100%)
rename tests/cputestdata/{x86-host+strict-force-extra-result.xml => x86_64-host+strict-force-extra-result.xml} (100%)
rename tests/cputestdata/{x86-host-Haswell-noTSX+Haswell,haswell-result.xml => x86_64-host-Haswell-noTSX+Haswell,haswell-result.xml} (100%)
rename tests/cputestdata/{x86-host-Haswell-noTSX+Haswell-noTSX,haswell-result.xml => x86_64-host-Haswell-noTSX+Haswell-noTSX,haswell-result.xml} (100%)
rename tests/cputestdata/{x86-host-Haswell-noTSX+Haswell-noTSX-result.xml => x86_64-host-Haswell-noTSX+Haswell-noTSX-result.xml} (100%)
rename tests/cputestdata/{x86-host-Haswell-noTSX.xml => x86_64-host-Haswell-noTSX.xml} (100%)
rename tests/cputestdata/{x86-host-SandyBridge.xml => x86_64-host-SandyBridge.xml} (100%)
rename tests/cputestdata/{x86-host-amd-fake.xml => x86_64-host-amd-fake.xml} (100%)
rename tests/cputestdata/{x86-host-amd.xml => x86_64-host-amd.xml} (100%)
rename tests/cputestdata/{x86-host-better+pentium3-result.xml => x86_64-host-better+pentium3-result.xml} (100%)
rename tests/cputestdata/{x86-host-better.xml => x86_64-host-better.xml} (100%)
rename tests/cputestdata/{x86-host-incomp-arch.xml => x86_64-host-incomp-arch.xml} (100%)
rename tests/cputestdata/{x86-host-invtsc+host-model.xml => x86_64-host-invtsc+host-model.xml} (100%)
rename tests/cputestdata/{x86-host-invtsc.xml => x86_64-host-invtsc.xml} (100%)
rename tests/cputestdata/{x86-host-model-nofallback.xml => x86_64-host-model-nofallback.xml} (100%)
rename tests/cputestdata/{x86-host-model.xml => x86_64-host-model.xml} (100%)
rename tests/cputestdata/{x86-host-no-vendor.xml => x86_64-host-no-vendor.xml} (100%)
rename tests/cputestdata/{x86-host-passthrough-features.xml => x86_64-host-passthrough-features.xml} (100%)
rename tests/cputestdata/{x86-host-passthrough.xml => x86_64-host-passthrough.xml} (100%)
rename tests/cputestdata/{x86-host-worse+guest-result.xml => x86_64-host-worse+guest-result.xml} (100%)
rename tests/cputestdata/{x86-host-worse.xml => x86_64-host-worse.xml} (100%)
rename tests/cputestdata/{x86-host.xml => x86_64-host.xml} (100%)
rename tests/cputestdata/{x86-min.xml => x86_64-min.xml} (100%)
rename tests/cputestdata/{x86-penryn-force.xml => x86_64-penryn-force.xml} (100%)
rename tests/cputestdata/{x86-pentium3-amd.xml => x86_64-pentium3-amd.xml} (100%)
rename tests/cputestdata/{x86-pentium3.xml => x86_64-pentium3.xml} (100%)
rename tests/cputestdata/{x86-strict-disable.xml => x86_64-strict-disable.xml} (100%)
rename tests/cputestdata/{x86-strict-force-extra.xml => x86_64-strict-force-extra.xml} (100%)
rename tests/cputestdata/{x86-strict-full.xml => x86_64-strict-full.xml} (100%)
rename tests/cputestdata/{x86-strict.xml => x86_64-strict.xml} (100%)
create mode 100644 tests/domaincapsschemadata/qemu_2.9.0-tcg.x86_64.xml
create mode 100644 tests/domaincapsschemadata/qemu_2.9.0.x86_64.xml
--
2.11.1
7 years, 9 months
[libvirt] [PATCH] Fix location of blkid.h in include header
by Nehal J Wani
The build system for libvirt correctly detects the location of blkid
using PKG_CONFIG_PATH environment variable. The file blkid.pc states
that the include flags should be: 'Cflags: -I${includedir}/blkid' but
libvirt searches for blkid.h inside ${includedir}/blkid/blkid, which is
wrong. Until now, the compilation for libvirt succeeded because of pure
luck, as it had -I/usr/include as a CFLAG. This issue was faced while
compiling libvirt on Ubuntu 16.04.2 with bare minimum dev packages and a
custom compiled blkid kept in a non-standard $prefix.
Signed-off-by: Nehal J Wani <nehaljw.kkd1(a)gmail.com>
---
src/lxc/lxc_container.c | 2 +-
src/storage/storage_util.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/lxc/lxc_container.c b/src/lxc/lxc_container.c
index 99bd7e9..e306b6e 100644
--- a/src/lxc/lxc_container.c
+++ b/src/lxc/lxc_container.c
@@ -49,7 +49,7 @@
#endif
#if WITH_BLKID
-# include <blkid/blkid.h>
+# include <blkid.h>
#endif
#if WITH_SELINUX
diff --git a/src/storage/storage_util.c b/src/storage/storage_util.c
index a665bac..41253b9 100644
--- a/src/storage/storage_util.c
+++ b/src/storage/storage_util.c
@@ -39,7 +39,7 @@
#endif
#if WITH_BLKID
-# include <blkid/blkid.h>
+# include <blkid.h>
#endif
#if WITH_SELINUX
--
2.7.4
7 years, 9 months
[libvirt] [PATCH v2 0/6] Split out node device object into its own module
by John Ferlan
v1: http://www.redhat.com/archives/libvir-list/2017-March/msg00046.html
Differences...
patch 1 and 3 are the same and both were ACK'd
patch 2 removes the lower case function name changes (a/k/a "vir" removal)
patch 4 is new adding modifications as requested by Pavel from patch 1 comment
patch 5 & 6 are new based on a type A reaction to seeing a deeply nested
structure and picking it apart to allow for more direct access to the
data fields via pointers which patch6 dutify does for virNodeDevCapDataPtr
John Ferlan (6):
conf: Introduce virnodedeviceobj
conf: Adjust coding style for nodedev conf sources
conf: Use consistent function name prefixes for virnodedeviceobj
conf: Alter coding style of nodedev function prototypes
conf: Clean up the _virNodeDevCapData
nodedev: Reduce virNodeDevCapDataPtr usage
po/POTFILES.in | 1 +
src/Makefile.am | 3 +-
src/conf/node_device_conf.c | 757 ++++++------------------------
src/conf/node_device_conf.h | 316 ++++++-------
src/conf/virnodedeviceobj.c | 558 ++++++++++++++++++++++
src/conf/virnodedeviceobj.h | 92 ++++
src/libvirt_private.syms | 23 +-
src/node_device/node_device_driver.c | 30 +-
src/node_device/node_device_driver.h | 2 +-
src/node_device/node_device_hal.c | 14 +-
src/node_device/node_device_linux_sysfs.c | 134 +++---
src/node_device/node_device_linux_sysfs.h | 4 +-
src/node_device/node_device_udev.c | 198 ++++----
src/test/test_driver.c | 29 +-
14 files changed, 1164 insertions(+), 997 deletions(-)
create mode 100644 src/conf/virnodedeviceobj.c
create mode 100644 src/conf/virnodedeviceobj.h
--
2.9.3
7 years, 9 months
[libvirt] [PATCH RFC 0/4] libxl: qemu agent support
by Joao Martins
Hey!
Back when channels were introduced in libxl (in answer to Michal[0]) I
suggested the idea of integrating qemu guest agent (which currently lives
qemu driver).
This series is an attempt at pulling qemu agent from qemu driver into util in
using it in libxl in subsequent patches. What do folks think of the idea? Note
that this is still all very RFC because 1) there's a lot of code we could
potentially share between qemu and libxl with respect to finding guest agent
config and keeping some of its state (see patch 3); 2) also we need to ignore
"execute" messages to be able to query the agent and see it's returned data
(patch 2). Which despite the commit not being incorrect I am not sure yet why
we need it yet.
As PoC I only implemented domainQemuAgentCommand/domainInterfaceAddresses, but
there's a lot more driver APIs we can potentially introduce after this. Tracing
all driver APIs that might require a guest agent:
* domainFSThaw, domainFSFreeze, domainFSTrim, domainGetFSInfo
* domainSetUserPassword
* domainGetTime, domainSetTime
* domainShutdown (with VIR_DOMAIN_SHUTDOWN_GUEST_AGENT)
* domainReboot (with VIR_DOMAIN_REBOOT_GUEST_AGENT)
* domainGetGuestVcpus
* domainSetGuestVcpus
* domainSetVcpusFlags (with VIR_DOMAIN_VCPU_GUEST)
* domainGetVcpusFlags (with VIR_DOMAIN_VCPU_GUEST)
Comments/Feedback is appreciated :)
Cheers,
Joao
[0] https://www.spinics.net/linux/fedora/libvir/msg136685.html
Joao Martins (4):
qemu_agent: move agent into util
qemu_agent: ignore requests echoed back by guest
libxl: implement qemu-agent-command
libxl: domainInterfaceAddresses agent support
po/POTFILES.in | 2 +-
src/Makefile.am | 2 +-
src/libvirt_private.syms | 21 +
src/libxl/libxl_domain.c | 239 ++++-
src/libxl/libxl_domain.h | 16 +
src/libxl/libxl_driver.c | 69 ++
src/qemu/qemu_agent.c | 2248 -----------------------------------------
src/qemu/qemu_agent.h | 123 ---
src/qemu/qemu_domain.h | 2 +-
src/qemu/qemu_driver.c | 2 +-
src/util/virqemuagent.c | 2249 ++++++++++++++++++++++++++++++++++++++++++
src/util/virqemuagent.h | 123 +++
tests/qemuagenttest.c | 2 +-
tests/qemumonitortestutils.c | 2 +-
tests/qemumonitortestutils.h | 2 +-
15 files changed, 2723 insertions(+), 2379 deletions(-)
delete mode 100644 src/qemu/qemu_agent.c
delete mode 100644 src/qemu/qemu_agent.h
create mode 100644 src/util/virqemuagent.c
create mode 100644 src/util/virqemuagent.h
--
2.1.4
7 years, 9 months
[libvirt] [PATCH] news: Add an empty <change> to each <section>
by Andrea Bolognani
The generated HTML will contain <ul></ul> otherwise, which
triggers an error during 'make check'.
The proper fix would be not to generate the problematic
HTML in the first place but, while I'm working on it, this
workaround will do.
---
Pushed as build-breaker. Sorry for the noise.
docs/news.xml | 3 +++
1 file changed, 3 insertions(+)
diff --git a/docs/news.xml b/docs/news.xml
index bb67619..675faa7 100644
--- a/docs/news.xml
+++ b/docs/news.xml
@@ -12,10 +12,13 @@
<libvirt>
<release version="v3.2.0" date="unreleased">
<section title="New features">
+ <change/>
</section>
<section title="Improvements">
+ <change/>
</section>
<section title="Bug fixes">
+ <change/>
</section>
</release>
<release version="v3.1.0" date="2017-03-03">
--
2.7.4
7 years, 9 months