Re: [libvirt] [PATCH 0/7] x86: Rework KVM-defaults compat code, enable kvm_pv_unhalt by default
by Eduardo Habkost
(CCing libvir-list)
On Mon, Oct 09, 2017 at 05:47:44PM +0200, Paolo Bonzini wrote:
> On 09/10/2017 17:15, Waiman Long wrote:
> > On 10/09/2017 09:39 AM, Paolo Bonzini wrote:
> >> On 06/10/2017 23:52, Eduardo Habkost wrote:
> >>> This series enables kvm_pv_unhalt by default on pc-*-2.11 and
> >>> newer.
> >>
> >> I've discussed PV spinlocks with some folks at Microsoft for a few weeks
> >> now, and I'm not 100% sure about enabling kvm_pv_unhalt by default.
> >> It's probably a good idea overall, but it does come with some caveats.
> >>
> >> The problem is that there were two different implementations of fair
> >> spinlocks in Linux, ticket spinlocks and queued spinlocks. When
> >> kvm_pv_unhalt is disabled, ticket spinlocks sucked badly indeed; queued
> >> spinlocks however simply revert to unfair spinlocks, which loses the
> >> fairness but has the best performance. See virt_spin_lock in
> >> arch/x86/include/asm/qspinlock.h.
> >>
> >> Now, fair spinlocks are only really needed for large NUMA machines.
> >> With a single NUMA node, for example, test-and-set spinlocks work well
> >> enough; there's not _much_ need for fairness in practice, and the
> >> paravirtualization does introduce some overhead.
> >>
> >> Therefore, the best performance would be achieved with kvm_pv_unhalt
> >> disabled on small VMs, and enabled on large VMs spanning multiple host
> >> NUMA nodes.
> >>
> >> Waiman, Davidlohr, do you have an opinion on this as well?
> >
> > I agree. Using unfair lock in a small VM is good for performance. The
> > only problem I see is how do we define what is small. Now, even a
> > machine with a single socket can have up to 28 cores, 56 threads. If a
> > VM has up to 56 vCPUs, we may still want pvqspinlock to be used.
>
> Yes. Another possibility is to enable it when there is >1 NUMA node in
> the guest. We generally don't do this kind of magic but higher layers
> (oVirt/OpenStack) do.
Can't the guest make this decision, instead of the host?
>
> It also depends on how worse performance is with PV qspinlocks,
> especially since now there's also vcpu_is_preempted that has to be
> thrown in the mix. A lot more testing is needed.
>
This is an interesting case for "-cpu host"/host-passthrough:
usage of "-cpu host" has an implicit assumption that no feature
will decrease performance just because we told the guest that it
is available.
Can't the guest choose the most reasonable option based on the
information we provide to it, instead of having to hide
information from the guest to get better performance?
> > Is the kvm_pv_unhalt flag a global one for all VMs within a machine? Or
> > can it be different for each VM? We may want to have this flag
> > dynamically determined depending on the configuration of the VM.
>
> It's per-VM, so that's easy.
--
Eduardo
7 years
[libvirt] [PATCH] qemu-ns: Detect /dev/* mount point duplicates even better
by Michal Privoznik
In 4f1570720218302 I've tried to make duplicates detection for
nested /dev mount better. However, I've missed the obvious case
when there are two same mount points. For instance if:
# mount --bind /dev/blah /dev/blah
# mount --bind /dev/blah /dev/blah
Yeah, very unlikely but possible.
Signed-off-by: Michal Privoznik <mprivozn(a)redhat.com>
---
src/qemu/qemu_domain.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c
index 702463547..61d28337b 100644
--- a/src/qemu/qemu_domain.c
+++ b/src/qemu/qemu_domain.c
@@ -8352,7 +8352,7 @@ qemuDomainGetPreservedMounts(virQEMUDriverConfigPtr cfg,
while (j < nmounts) {
char *c = STRSKIP(mounts[j], mounts[i]);
- if (c && *c == '/') {
+ if (c && (*c == '/' || *c == '\0')) {
VIR_DEBUG("Dropping path %s because of %s", mounts[j], mounts[i]);
VIR_DELETE_ELEMENT(mounts, j, nmounts);
} else {
--
2.13.6
7 years
[libvirt] [PATCH] conf: Fix type for @liveStatus in virDomainObjListLoadAllConfigs
by Peter Krempa
Use bool instead of an int.
---
src/bhyve/bhyve_driver.c | 4 ++--
src/conf/virdomainobjlist.c | 2 +-
src/conf/virdomainobjlist.h | 2 +-
src/libxl/libxl_driver.c | 6 +++---
src/lxc/lxc_driver.c | 6 +++---
src/qemu/qemu_driver.c | 6 +++---
src/uml/uml_driver.c | 4 ++--
7 files changed, 15 insertions(+), 15 deletions(-)
diff --git a/src/bhyve/bhyve_driver.c b/src/bhyve/bhyve_driver.c
index 5c432b25e..dd6e8abc6 100644
--- a/src/bhyve/bhyve_driver.c
+++ b/src/bhyve/bhyve_driver.c
@@ -1294,7 +1294,7 @@ bhyveStateInitialize(bool privileged,
if (virDomainObjListLoadAllConfigs(bhyve_driver->domains,
BHYVE_STATE_DIR,
- NULL, 1,
+ NULL, true,
bhyve_driver->caps,
bhyve_driver->xmlopt,
NULL, NULL) < 0)
@@ -1302,7 +1302,7 @@ bhyveStateInitialize(bool privileged,
if (virDomainObjListLoadAllConfigs(bhyve_driver->domains,
BHYVE_CONFIG_DIR,
- BHYVE_AUTOSTART_DIR, 0,
+ BHYVE_AUTOSTART_DIR, false,
bhyve_driver->caps,
bhyve_driver->xmlopt,
NULL, NULL) < 0)
diff --git a/src/conf/virdomainobjlist.c b/src/conf/virdomainobjlist.c
index b9f78c572..87a742b1e 100644
--- a/src/conf/virdomainobjlist.c
+++ b/src/conf/virdomainobjlist.c
@@ -559,7 +559,7 @@ int
virDomainObjListLoadAllConfigs(virDomainObjListPtr doms,
const char *configDir,
const char *autostartDir,
- int liveStatus,
+ bool liveStatus,
virCapsPtr caps,
virDomainXMLOptionPtr xmlopt,
virDomainLoadConfigNotify notify,
diff --git a/src/conf/virdomainobjlist.h b/src/conf/virdomainobjlist.h
index 60220ca0d..bb186bde3 100644
--- a/src/conf/virdomainobjlist.h
+++ b/src/conf/virdomainobjlist.h
@@ -72,7 +72,7 @@ void virDomainObjListRemoveLocked(virDomainObjListPtr doms,
int virDomainObjListLoadAllConfigs(virDomainObjListPtr doms,
const char *configDir,
const char *autostartDir,
- int liveStatus,
+ bool liveStatus,
virCapsPtr caps,
virDomainXMLOptionPtr xmlopt,
virDomainLoadConfigNotify notify,
diff --git a/src/libxl/libxl_driver.c b/src/libxl/libxl_driver.c
index 951937f14..40328a6cb 100644
--- a/src/libxl/libxl_driver.c
+++ b/src/libxl/libxl_driver.c
@@ -763,7 +763,7 @@ libxlStateInitialize(bool privileged,
if (virDomainObjListLoadAllConfigs(libxl_driver->domains,
cfg->stateDir,
cfg->autostartDir,
- 1,
+ true,
cfg->caps,
libxl_driver->xmlopt,
NULL, NULL) < 0)
@@ -775,7 +775,7 @@ libxlStateInitialize(bool privileged,
if (virDomainObjListLoadAllConfigs(libxl_driver->domains,
cfg->configDir,
cfg->autostartDir,
- 0,
+ false,
cfg->caps,
libxl_driver->xmlopt,
NULL, NULL) < 0)
@@ -815,7 +815,7 @@ libxlStateReload(void)
virDomainObjListLoadAllConfigs(libxl_driver->domains,
cfg->configDir,
cfg->autostartDir,
- 1,
+ true,
cfg->caps,
libxl_driver->xmlopt,
NULL, libxl_driver);
diff --git a/src/lxc/lxc_driver.c b/src/lxc/lxc_driver.c
index 0069e5e92..b3447100f 100644
--- a/src/lxc/lxc_driver.c
+++ b/src/lxc/lxc_driver.c
@@ -1679,7 +1679,7 @@ static int lxcStateInitialize(bool privileged,
/* Get all the running persistent or transient configs first */
if (virDomainObjListLoadAllConfigs(lxc_driver->domains,
cfg->stateDir,
- NULL, 1,
+ NULL, true,
caps,
lxc_driver->xmlopt,
NULL, NULL) < 0)
@@ -1690,7 +1690,7 @@ static int lxcStateInitialize(bool privileged,
/* Then inactive persistent configs */
if (virDomainObjListLoadAllConfigs(lxc_driver->domains,
cfg->configDir,
- cfg->autostartDir, 0,
+ cfg->autostartDir, false,
caps,
lxc_driver->xmlopt,
NULL, NULL) < 0)
@@ -1755,7 +1755,7 @@ lxcStateReload(void)
virDomainObjListLoadAllConfigs(lxc_driver->domains,
cfg->configDir,
- cfg->autostartDir, 0,
+ cfg->autostartDir, false,
caps,
lxc_driver->xmlopt,
lxcNotifyLoadDomain, lxc_driver);
diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
index 47f85b9bf..6132bc4a9 100644
--- a/src/qemu/qemu_driver.c
+++ b/src/qemu/qemu_driver.c
@@ -911,7 +911,7 @@ qemuStateInitialize(bool privileged,
/* Get all the running persistent or transient configs first */
if (virDomainObjListLoadAllConfigs(qemu_driver->domains,
cfg->stateDir,
- NULL, 1,
+ NULL, true,
qemu_driver->caps,
qemu_driver->xmlopt,
NULL, NULL) < 0)
@@ -933,7 +933,7 @@ qemuStateInitialize(bool privileged,
/* Then inactive persistent configs */
if (virDomainObjListLoadAllConfigs(qemu_driver->domains,
cfg->configDir,
- cfg->autostartDir, 0,
+ cfg->autostartDir, false,
qemu_driver->caps,
qemu_driver->xmlopt,
NULL, NULL) < 0)
@@ -1015,7 +1015,7 @@ qemuStateReload(void)
cfg = virQEMUDriverGetConfig(qemu_driver);
virDomainObjListLoadAllConfigs(qemu_driver->domains,
cfg->configDir,
- cfg->autostartDir, 0,
+ cfg->autostartDir, false,
caps, qemu_driver->xmlopt,
qemuNotifyLoadDomain, qemu_driver);
cleanup:
diff --git a/src/uml/uml_driver.c b/src/uml/uml_driver.c
index 1846835cc..ab7fa7f27 100644
--- a/src/uml/uml_driver.c
+++ b/src/uml/uml_driver.c
@@ -566,7 +566,7 @@ umlStateInitialize(bool privileged,
if (virDomainObjListLoadAllConfigs(uml_driver->domains,
uml_driver->configDir,
- uml_driver->autostartDir, 0,
+ uml_driver->autostartDir, false,
uml_driver->caps,
uml_driver->xmlopt,
NULL, NULL) < 0)
@@ -634,7 +634,7 @@ umlStateReload(void)
umlDriverLock(uml_driver);
virDomainObjListLoadAllConfigs(uml_driver->domains,
uml_driver->configDir,
- uml_driver->autostartDir, 0,
+ uml_driver->autostartDir, false,
uml_driver->caps,
uml_driver->xmlopt,
umlNotifyLoadDomain, uml_driver);
--
2.14.3
7 years
[libvirt] [PATCH 00/12] qemu: Fully populate JSON formatters for the protocol layer (blockdev-add saga)
by Peter Krempa
This adds the missing formatters for JSON properties for the storage.
John Ferlan (1):
qemu: block: Add JSON props generator for iSCSI protocol
This patch was stolen from the iSCSI saga and fixed, since the formatter
did not format the port number into the portal string.
Peter Krempa (11):
qemu: block: Use proper type for servers for VxHS disks
qemu: process: Split out useful parts from qemuBuildNetworkDriveURI
storage: Don't store leading '/' in image name when splitting out
volume
storage: Store RBD image name as pool and image name
qemu: block: Add JSON props generator for 'curl' based storage
backends
qemu: block: Add JSON props generator for NBD storage backing
qemu: block: Add JSON props generator for RBD storage backing
qemu: block: Add JSON props generator for sheepdog storage backing
qemu: block: Add JSON props generator for ssh storage backing
qemu: block: Add node-names to JSON backing storage strings
tests: Add testing of storage backend JSON props formatter
src/conf/domain_conf.c | 17 +-
src/libxl/libxl_conf.c | 2 +-
src/qemu/qemu_block.c | 403 ++++++++++++++++++++-
src/qemu/qemu_block.h | 4 +
src/qemu/qemu_command.c | 40 +-
src/util/virstoragefile.c | 26 +-
src/xenconfig/xen_xl.c | 2 +-
tests/Makefile.am | 14 +-
tests/domainsnapshotxml2xmlin/disk_snapshot.xml | 2 +-
tests/domainsnapshotxml2xmlout/disk_snapshot.xml | 2 +-
tests/qemublocktest.c | 189 ++++++++++
.../qemuxml2argv-disk-drive-network-gluster.args | 2 +-
...muxml2argv-disk-drive-network-tlsx509-vxhs.args | 8 +-
.../qemuxml2argv-disk-drive-network-vxhs.args | 4 +-
tests/virstoragetest.c | 3 +-
15 files changed, 640 insertions(+), 78 deletions(-)
create mode 100644 tests/qemublocktest.c
--
2.14.3
7 years
[libvirt] [PATCH] util: storage: Fix parsing of IPv6 portal address for iSCSI
by Peter Krempa
Split on the last colon and avoid parsing port if the split remainder
contains the closing square bracket, so that IPv6 addresses are
interpreted correctly.
---
src/util/virstoragefile.c | 3 ++-
tests/virstoragetest.c | 20 ++++++++++++++++++++
2 files changed, 22 insertions(+), 1 deletion(-)
diff --git a/src/util/virstoragefile.c b/src/util/virstoragefile.c
index 3a2d2aa05..e7fcb1238 100644
--- a/src/util/virstoragefile.c
+++ b/src/util/virstoragefile.c
@@ -3008,7 +3008,8 @@ virStorageSourceParseBackingJSONiSCSI(virStorageSourcePtr src,
if (VIR_STRDUP(src->hosts->name, portal) < 0)
goto cleanup;
- if ((port = strchr(src->hosts->name, ':'))) {
+ if ((port = strrchr(src->hosts->name, ':')) &&
+ !strchr(port, ']')) {
if (virStringParsePort(port + 1, &src->hosts->port) < 0)
goto cleanup;
diff --git a/tests/virstoragetest.c b/tests/virstoragetest.c
index cfcd8a79c..52a685d91 100644
--- a/tests/virstoragetest.c
+++ b/tests/virstoragetest.c
@@ -1578,6 +1578,26 @@ mymain(void)
"<source protocol='iscsi' name='iqn.2016-12.com.virttest:emulated-iscsi-noauth.target/6'>\n"
" <host name='test.org' port='1234'/>\n"
"</source>\n");
+ TEST_BACKING_PARSE("json:{\"file\":{\"driver\":\"iscsi\","
+ "\"transport\":\"tcp\","
+ "\"portal\":\"[2001::0]:1234\","
+ "\"target\":\"iqn.2016-12.com.virttest:emulated-iscsi-noauth.target\","
+ "\"lun\":6"
+ "}"
+ "}",
+ "<source protocol='iscsi' name='iqn.2016-12.com.virttest:emulated-iscsi-noauth.target/6'>\n"
+ " <host name='[2001::0]' port='1234'/>\n"
+ "</source>\n");
+ TEST_BACKING_PARSE("json:{\"file\":{\"driver\":\"iscsi\","
+ "\"transport\":\"tcp\","
+ "\"portal\":\"[2001::0]\","
+ "\"target\":\"iqn.2016-12.com.virttest:emulated-iscsi-noauth.target\","
+ "\"lun\":6"
+ "}"
+ "}",
+ "<source protocol='iscsi' name='iqn.2016-12.com.virttest:emulated-iscsi-noauth.target/6'>\n"
+ " <host name='[2001::0]' port='3260'/>\n"
+ "</source>\n");
TEST_BACKING_PARSE("json:{\"file\":{\"driver\":\"sheepdog\","
"\"vdi\":\"test\","
"\"server\":{ \"type\":\"inet\","
--
2.14.3
7 years
[libvirt] [PATCH go-xml] Add support for host paravirt bootloader.
by Brandon Bergren
---
domain.go | 2 ++
1 file changed, 2 insertions(+)
diff --git a/domain.go b/domain.go
index 2b749b2..f4ef35c 100644
--- a/domain.go
+++ b/domain.go
@@ -791,6 +791,8 @@ type Domain struct {
VCPU *DomainVCPU `xml:"vcpu"`
VCPUs *DomainVCPUs `xml:"vcpus"`
CPUTune *DomainCPUTune `xml:"cputune"`
+ Bootloader string `xml:"bootloader,omitempty"`
+ BootloaderArgs string `xml:"bootloader_args,omitempty"`
Resource *DomainResource `xml:"resource"`
SysInfo *DomainSysInfo `xml:"sysinfo"`
OS *DomainOS `xml:"os"`
--
2.14.1
7 years
[libvirt] [PATCH 0/4] tests: Add caps for QEMU 2.10.0 on non-x86
by Andrea Bolognani
Patches 1, 2 and 4 are too big for the list, so I'm sending a
[REDACTED] version. The full series is available from
https://github.com/andreabolognani/libvirt/
in the "caps" branch.
Andrea Bolognani (4):
tests: Add caps for QEMU 2.10.0 on aarch64 (GICv2)
tests: Add caps for QEMU 2.10.0 on aarch64 (GICv3)
tests: Rename ppc64le caps to ppc64
tests: Add caps for QEMU 2.10.0 on ppc64
...qemu_2.6.0.ppc64le.xml => qemu_2.6.0.ppc64.xml} | 2 +-
tests/domaincapstest.c | 2 +-
...e.replies => caps_2.10.0-gicv2.aarch64.replies} | 23145 ++++++++-----------
.../caps_2.10.0-gicv2.aarch64.xml | 303 +
...e.replies => caps_2.10.0-gicv3.aarch64.replies} | 23145 ++++++++-----------
.../caps_2.10.0-gicv3.aarch64.xml | 303 +
...0.ppc64le.replies => caps_2.10.0.ppc64.replies} | 4714 ++--
...aps_2.9.0.ppc64le.xml => caps_2.10.0.ppc64.xml} | 31 +-
....0.ppc64le.replies => caps_2.6.0.ppc64.replies} | 0
...caps_2.6.0.ppc64le.xml => caps_2.6.0.ppc64.xml} | 0
....0.ppc64le.replies => caps_2.9.0.ppc64.replies} | 0
...caps_2.9.0.ppc64le.xml => caps_2.9.0.ppc64.xml} | 0
tests/qemucapabilitiestest.c | 7 +-
13 files changed, 24043 insertions(+), 27609 deletions(-)
rename tests/domaincapsschemadata/{qemu_2.6.0.ppc64le.xml => qemu_2.6.0.ppc64.xml} (98%)
copy tests/qemucapabilitiesdata/{caps_2.9.0.ppc64le.replies => caps_2.10.0-gicv2.aarch64.replies} (69%)
create mode 100644 tests/qemucapabilitiesdata/caps_2.10.0-gicv2.aarch64.xml
copy tests/qemucapabilitiesdata/{caps_2.9.0.ppc64le.replies => caps_2.10.0-gicv3.aarch64.replies} (69%)
create mode 100644 tests/qemucapabilitiesdata/caps_2.10.0-gicv3.aarch64.xml
copy tests/qemucapabilitiesdata/{caps_2.9.0.ppc64le.replies => caps_2.10.0.ppc64.replies} (83%)
copy tests/qemucapabilitiesdata/{caps_2.9.0.ppc64le.xml => caps_2.10.0.ppc64.xml} (99%)
rename tests/qemucapabilitiesdata/{caps_2.6.0.ppc64le.replies => caps_2.6.0.ppc64.replies} (100%)
rename tests/qemucapabilitiesdata/{caps_2.6.0.ppc64le.xml => caps_2.6.0.ppc64.xml} (100%)
rename tests/qemucapabilitiesdata/{caps_2.9.0.ppc64le.replies => caps_2.9.0.ppc64.replies} (100%)
rename tests/qemucapabilitiesdata/{caps_2.9.0.ppc64le.xml => caps_2.9.0.ppc64.xml} (100%)
--
2.13.6
7 years
[libvirt] [PATCH v3 0/5] Predictable file names for memory-backend-file
by Michal Privoznik
v3 of:
https://www.redhat.com/archives/libvir-list/2017-October/msg01091.html
diff to v2:
- Pushed 1/4 and 2/4 from the original series
- Split 3/4 into smaller patches
Michal Privoznik (5):
qemu: Set alias for memory cell in qemuBuildMemoryCellBackendStr
qemu: Rename qemuProcessBuildDestroyHugepagesPath
qemu: Destroy whole memory tree
qemu: Use predictable file names for memory-backend-file
news: Document predictable file names for memory-backend-file
docs/news.xml | 11 ++
src/qemu/qemu_command.c | 9 +-
src/qemu/qemu_conf.c | 55 ++++++++-
src/qemu/qemu_conf.h | 9 +-
src/qemu/qemu_driver.c | 17 +++
src/qemu/qemu_hotplug.c | 2 +-
src/qemu/qemu_process.c | 137 +++++++++++++++------
src/qemu/qemu_process.h | 8 +-
.../qemuxml2argv-cpu-numa-memshared.args | 6 +-
.../qemuxml2argv-fd-memory-numa-topology.args | 3 +-
.../qemuxml2argv-fd-memory-numa-topology2.args | 6 +-
.../qemuxml2argv-fd-memory-numa-topology3.args | 9 +-
.../qemuxml2argv-hugepages-memaccess2.args | 9 +-
13 files changed, 218 insertions(+), 63 deletions(-)
--
2.13.6
7 years
[libvirt] Libvirt config converter can't handle file not ending with new line
by Wei Liu
Hi Jim
I discover a problem when using xen_xl converter. When the file in
question doesn't end with a new line, I get the following error:
error: configuration file syntax error: memory conf:53: expecting a value
After digging a bit (but haven't read libvirt code), it appears that the
file didn't end with a new line.
I have worked around this, but I think this is an issue that should be
fixed.
Thanks,
Wei.
7 years
[libvirt] [PATCH 0/3] cputest: Add more CPU data files
by Jiri Denemark
Jiri Denemark (3):
cputest: Do not drop v[0-9] from CPU names
cputest: Add data for Intel(R) Xeon(R) CPU E5-2650 v4
cputest: Add data for Intel(R) Core(TM) i7-7700 CPU
tests/cputest.c | 10 +-
tests/cputestdata/cpu-parse.sh | 2 +-
.../x86_64-cpuid-Core-i7-7700-disabled.xml | 6 +
.../x86_64-cpuid-Core-i7-7700-enabled.xml | 9 +
...est.xml => x86_64-cpuid-Core-i7-7700-guest.xml} | 0
...host.xml => x86_64-cpuid-Core-i7-7700-host.xml} | 0
.../cputestdata/x86_64-cpuid-Core-i7-7700-json.xml | 9 +
tests/cputestdata/x86_64-cpuid-Core-i7-7700.json | 499 ++++++++++++++++++++
tests/cputestdata/x86_64-cpuid-Core-i7-7700.xml | 47 ++
...l => x86_64-cpuid-Xeon-E3-1245-v5-disabled.xml} | 0
...ml => x86_64-cpuid-Xeon-E3-1245-v5-enabled.xml} | 0
.../x86_64-cpuid-Xeon-E3-1245-v5-guest.xml | 25 +
.../x86_64-cpuid-Xeon-E3-1245-v5-host.xml | 26 ++
...n.xml => x86_64-cpuid-Xeon-E3-1245-v5-json.xml} | 0
...1245.json => x86_64-cpuid-Xeon-E3-1245-v5.json} | 0
...3-1245.xml => x86_64-cpuid-Xeon-E3-1245-v5.xml} | 0
...l => x86_64-cpuid-Xeon-E5-2630-v3-disabled.xml} | 0
...ml => x86_64-cpuid-Xeon-E5-2630-v3-enabled.xml} | 0
....xml => x86_64-cpuid-Xeon-E5-2630-v3-guest.xml} | 0
...t.xml => x86_64-cpuid-Xeon-E5-2630-v3-host.xml} | 0
...n.xml => x86_64-cpuid-Xeon-E5-2630-v3-json.xml} | 0
...2630.json => x86_64-cpuid-Xeon-E5-2630-v3.json} | 0
...5-2630.xml => x86_64-cpuid-Xeon-E5-2630-v3.xml} | 0
...l => x86_64-cpuid-Xeon-E5-2650-v3-disabled.xml} | 0
...ml => x86_64-cpuid-Xeon-E5-2650-v3-enabled.xml} | 0
....xml => x86_64-cpuid-Xeon-E5-2650-v3-guest.xml} | 0
...t.xml => x86_64-cpuid-Xeon-E5-2650-v3-host.xml} | 0
...n.xml => x86_64-cpuid-Xeon-E5-2650-v3-json.xml} | 0
...2650.json => x86_64-cpuid-Xeon-E5-2650-v3.json} | 0
...5-2650.xml => x86_64-cpuid-Xeon-E5-2650-v3.xml} | 0
...l => x86_64-cpuid-Xeon-E5-2650-v4-disabled.xml} | 0
.../x86_64-cpuid-Xeon-E5-2650-v4-enabled.xml | 9 +
.../x86_64-cpuid-Xeon-E5-2650-v4-guest.xml | 30 ++
.../x86_64-cpuid-Xeon-E5-2650-v4-host.xml | 34 ++
.../x86_64-cpuid-Xeon-E5-2650-v4-json.xml | 11 +
.../cputestdata/x86_64-cpuid-Xeon-E5-2650-v4.json | 505 +++++++++++++++++++++
tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v4.xml | 43 ++
.../x86_64-cpuid-Xeon-E7-8890-v3-disabled.xml | 6 +
...ml => x86_64-cpuid-Xeon-E7-8890-v3-enabled.xml} | 0
....xml => x86_64-cpuid-Xeon-E7-8890-v3-guest.xml} | 0
...t.xml => x86_64-cpuid-Xeon-E7-8890-v3-host.xml} | 0
...n.xml => x86_64-cpuid-Xeon-E7-8890-v3-json.xml} | 0
...8890.json => x86_64-cpuid-Xeon-E7-8890-v3.json} | 0
...7-8890.xml => x86_64-cpuid-Xeon-E7-8890-v3.xml} | 0
44 files changed, 1266 insertions(+), 5 deletions(-)
create mode 100644 tests/cputestdata/x86_64-cpuid-Core-i7-7700-disabled.xml
create mode 100644 tests/cputestdata/x86_64-cpuid-Core-i7-7700-enabled.xml
rename tests/cputestdata/{x86_64-cpuid-Xeon-E3-1245-guest.xml => x86_64-cpuid-Core-i7-7700-guest.xml} (100%)
rename tests/cputestdata/{x86_64-cpuid-Xeon-E3-1245-host.xml => x86_64-cpuid-Core-i7-7700-host.xml} (100%)
create mode 100644 tests/cputestdata/x86_64-cpuid-Core-i7-7700-json.xml
create mode 100644 tests/cputestdata/x86_64-cpuid-Core-i7-7700.json
create mode 100644 tests/cputestdata/x86_64-cpuid-Core-i7-7700.xml
rename tests/cputestdata/{x86_64-cpuid-Xeon-E3-1245-disabled.xml => x86_64-cpuid-Xeon-E3-1245-v5-disabled.xml} (100%)
rename tests/cputestdata/{x86_64-cpuid-Xeon-E3-1245-enabled.xml => x86_64-cpuid-Xeon-E3-1245-v5-enabled.xml} (100%)
create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-v5-guest.xml
create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-E3-1245-v5-host.xml
rename tests/cputestdata/{x86_64-cpuid-Xeon-E3-1245-json.xml => x86_64-cpuid-Xeon-E3-1245-v5-json.xml} (100%)
rename tests/cputestdata/{x86_64-cpuid-Xeon-E3-1245.json => x86_64-cpuid-Xeon-E3-1245-v5.json} (100%)
rename tests/cputestdata/{x86_64-cpuid-Xeon-E3-1245.xml => x86_64-cpuid-Xeon-E3-1245-v5.xml} (100%)
rename tests/cputestdata/{x86_64-cpuid-Xeon-E5-2630-disabled.xml => x86_64-cpuid-Xeon-E5-2630-v3-disabled.xml} (100%)
rename tests/cputestdata/{x86_64-cpuid-Xeon-E5-2630-enabled.xml => x86_64-cpuid-Xeon-E5-2630-v3-enabled.xml} (100%)
rename tests/cputestdata/{x86_64-cpuid-Xeon-E5-2630-guest.xml => x86_64-cpuid-Xeon-E5-2630-v3-guest.xml} (100%)
rename tests/cputestdata/{x86_64-cpuid-Xeon-E5-2630-host.xml => x86_64-cpuid-Xeon-E5-2630-v3-host.xml} (100%)
rename tests/cputestdata/{x86_64-cpuid-Xeon-E5-2630-json.xml => x86_64-cpuid-Xeon-E5-2630-v3-json.xml} (100%)
rename tests/cputestdata/{x86_64-cpuid-Xeon-E5-2630.json => x86_64-cpuid-Xeon-E5-2630-v3.json} (100%)
rename tests/cputestdata/{x86_64-cpuid-Xeon-E5-2630.xml => x86_64-cpuid-Xeon-E5-2630-v3.xml} (100%)
rename tests/cputestdata/{x86_64-cpuid-Xeon-E5-2650-disabled.xml => x86_64-cpuid-Xeon-E5-2650-v3-disabled.xml} (100%)
rename tests/cputestdata/{x86_64-cpuid-Xeon-E5-2650-enabled.xml => x86_64-cpuid-Xeon-E5-2650-v3-enabled.xml} (100%)
rename tests/cputestdata/{x86_64-cpuid-Xeon-E5-2650-guest.xml => x86_64-cpuid-Xeon-E5-2650-v3-guest.xml} (100%)
rename tests/cputestdata/{x86_64-cpuid-Xeon-E5-2650-host.xml => x86_64-cpuid-Xeon-E5-2650-v3-host.xml} (100%)
rename tests/cputestdata/{x86_64-cpuid-Xeon-E5-2650-json.xml => x86_64-cpuid-Xeon-E5-2650-v3-json.xml} (100%)
rename tests/cputestdata/{x86_64-cpuid-Xeon-E5-2650.json => x86_64-cpuid-Xeon-E5-2650-v3.json} (100%)
rename tests/cputestdata/{x86_64-cpuid-Xeon-E5-2650.xml => x86_64-cpuid-Xeon-E5-2650-v3.xml} (100%)
rename tests/cputestdata/{x86_64-cpuid-Xeon-E7-8890-disabled.xml => x86_64-cpuid-Xeon-E5-2650-v4-disabled.xml} (100%)
create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v4-enabled.xml
create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v4-guest.xml
create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v4-host.xml
create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v4-json.xml
create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v4.json
create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-E5-2650-v4.xml
create mode 100644 tests/cputestdata/x86_64-cpuid-Xeon-E7-8890-v3-disabled.xml
rename tests/cputestdata/{x86_64-cpuid-Xeon-E7-8890-enabled.xml => x86_64-cpuid-Xeon-E7-8890-v3-enabled.xml} (100%)
rename tests/cputestdata/{x86_64-cpuid-Xeon-E7-8890-guest.xml => x86_64-cpuid-Xeon-E7-8890-v3-guest.xml} (100%)
rename tests/cputestdata/{x86_64-cpuid-Xeon-E7-8890-host.xml => x86_64-cpuid-Xeon-E7-8890-v3-host.xml} (100%)
rename tests/cputestdata/{x86_64-cpuid-Xeon-E7-8890-json.xml => x86_64-cpuid-Xeon-E7-8890-v3-json.xml} (100%)
rename tests/cputestdata/{x86_64-cpuid-Xeon-E7-8890.json => x86_64-cpuid-Xeon-E7-8890-v3.json} (100%)
rename tests/cputestdata/{x86_64-cpuid-Xeon-E7-8890.xml => x86_64-cpuid-Xeon-E7-8890-v3.xml} (100%)
--
2.14.3
7 years