提交 3a7cd180 编写于 作者: J Jiri Denemark

cpu_x86: Use array of features in CPU map

There's no reason for keeping the features in a linked list. Especially
when we know upfront the total number of features we are loading.
Signed-off-by: NJiri Denemark <jdenemar@redhat.com>
上级 22137d39
...@@ -56,8 +56,6 @@ typedef virCPUx86Feature *virCPUx86FeaturePtr; ...@@ -56,8 +56,6 @@ typedef virCPUx86Feature *virCPUx86FeaturePtr;
struct _virCPUx86Feature { struct _virCPUx86Feature {
char *name; char *name;
virCPUx86Data *data; virCPUx86Data *data;
virCPUx86FeaturePtr next;
}; };
typedef struct _virCPUx86KVMFeature virCPUx86KVMFeature; typedef struct _virCPUx86KVMFeature virCPUx86KVMFeature;
...@@ -102,10 +100,12 @@ typedef virCPUx86Map *virCPUx86MapPtr; ...@@ -102,10 +100,12 @@ typedef virCPUx86Map *virCPUx86MapPtr;
struct _virCPUx86Map { struct _virCPUx86Map {
size_t nvendors; size_t nvendors;
virCPUx86VendorPtr *vendors; virCPUx86VendorPtr *vendors;
virCPUx86FeaturePtr features; size_t nfeatures;
virCPUx86FeaturePtr *features;
size_t nmodels; size_t nmodels;
virCPUx86ModelPtr *models; virCPUx86ModelPtr *models;
virCPUx86FeaturePtr migrate_blockers; size_t nblockers;
virCPUx86FeaturePtr *migrate_blockers;
}; };
static virCPUx86MapPtr cpuMap; static virCPUx86MapPtr cpuMap;
...@@ -412,15 +412,15 @@ x86DataToCPUFeatures(virCPUDefPtr cpu, ...@@ -412,15 +412,15 @@ x86DataToCPUFeatures(virCPUDefPtr cpu,
virCPUx86Data *data, virCPUx86Data *data,
virCPUx86MapPtr map) virCPUx86MapPtr map)
{ {
virCPUx86FeaturePtr feature = map->features; size_t i;
while (feature) { for (i = 0; i < map->nfeatures; i++) {
virCPUx86FeaturePtr feature = map->features[i];
if (x86DataIsSubset(data, feature->data)) { if (x86DataIsSubset(data, feature->data)) {
x86DataSubtract(data, feature->data); x86DataSubtract(data, feature->data);
if (virCPUDefAddFeature(cpu, feature->name, policy) < 0) if (virCPUDefAddFeature(cpu, feature->name, policy) < 0)
return -1; return -1;
} }
feature = feature->next;
} }
return 0; return 0;
...@@ -599,40 +599,15 @@ x86FeatureFree(virCPUx86FeaturePtr feature) ...@@ -599,40 +599,15 @@ x86FeatureFree(virCPUx86FeaturePtr feature)
} }
static virCPUx86FeaturePtr
x86FeatureCopy(virCPUx86FeaturePtr src)
{
virCPUx86FeaturePtr feature;
if (VIR_ALLOC(feature) < 0)
return NULL;
if (VIR_STRDUP(feature->name, src->name) < 0)
goto error;
if (!(feature->data = x86DataCopy(src->data)))
goto error;
return feature;
error:
x86FeatureFree(feature);
return NULL;
}
static virCPUx86FeaturePtr static virCPUx86FeaturePtr
x86FeatureFind(virCPUx86MapPtr map, x86FeatureFind(virCPUx86MapPtr map,
const char *name) const char *name)
{ {
virCPUx86FeaturePtr feature; size_t i;
feature = map->features;
while (feature) {
if (STREQ(feature->name, name))
return feature;
feature = feature->next; for (i = 0; i < map->nfeatures; i++) {
if (STREQ(map->features[i]->name, name))
return map->features[i];
} }
return NULL; return NULL;
...@@ -646,21 +621,20 @@ x86FeatureNames(virCPUx86MapPtr map, ...@@ -646,21 +621,20 @@ x86FeatureNames(virCPUx86MapPtr map,
{ {
virBuffer ret = VIR_BUFFER_INITIALIZER; virBuffer ret = VIR_BUFFER_INITIALIZER;
bool first = true; bool first = true;
size_t i;
virCPUx86FeaturePtr next_feature = map->features;
virBufferAdd(&ret, "", 0); virBufferAdd(&ret, "", 0);
while (next_feature) { for (i = 0; i < map->nfeatures; i++) {
if (x86DataIsSubset(data, next_feature->data)) { virCPUx86FeaturePtr feature = map->features[i];
if (x86DataIsSubset(data, feature->data)) {
if (!first) if (!first)
virBufferAdd(&ret, separator, -1); virBufferAdd(&ret, separator, -1);
else else
first = false; first = false;
virBufferAdd(&ret, next_feature->name, -1); virBufferAdd(&ret, feature->name, -1);
} }
next_feature = next_feature->next;
} }
return virBufferContentAndReset(&ret); return virBufferContentAndReset(&ret);
...@@ -746,19 +720,13 @@ x86FeatureLoad(xmlXPathContextPtr ctxt, ...@@ -746,19 +720,13 @@ x86FeatureLoad(xmlXPathContextPtr ctxt,
goto cleanup; goto cleanup;
} }
if (!migratable) { if (!migratable &&
virCPUx86FeaturePtr blocker; VIR_APPEND_ELEMENT_COPY(map->migrate_blockers,
map->nblockers, feature) < 0)
if (!(blocker = x86FeatureCopy(feature))) goto cleanup;
goto cleanup;
blocker->next = map->migrate_blockers;
map->migrate_blockers = blocker;
}
feature->next = map->features; if (VIR_APPEND_ELEMENT(map->features, map->nfeatures, feature) < 0)
map->features = feature; goto cleanup;
feature = NULL;
ret = 0; ret = 0;
...@@ -1106,11 +1074,9 @@ x86MapFree(virCPUx86MapPtr map) ...@@ -1106,11 +1074,9 @@ x86MapFree(virCPUx86MapPtr map)
if (!map) if (!map)
return; return;
while (map->features) { for (i = 0; i < map->nfeatures; i++)
virCPUx86FeaturePtr feature = map->features; x86FeatureFree(map->features[i]);
map->features = feature->next; VIR_FREE(map->features);
x86FeatureFree(feature);
}
for (i = 0; i < map->nmodels; i++) for (i = 0; i < map->nmodels; i++)
x86ModelFree(map->models[i]); x86ModelFree(map->models[i]);
...@@ -1120,11 +1086,10 @@ x86MapFree(virCPUx86MapPtr map) ...@@ -1120,11 +1086,10 @@ x86MapFree(virCPUx86MapPtr map)
x86VendorFree(map->vendors[i]); x86VendorFree(map->vendors[i]);
VIR_FREE(map->vendors); VIR_FREE(map->vendors);
while (map->migrate_blockers) { /* migrate_blockers only points to the features from map->features list,
virCPUx86FeaturePtr migrate_blocker = map->migrate_blockers; * which were already freed above
map->migrate_blockers = migrate_blocker->next; */
x86FeatureFree(migrate_blocker); VIR_FREE(map->migrate_blockers);
}
VIR_FREE(map); VIR_FREE(map);
} }
...@@ -1157,14 +1122,19 @@ x86MapLoadInternalFeatures(virCPUx86MapPtr map) ...@@ -1157,14 +1122,19 @@ x86MapLoadInternalFeatures(virCPUx86MapPtr map)
{ {
size_t i; size_t i;
virCPUx86FeaturePtr feature = NULL; virCPUx86FeaturePtr feature = NULL;
size_t nfeatures = map->nfeatures;
size_t count = ARRAY_CARDINALITY(x86_kvm_features);
if (VIR_EXPAND_N(map->features, nfeatures, count) < 0)
goto error;
for (i = 0; i < ARRAY_CARDINALITY(x86_kvm_features); i++) { for (i = 0; i < count; i++) {
const char *name = x86_kvm_features[i].name; const char *name = x86_kvm_features[i].name;
if (x86FeatureFind(map, name)) { if (x86FeatureFind(map, name)) {
virReportError(VIR_ERR_INTERNAL_ERROR, virReportError(VIR_ERR_INTERNAL_ERROR,
_("CPU feature %s already defined"), name); _("CPU feature %s already defined"), name);
return -1; goto error;
} }
if (!(feature = x86FeatureNew())) if (!(feature = x86FeatureNew()))
...@@ -1176,8 +1146,7 @@ x86MapLoadInternalFeatures(virCPUx86MapPtr map) ...@@ -1176,8 +1146,7 @@ x86MapLoadInternalFeatures(virCPUx86MapPtr map)
if (virCPUx86DataAddCPUID(feature->data, &x86_kvm_features[i].cpuid)) if (virCPUx86DataAddCPUID(feature->data, &x86_kvm_features[i].cpuid))
goto error; goto error;
feature->next = map->features; map->features[map->nfeatures++] = feature;
map->features = feature;
feature = NULL; feature = NULL;
} }
...@@ -1651,11 +1620,13 @@ x86Decode(virCPUDefPtr cpu, ...@@ -1651,11 +1620,13 @@ x86Decode(virCPUDefPtr cpu,
* features directly */ * features directly */
if (flags & VIR_CONNECT_BASELINE_CPU_MIGRATABLE) { if (flags & VIR_CONNECT_BASELINE_CPU_MIGRATABLE) {
for (i = 0; i < cpuModel->nfeatures; i++) { for (i = 0; i < cpuModel->nfeatures; i++) {
virCPUx86FeaturePtr feat; size_t j;
for (feat = map->migrate_blockers; feat; feat = feat->next) { for (j = 0; j < map->nblockers; j++) {
if (STREQ(feat->name, cpuModel->features[i].name)) { if (STREQ(map->migrate_blockers[j]->name,
cpuModel->features[i].name)) {
VIR_FREE(cpuModel->features[i].name); VIR_FREE(cpuModel->features[i].name);
VIR_DELETE_ELEMENT_INPLACE(cpuModel->features, i, cpuModel->nfeatures); VIR_DELETE_ELEMENT_INPLACE(cpuModel->features, i,
cpuModel->nfeatures);
} }
} }
} }
...@@ -2106,7 +2077,6 @@ x86UpdateHostModel(virCPUDefPtr guest, ...@@ -2106,7 +2077,6 @@ x86UpdateHostModel(virCPUDefPtr guest,
{ {
virCPUDefPtr oldguest = NULL; virCPUDefPtr oldguest = NULL;
virCPUx86MapPtr map; virCPUx86MapPtr map;
virCPUx86FeaturePtr feat;
size_t i; size_t i;
int ret = -1; int ret = -1;
...@@ -2131,8 +2101,9 @@ x86UpdateHostModel(virCPUDefPtr guest, ...@@ -2131,8 +2101,9 @@ x86UpdateHostModel(virCPUDefPtr guest,
* Note: this only works as long as no CPU model contains non-migratable * Note: this only works as long as no CPU model contains non-migratable
* features directly */ * features directly */
for (i = 0; i < guest->nfeatures; i++) { for (i = 0; i < guest->nfeatures; i++) {
for (feat = map->migrate_blockers; feat; feat = feat->next) { size_t j;
if (STREQ(feat->name, guest->features[i].name)) { for (j = 0; j < map->nblockers; j++) {
if (STREQ(map->migrate_blockers[j]->name, guest->features[i].name)) {
VIR_FREE(guest->features[i].name); VIR_FREE(guest->features[i].name);
VIR_DELETE_ELEMENT_INPLACE(guest->features, i, guest->nfeatures); VIR_DELETE_ELEMENT_INPLACE(guest->features, i, guest->nfeatures);
} }
......
<cpu mode='custom' match='exact'> <cpu mode='custom' match='exact'>
<model fallback='forbid'>Westmere</model> <model fallback='forbid'>Westmere</model>
<feature policy='require' name='lahf_lm'/>
<feature policy='require' name='lm'/>
<feature policy='require' name='nx'/>
<feature policy='require' name='syscall'/>
<feature policy='require' name='aes'/>
<feature policy='require' name='popcnt'/>
<feature policy='require' name='sse4.2'/>
<feature policy='require' name='sse4.1'/>
<feature policy='require' name='cx16'/>
<feature policy='require' name='ssse3'/>
<feature policy='require' name='pni'/>
<feature policy='require' name='sse2'/>
<feature policy='require' name='sse'/>
<feature policy='require' name='fxsr'/>
<feature policy='require' name='mmx'/>
<feature policy='require' name='clflush'/>
<feature policy='require' name='pse36'/>
<feature policy='require' name='pat'/>
<feature policy='require' name='cmov'/>
<feature policy='require' name='mca'/>
<feature policy='require' name='pge'/>
<feature policy='require' name='mtrr'/>
<feature policy='require' name='sep'/>
<feature policy='require' name='apic'/>
<feature policy='require' name='cx8'/>
<feature policy='require' name='mce'/>
<feature policy='require' name='pae'/>
<feature policy='require' name='msr'/>
<feature policy='require' name='tsc'/>
<feature policy='require' name='pse'/>
<feature policy='require' name='de'/>
<feature policy='require' name='fpu'/> <feature policy='require' name='fpu'/>
<feature policy='require' name='de'/>
<feature policy='require' name='pse'/>
<feature policy='require' name='tsc'/>
<feature policy='require' name='msr'/>
<feature policy='require' name='pae'/>
<feature policy='require' name='mce'/>
<feature policy='require' name='cx8'/>
<feature policy='require' name='apic'/>
<feature policy='require' name='sep'/>
<feature policy='require' name='mtrr'/>
<feature policy='require' name='pge'/>
<feature policy='require' name='mca'/>
<feature policy='require' name='cmov'/>
<feature policy='require' name='pat'/>
<feature policy='require' name='pse36'/>
<feature policy='require' name='clflush'/>
<feature policy='require' name='mmx'/>
<feature policy='require' name='fxsr'/>
<feature policy='require' name='sse'/>
<feature policy='require' name='sse2'/>
<feature policy='require' name='pni'/>
<feature policy='require' name='ssse3'/>
<feature policy='require' name='cx16'/>
<feature policy='require' name='sse4.1'/>
<feature policy='require' name='sse4.2'/>
<feature policy='require' name='popcnt'/>
<feature policy='require' name='aes'/>
<feature policy='require' name='syscall'/>
<feature policy='require' name='nx'/>
<feature policy='require' name='lm'/>
<feature policy='require' name='lahf_lm'/>
</cpu> </cpu>
<cpu mode='custom' match='exact'> <cpu mode='custom' match='exact'>
<model fallback='forbid'>Westmere</model> <model fallback='forbid'>Westmere</model>
<vendor>Intel</vendor> <vendor>Intel</vendor>
<feature policy='require' name='hypervisor'/>
<feature policy='require' name='avx'/>
<feature policy='require' name='osxsave'/>
<feature policy='require' name='xsave'/>
<feature policy='require' name='tsc-deadline'/>
<feature policy='require' name='x2apic'/>
<feature policy='require' name='pcid'/>
<feature policy='require' name='pclmuldq'/>
<feature policy='require' name='ss'/>
<feature policy='require' name='vme'/> <feature policy='require' name='vme'/>
<feature policy='require' name='lahf_lm'/> <feature policy='require' name='ss'/>
<feature policy='require' name='lm'/> <feature policy='require' name='pclmuldq'/>
<feature policy='require' name='nx'/> <feature policy='require' name='pcid'/>
<feature policy='require' name='syscall'/> <feature policy='require' name='x2apic'/>
<feature policy='require' name='aes'/> <feature policy='require' name='tsc-deadline'/>
<feature policy='require' name='popcnt'/> <feature policy='require' name='xsave'/>
<feature policy='require' name='sse4.2'/> <feature policy='require' name='osxsave'/>
<feature policy='require' name='sse4.1'/> <feature policy='require' name='avx'/>
<feature policy='require' name='cx16'/> <feature policy='require' name='hypervisor'/>
<feature policy='require' name='ssse3'/>
<feature policy='require' name='pni'/>
<feature policy='require' name='sse2'/>
<feature policy='require' name='sse'/>
<feature policy='require' name='fxsr'/>
<feature policy='require' name='mmx'/>
<feature policy='require' name='clflush'/>
<feature policy='require' name='pse36'/>
<feature policy='require' name='pat'/>
<feature policy='require' name='cmov'/>
<feature policy='require' name='mca'/>
<feature policy='require' name='pge'/>
<feature policy='require' name='mtrr'/>
<feature policy='require' name='sep'/>
<feature policy='require' name='apic'/>
<feature policy='require' name='cx8'/>
<feature policy='require' name='mce'/>
<feature policy='require' name='pae'/>
<feature policy='require' name='msr'/>
<feature policy='require' name='tsc'/>
<feature policy='require' name='pse'/>
<feature policy='require' name='de'/>
<feature policy='require' name='fpu'/> <feature policy='require' name='fpu'/>
<feature policy='require' name='de'/>
<feature policy='require' name='pse'/>
<feature policy='require' name='tsc'/>
<feature policy='require' name='msr'/>
<feature policy='require' name='pae'/>
<feature policy='require' name='mce'/>
<feature policy='require' name='cx8'/>
<feature policy='require' name='apic'/>
<feature policy='require' name='sep'/>
<feature policy='require' name='mtrr'/>
<feature policy='require' name='pge'/>
<feature policy='require' name='mca'/>
<feature policy='require' name='cmov'/>
<feature policy='require' name='pat'/>
<feature policy='require' name='pse36'/>
<feature policy='require' name='clflush'/>
<feature policy='require' name='mmx'/>
<feature policy='require' name='fxsr'/>
<feature policy='require' name='sse'/>
<feature policy='require' name='sse2'/>
<feature policy='require' name='pni'/>
<feature policy='require' name='ssse3'/>
<feature policy='require' name='cx16'/>
<feature policy='require' name='sse4.1'/>
<feature policy='require' name='sse4.2'/>
<feature policy='require' name='popcnt'/>
<feature policy='require' name='aes'/>
<feature policy='require' name='syscall'/>
<feature policy='require' name='nx'/>
<feature policy='require' name='lm'/>
<feature policy='require' name='lahf_lm'/>
</cpu> </cpu>
<cpu mode='custom' match='exact'> <cpu mode='custom' match='exact'>
<model fallback='forbid'>Westmere</model> <model fallback='forbid'>Westmere</model>
<vendor>Intel</vendor> <vendor>Intel</vendor>
<feature policy='require' name='hypervisor'/>
<feature policy='require' name='avx'/>
<feature policy='require' name='osxsave'/>
<feature policy='require' name='xsave'/>
<feature policy='require' name='tsc-deadline'/>
<feature policy='require' name='x2apic'/>
<feature policy='require' name='pcid'/>
<feature policy='require' name='pclmuldq'/>
<feature policy='require' name='ss'/>
<feature policy='require' name='vme'/> <feature policy='require' name='vme'/>
<feature policy='require' name='ss'/>
<feature policy='require' name='pclmuldq'/>
<feature policy='require' name='pcid'/>
<feature policy='require' name='x2apic'/>
<feature policy='require' name='tsc-deadline'/>
<feature policy='require' name='xsave'/>
<feature policy='require' name='osxsave'/>
<feature policy='require' name='avx'/>
<feature policy='require' name='hypervisor'/>
</cpu> </cpu>
<cpu mode='custom' match='exact'> <cpu mode='custom' match='exact'>
<model fallback='allow'>SandyBridge</model> <model fallback='allow'>SandyBridge</model>
<vendor>Intel</vendor> <vendor>Intel</vendor>
<feature policy='require' name='hypervisor'/>
<feature policy='require' name='osxsave'/>
<feature policy='require' name='pcid'/>
<feature policy='require' name='ss'/>
<feature policy='require' name='vme'/> <feature policy='require' name='vme'/>
<feature policy='require' name='ss'/>
<feature policy='require' name='pcid'/>
<feature policy='require' name='osxsave'/>
<feature policy='require' name='hypervisor'/>
<feature policy='disable' name='rdtscp'/> <feature policy='disable' name='rdtscp'/>
<feature policy='require' name='lahf_lm'/>
<feature policy='require' name='lm'/>
<feature policy='require' name='nx'/>
<feature policy='require' name='syscall'/>
<feature policy='require' name='avx'/>
<feature policy='require' name='xsave'/>
<feature policy='require' name='aes'/>
<feature policy='require' name='tsc-deadline'/>
<feature policy='require' name='popcnt'/>
<feature policy='require' name='x2apic'/>
<feature policy='require' name='sse4.2'/>
<feature policy='require' name='sse4.1'/>
<feature policy='require' name='cx16'/>
<feature policy='require' name='ssse3'/>
<feature policy='require' name='pclmuldq'/>
<feature policy='require' name='pni'/>
<feature policy='require' name='sse2'/>
<feature policy='require' name='sse'/>
<feature policy='require' name='fxsr'/>
<feature policy='require' name='mmx'/>
<feature policy='require' name='clflush'/>
<feature policy='require' name='pse36'/>
<feature policy='require' name='pat'/>
<feature policy='require' name='cmov'/>
<feature policy='require' name='mca'/>
<feature policy='require' name='pge'/>
<feature policy='require' name='mtrr'/>
<feature policy='require' name='sep'/>
<feature policy='require' name='apic'/>
<feature policy='require' name='cx8'/>
<feature policy='require' name='mce'/>
<feature policy='require' name='pae'/>
<feature policy='require' name='msr'/>
<feature policy='require' name='tsc'/>
<feature policy='require' name='pse'/>
<feature policy='require' name='de'/>
<feature policy='require' name='fpu'/> <feature policy='require' name='fpu'/>
<feature policy='require' name='de'/>
<feature policy='require' name='pse'/>
<feature policy='require' name='tsc'/>
<feature policy='require' name='msr'/>
<feature policy='require' name='pae'/>
<feature policy='require' name='mce'/>
<feature policy='require' name='cx8'/>
<feature policy='require' name='apic'/>
<feature policy='require' name='sep'/>
<feature policy='require' name='mtrr'/>
<feature policy='require' name='pge'/>
<feature policy='require' name='mca'/>
<feature policy='require' name='cmov'/>
<feature policy='require' name='pat'/>
<feature policy='require' name='pse36'/>
<feature policy='require' name='clflush'/>
<feature policy='require' name='mmx'/>
<feature policy='require' name='fxsr'/>
<feature policy='require' name='sse'/>
<feature policy='require' name='sse2'/>
<feature policy='require' name='pni'/>
<feature policy='require' name='pclmuldq'/>
<feature policy='require' name='ssse3'/>
<feature policy='require' name='cx16'/>
<feature policy='require' name='sse4.1'/>
<feature policy='require' name='sse4.2'/>
<feature policy='require' name='x2apic'/>
<feature policy='require' name='popcnt'/>
<feature policy='require' name='tsc-deadline'/>
<feature policy='require' name='aes'/>
<feature policy='require' name='xsave'/>
<feature policy='require' name='avx'/>
<feature policy='require' name='syscall'/>
<feature policy='require' name='nx'/>
<feature policy='require' name='lm'/>
<feature policy='require' name='lahf_lm'/>
</cpu> </cpu>
<cpu mode='custom' match='exact'> <cpu mode='custom' match='exact'>
<model fallback='allow'>SandyBridge</model> <model fallback='allow'>SandyBridge</model>
<vendor>Intel</vendor> <vendor>Intel</vendor>
<feature policy='require' name='hypervisor'/>
<feature policy='require' name='osxsave'/>
<feature policy='require' name='pcid'/>
<feature policy='require' name='ss'/>
<feature policy='require' name='vme'/> <feature policy='require' name='vme'/>
<feature policy='require' name='ss'/>
<feature policy='require' name='pcid'/>
<feature policy='require' name='osxsave'/>
<feature policy='require' name='hypervisor'/>
<feature policy='disable' name='rdtscp'/> <feature policy='disable' name='rdtscp'/>
</cpu> </cpu>
<cpu mode='custom' match='exact'> <cpu mode='custom' match='exact'>
<model fallback='allow'>SandyBridge</model> <model fallback='allow'>SandyBridge</model>
<vendor>Intel</vendor> <vendor>Intel</vendor>
<feature policy='require' name='hypervisor'/>
<feature policy='require' name='osxsave'/>
<feature policy='require' name='pcid'/>
<feature policy='require' name='ss'/>
<feature policy='require' name='vme'/> <feature policy='require' name='vme'/>
<feature policy='require' name='ss'/>
<feature policy='require' name='pcid'/>
<feature policy='require' name='osxsave'/>
<feature policy='require' name='hypervisor'/>
<feature policy='disable' name='rdtscp'/> <feature policy='disable' name='rdtscp'/>
</cpu> </cpu>
<cpu mode='custom' match='exact'> <cpu mode='custom' match='exact'>
<model fallback='allow'>SandyBridge</model> <model fallback='allow'>SandyBridge</model>
<vendor>Intel</vendor> <vendor>Intel</vendor>
<feature policy='require' name='invtsc'/>
<feature policy='require' name='hypervisor'/>
<feature policy='require' name='osxsave'/>
<feature policy='require' name='pcid'/>
<feature policy='require' name='ss'/>
<feature policy='require' name='vme'/> <feature policy='require' name='vme'/>
<feature policy='require' name='ss'/>
<feature policy='require' name='pcid'/>
<feature policy='require' name='osxsave'/>
<feature policy='require' name='hypervisor'/>
<feature policy='require' name='invtsc'/>
<feature policy='disable' name='rdtscp'/> <feature policy='disable' name='rdtscp'/>
</cpu> </cpu>
<cpu mode='custom' match='exact'> <cpu mode='custom' match='exact'>
<arch>x86_64</arch> <arch>x86_64</arch>
<model fallback='allow'>486</model> <model fallback='allow'>486</model>
<feature policy='require' name='svm'/>
<feature policy='require' name='lahf_lm'/>
<feature policy='require' name='3dnowext'/>
<feature policy='require' name='lm'/>
<feature policy='require' name='nx'/>
<feature policy='require' name='syscall'/>
<feature policy='require' name='sse4.1'/>
<feature policy='require' name='dca'/>
<feature policy='require' name='xtpr'/>
<feature policy='require' name='cx16'/>
<feature policy='require' name='ssse3'/>
<feature policy='require' name='monitor'/>
<feature policy='require' name='pni'/>
<feature policy='require' name='pbe'/>
<feature policy='require' name='sse2'/>
<feature policy='require' name='fxsr'/>
<feature policy='require' name='mmx'/>
<feature policy='require' name='clflush'/>
<feature policy='require' name='pse36'/>
<feature policy='require' name='pat'/>
<feature policy='require' name='cmov'/>
<feature policy='require' name='mca'/>
<feature policy='require' name='pge'/>
<feature policy='require' name='mtrr'/>
<feature policy='require' name='sep'/>
<feature policy='require' name='apic'/>
<feature policy='require' name='cx8'/>
<feature policy='require' name='mce'/>
<feature policy='require' name='pae'/>
<feature policy='require' name='msr'/>
<feature policy='require' name='tsc'/>
<feature policy='require' name='de'/> <feature policy='require' name='de'/>
<feature policy='require' name='tsc'/>
<feature policy='require' name='msr'/>
<feature policy='require' name='pae'/>
<feature policy='require' name='mce'/>
<feature policy='require' name='cx8'/>
<feature policy='require' name='apic'/>
<feature policy='require' name='sep'/>
<feature policy='require' name='mtrr'/>
<feature policy='require' name='pge'/>
<feature policy='require' name='mca'/>
<feature policy='require' name='cmov'/>
<feature policy='require' name='pat'/>
<feature policy='require' name='pse36'/>
<feature policy='require' name='clflush'/>
<feature policy='require' name='mmx'/>
<feature policy='require' name='fxsr'/>
<feature policy='require' name='sse2'/>
<feature policy='require' name='pbe'/>
<feature policy='require' name='pni'/>
<feature policy='require' name='monitor'/>
<feature policy='require' name='ssse3'/>
<feature policy='require' name='cx16'/>
<feature policy='require' name='xtpr'/>
<feature policy='require' name='dca'/>
<feature policy='require' name='sse4.1'/>
<feature policy='require' name='syscall'/>
<feature policy='require' name='nx'/>
<feature policy='require' name='lm'/>
<feature policy='require' name='3dnowext'/>
<feature policy='require' name='lahf_lm'/>
<feature policy='require' name='svm'/>
<feature policy='disable' name='vme'/> <feature policy='disable' name='vme'/>
</cpu> </cpu>
<cpu mode='custom' match='exact'> <cpu mode='custom' match='exact'>
<arch>x86_64</arch> <arch>x86_64</arch>
<model fallback='allow'>Nehalem</model> <model fallback='allow'>Nehalem</model>
<feature policy='require' name='svm'/>
<feature policy='require' name='3dnowext'/>
<feature policy='require' name='dca'/>
<feature policy='require' name='xtpr'/>
<feature policy='require' name='monitor'/>
<feature policy='require' name='pbe'/> <feature policy='require' name='pbe'/>
<feature policy='disable' name='popcnt'/> <feature policy='require' name='monitor'/>
<feature policy='disable' name='sse4.2'/> <feature policy='require' name='xtpr'/>
<feature policy='require' name='dca'/>
<feature policy='require' name='3dnowext'/>
<feature policy='require' name='svm'/>
<feature policy='disable' name='sse'/> <feature policy='disable' name='sse'/>
<feature policy='disable' name='sse4.2'/>
<feature policy='disable' name='popcnt'/>
</cpu> </cpu>
<cpu mode='custom' match='exact'> <cpu mode='custom' match='exact'>
<arch>x86_64</arch> <arch>x86_64</arch>
<model fallback='allow'>qemu64</model> <model fallback='allow'>qemu64</model>
<feature policy='require' name='lahf_lm'/>
<feature policy='require' name='3dnowext'/>
<feature policy='require' name='sse4.1'/>
<feature policy='require' name='dca'/>
<feature policy='require' name='xtpr'/>
<feature policy='require' name='ssse3'/>
<feature policy='require' name='monitor'/>
<feature policy='require' name='pbe'/> <feature policy='require' name='pbe'/>
<feature policy='require' name='monitor'/>
<feature policy='require' name='ssse3'/>
<feature policy='require' name='xtpr'/>
<feature policy='require' name='dca'/>
<feature policy='require' name='sse4.1'/>
<feature policy='require' name='3dnowext'/>
<feature policy='require' name='lahf_lm'/>
<feature policy='disable' name='sse'/> <feature policy='disable' name='sse'/>
</cpu> </cpu>
<cpu mode='custom' match='exact'> <cpu mode='custom' match='exact'>
<arch>x86_64</arch> <arch>x86_64</arch>
<model fallback='allow'>Nehalem</model> <model fallback='allow'>Nehalem</model>
<feature policy='require' name='svm'/>
<feature policy='require' name='3dnowext'/>
<feature policy='require' name='dca'/>
<feature policy='require' name='xtpr'/>
<feature policy='require' name='monitor'/>
<feature policy='require' name='pbe'/> <feature policy='require' name='pbe'/>
<feature policy='disable' name='popcnt'/> <feature policy='require' name='monitor'/>
<feature policy='disable' name='sse4.2'/> <feature policy='require' name='xtpr'/>
<feature policy='require' name='dca'/>
<feature policy='require' name='3dnowext'/>
<feature policy='require' name='svm'/>
<feature policy='disable' name='sse'/> <feature policy='disable' name='sse'/>
<feature policy='disable' name='sse4.2'/>
<feature policy='disable' name='popcnt'/>
</cpu> </cpu>
<cpu mode='custom' match='exact'> <cpu mode='custom' match='exact'>
<arch>x86_64</arch> <arch>x86_64</arch>
<model fallback='allow'>Penryn</model> <model fallback='allow'>Penryn</model>
<feature policy='require' name='svm'/>
<feature policy='require' name='3dnowext'/>
<feature policy='require' name='dca'/>
<feature policy='require' name='xtpr'/>
<feature policy='require' name='monitor'/>
<feature policy='require' name='pbe'/> <feature policy='require' name='pbe'/>
<feature policy='require' name='monitor'/>
<feature policy='require' name='xtpr'/>
<feature policy='require' name='dca'/>
<feature policy='require' name='3dnowext'/>
<feature policy='require' name='svm'/>
<feature policy='disable' name='sse'/> <feature policy='disable' name='sse'/>
</cpu> </cpu>
<cpu mode='custom' match='exact'> <cpu mode='custom' match='exact'>
<arch>x86_64</arch> <arch>x86_64</arch>
<model fallback='allow'>core2duo</model> <model fallback='allow'>core2duo</model>
<feature policy='require' name='lahf_lm'/>
<feature policy='require' name='sse4.1'/>
<feature policy='require' name='dca'/>
<feature policy='require' name='xtpr'/>
<feature policy='require' name='cx16'/>
<feature policy='require' name='tm2'/>
<feature policy='require' name='est'/>
<feature policy='require' name='vmx'/>
<feature policy='require' name='ds_cpl'/>
<feature policy='require' name='pbe'/>
<feature policy='require' name='tm'/>
<feature policy='require' name='ht'/>
<feature policy='require' name='ss'/>
<feature policy='require' name='acpi'/>
<feature policy='require' name='ds'/> <feature policy='require' name='ds'/>
<feature policy='require' name='acpi'/>
<feature policy='require' name='ss'/>
<feature policy='require' name='ht'/>
<feature policy='require' name='tm'/>
<feature policy='require' name='pbe'/>
<feature policy='require' name='ds_cpl'/>
<feature policy='require' name='vmx'/>
<feature policy='require' name='est'/>
<feature policy='require' name='tm2'/>
<feature policy='require' name='cx16'/>
<feature policy='require' name='xtpr'/>
<feature policy='require' name='dca'/>
<feature policy='require' name='sse4.1'/>
<feature policy='require' name='lahf_lm'/>
</cpu> </cpu>
<cpu mode='custom' match='exact'> <cpu mode='custom' match='exact'>
<model fallback='allow'>Penryn</model> <model fallback='allow'>Penryn</model>
<feature policy='require' name='dca'/>
<feature policy='require' name='xtpr'/>
<feature policy='require' name='tm2'/>
<feature policy='require' name='est'/>
<feature policy='require' name='vmx'/>
<feature policy='require' name='ds_cpl'/>
<feature policy='require' name='monitor'/>
<feature policy='require' name='pbe'/>
<feature policy='require' name='tm'/>
<feature policy='require' name='ht'/>
<feature policy='require' name='ss'/>
<feature policy='require' name='acpi'/>
<feature policy='require' name='ds'/>
<feature policy='require' name='vme'/> <feature policy='require' name='vme'/>
<feature policy='require' name='ds'/>
<feature policy='require' name='acpi'/>
<feature policy='require' name='ss'/>
<feature policy='require' name='ht'/>
<feature policy='require' name='tm'/>
<feature policy='require' name='pbe'/>
<feature policy='require' name='monitor'/>
<feature policy='require' name='ds_cpl'/>
<feature policy='require' name='vmx'/>
<feature policy='require' name='est'/>
<feature policy='require' name='tm2'/>
<feature policy='require' name='xtpr'/>
<feature policy='require' name='dca'/>
</cpu> </cpu>
<cpu mode='custom' match='exact'> <cpu mode='custom' match='exact'>
<model fallback='allow'>pentium3</model> <model fallback='allow'>pentium3</model>
<feature policy='require' name='lahf_lm'/>
<feature policy='require' name='lm'/>
<feature policy='require' name='nx'/>
<feature policy='require' name='syscall'/>
<feature policy='require' name='sse4.1'/>
<feature policy='require' name='dca'/>
<feature policy='require' name='xtpr'/>
<feature policy='require' name='cx16'/>
<feature policy='require' name='ssse3'/>
<feature policy='require' name='tm2'/>
<feature policy='require' name='est'/>
<feature policy='require' name='vmx'/>
<feature policy='require' name='ds_cpl'/>
<feature policy='require' name='monitor'/>
<feature policy='require' name='pni'/>
<feature policy='require' name='pbe'/>
<feature policy='require' name='tm'/>
<feature policy='require' name='ht'/>
<feature policy='require' name='ss'/>
<feature policy='require' name='sse2'/>
<feature policy='require' name='acpi'/>
<feature policy='require' name='ds'/>
<feature policy='require' name='clflush'/>
<feature policy='require' name='apic'/> <feature policy='require' name='apic'/>
<feature policy='require' name='clflush'/>
<feature policy='require' name='ds'/>
<feature policy='require' name='acpi'/>
<feature policy='require' name='sse2'/>
<feature policy='require' name='ss'/>
<feature policy='require' name='ht'/>
<feature policy='require' name='tm'/>
<feature policy='require' name='pbe'/>
<feature policy='require' name='pni'/>
<feature policy='require' name='monitor'/>
<feature policy='require' name='ds_cpl'/>
<feature policy='require' name='vmx'/>
<feature policy='require' name='est'/>
<feature policy='require' name='tm2'/>
<feature policy='require' name='ssse3'/>
<feature policy='require' name='cx16'/>
<feature policy='require' name='xtpr'/>
<feature policy='require' name='dca'/>
<feature policy='require' name='sse4.1'/>
<feature policy='require' name='syscall'/>
<feature policy='require' name='nx'/>
<feature policy='require' name='lm'/>
<feature policy='require' name='lahf_lm'/>
</cpu> </cpu>
<cpu mode='custom' match='exact'> <cpu mode='custom' match='exact'>
<arch>x86_64</arch> <arch>x86_64</arch>
<model fallback='allow'>Penryn</model> <model fallback='allow'>Penryn</model>
<feature policy='require' name='3dnow'/>
<feature policy='require' name='dca'/>
<feature policy='require' name='xtpr'/>
<feature policy='require' name='tm2'/>
<feature policy='require' name='est'/>
<feature policy='require' name='vmx'/>
<feature policy='require' name='ds_cpl'/>
<feature policy='require' name='monitor'/>
<feature policy='require' name='pbe'/>
<feature policy='require' name='tm'/>
<feature policy='require' name='ht'/>
<feature policy='require' name='ss'/>
<feature policy='require' name='acpi'/>
<feature policy='require' name='ds'/>
<feature policy='require' name='vme'/> <feature policy='require' name='vme'/>
<feature policy='require' name='ds'/>
<feature policy='require' name='acpi'/>
<feature policy='require' name='ss'/>
<feature policy='require' name='ht'/>
<feature policy='require' name='tm'/>
<feature policy='require' name='pbe'/>
<feature policy='require' name='monitor'/>
<feature policy='require' name='ds_cpl'/>
<feature policy='require' name='vmx'/>
<feature policy='require' name='est'/>
<feature policy='require' name='tm2'/>
<feature policy='require' name='xtpr'/>
<feature policy='require' name='dca'/>
<feature policy='require' name='3dnow'/>
</cpu> </cpu>
<cpu mode='custom' match='exact'> <cpu mode='custom' match='exact'>
<arch>x86_64</arch> <arch>x86_64</arch>
<model fallback='allow'>Haswell</model> <model fallback='allow'>Haswell</model>
<feature policy='disable' name='rtm'/>
<feature policy='disable' name='hle'/> <feature policy='disable' name='hle'/>
<feature policy='disable' name='rtm'/>
</cpu> </cpu>
<cpu mode='custom' match='exact'> <cpu mode='custom' match='exact'>
<arch>x86_64</arch> <arch>x86_64</arch>
<model fallback='allow'>Haswell</model> <model fallback='allow'>Haswell</model>
<feature policy='disable' name='rtm'/>
<feature policy='disable' name='hle'/> <feature policy='disable' name='hle'/>
<feature policy='disable' name='rtm'/>
</cpu> </cpu>
<cpu mode='custom' match='exact'> <cpu mode='custom' match='exact'>
<arch>x86_64</arch> <arch>x86_64</arch>
<model fallback='allow'>core2duo</model> <model fallback='allow'>core2duo</model>
<feature policy='require' name='lahf_lm'/>
<feature policy='require' name='popcnt'/>
<feature policy='require' name='sse4.2'/>
<feature policy='require' name='sse4.1'/>
<feature policy='require' name='dca'/>
<feature policy='require' name='xtpr'/>
<feature policy='require' name='cx16'/>
<feature policy='require' name='tm2'/>
<feature policy='require' name='est'/>
<feature policy='require' name='vmx'/>
<feature policy='require' name='ds_cpl'/>
<feature policy='require' name='pbe'/>
<feature policy='require' name='tm'/>
<feature policy='require' name='ht'/>
<feature policy='require' name='ss'/>
<feature policy='require' name='acpi'/>
<feature policy='require' name='ds'/> <feature policy='require' name='ds'/>
<feature policy='require' name='acpi'/>
<feature policy='require' name='ss'/>
<feature policy='require' name='ht'/>
<feature policy='require' name='tm'/>
<feature policy='require' name='pbe'/>
<feature policy='require' name='ds_cpl'/>
<feature policy='require' name='vmx'/>
<feature policy='require' name='est'/>
<feature policy='require' name='tm2'/>
<feature policy='require' name='cx16'/>
<feature policy='require' name='xtpr'/>
<feature policy='require' name='dca'/>
<feature policy='require' name='sse4.1'/>
<feature policy='require' name='sse4.2'/>
<feature policy='require' name='popcnt'/>
<feature policy='require' name='lahf_lm'/>
</cpu> </cpu>
<cpu mode='custom' match='exact'> <cpu mode='custom' match='exact'>
<arch>x86_64</arch> <arch>x86_64</arch>
<model fallback='allow'>pentium3</model> <model fallback='allow'>pentium3</model>
<feature policy='require' name='lahf_lm'/>
<feature policy='require' name='lm'/>
<feature policy='require' name='nx'/>
<feature policy='require' name='syscall'/>
<feature policy='require' name='popcnt'/>
<feature policy='require' name='sse4.2'/>
<feature policy='require' name='sse4.1'/>
<feature policy='require' name='dca'/>
<feature policy='require' name='xtpr'/>
<feature policy='require' name='cx16'/>
<feature policy='require' name='ssse3'/>
<feature policy='require' name='tm2'/>
<feature policy='require' name='est'/>
<feature policy='require' name='vmx'/>
<feature policy='require' name='ds_cpl'/>
<feature policy='require' name='monitor'/>
<feature policy='require' name='pni'/>
<feature policy='require' name='pbe'/>
<feature policy='require' name='tm'/>
<feature policy='require' name='ht'/>
<feature policy='require' name='ss'/>
<feature policy='require' name='sse2'/>
<feature policy='require' name='acpi'/>
<feature policy='require' name='ds'/>
<feature policy='require' name='clflush'/>
<feature policy='require' name='apic'/> <feature policy='require' name='apic'/>
<feature policy='require' name='clflush'/>
<feature policy='require' name='ds'/>
<feature policy='require' name='acpi'/>
<feature policy='require' name='sse2'/>
<feature policy='require' name='ss'/>
<feature policy='require' name='ht'/>
<feature policy='require' name='tm'/>
<feature policy='require' name='pbe'/>
<feature policy='require' name='pni'/>
<feature policy='require' name='monitor'/>
<feature policy='require' name='ds_cpl'/>
<feature policy='require' name='vmx'/>
<feature policy='require' name='est'/>
<feature policy='require' name='tm2'/>
<feature policy='require' name='ssse3'/>
<feature policy='require' name='cx16'/>
<feature policy='require' name='xtpr'/>
<feature policy='require' name='dca'/>
<feature policy='require' name='sse4.1'/>
<feature policy='require' name='sse4.2'/>
<feature policy='require' name='popcnt'/>
<feature policy='require' name='syscall'/>
<feature policy='require' name='nx'/>
<feature policy='require' name='lm'/>
<feature policy='require' name='lahf_lm'/>
</cpu> </cpu>
<cpu mode='custom' match='exact'> <cpu mode='custom' match='exact'>
<arch>x86_64</arch> <arch>x86_64</arch>
<model fallback='allow'>Nehalem</model> <model fallback='allow'>Nehalem</model>
<feature policy='require' name='dca'/>
<feature policy='require' name='xtpr'/>
<feature policy='require' name='tm2'/>
<feature policy='require' name='est'/>
<feature policy='require' name='vmx'/>
<feature policy='require' name='ds_cpl'/>
<feature policy='require' name='monitor'/>
<feature policy='require' name='pbe'/>
<feature policy='require' name='tm'/>
<feature policy='require' name='ht'/>
<feature policy='require' name='ss'/>
<feature policy='require' name='acpi'/>
<feature policy='require' name='ds'/>
<feature policy='require' name='vme'/> <feature policy='require' name='vme'/>
<feature policy='require' name='ds'/>
<feature policy='require' name='acpi'/>
<feature policy='require' name='ss'/>
<feature policy='require' name='ht'/>
<feature policy='require' name='tm'/>
<feature policy='require' name='pbe'/>
<feature policy='require' name='monitor'/>
<feature policy='require' name='ds_cpl'/>
<feature policy='require' name='vmx'/>
<feature policy='require' name='est'/>
<feature policy='require' name='tm2'/>
<feature policy='require' name='xtpr'/>
<feature policy='require' name='dca'/>
</cpu> </cpu>
<cpu mode='custom' match='exact'> <cpu mode='custom' match='exact'>
<arch>x86_64</arch> <arch>x86_64</arch>
<model fallback='allow'>Penryn</model> <model fallback='allow'>Penryn</model>
<feature policy='require' name='svm'/>
<feature policy='require' name='3dnowext'/>
<feature policy='require' name='monitor'/>
<feature policy='require' name='pbe'/> <feature policy='require' name='pbe'/>
<feature policy='require' name='monitor'/>
<feature policy='require' name='3dnowext'/>
<feature policy='require' name='svm'/>
<feature policy='disable' name='sse'/> <feature policy='disable' name='sse'/>
</cpu> </cpu>
...@@ -8,7 +8,7 @@ QEMU_AUDIO_DRV=none \ ...@@ -8,7 +8,7 @@ QEMU_AUDIO_DRV=none \
-name QEMUGuest1 \ -name QEMUGuest1 \
-S \ -S \
-M pc \ -M pc \
-cpu Haswell,-rtm,-hle \ -cpu Haswell,-hle,-rtm \
-m 214 \ -m 214 \
-smp 6 \ -smp 6 \
-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \ -uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
......
...@@ -8,7 +8,7 @@ QEMU_AUDIO_DRV=none \ ...@@ -8,7 +8,7 @@ QEMU_AUDIO_DRV=none \
-name QEMUGuest1 \ -name QEMUGuest1 \
-S \ -S \
-M pc \ -M pc \
-cpu qemu64,-svm,-lm,-nx,-syscall,-clflush,-pse36,-mca \ -cpu qemu64,-mca,-pse36,-clflush,-syscall,-nx,-lm,-svm \
-m 214 \ -m 214 \
-smp 6 \ -smp 6 \
-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \ -uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
......
...@@ -8,7 +8,7 @@ QEMU_AUDIO_DRV=none \ ...@@ -8,7 +8,7 @@ QEMU_AUDIO_DRV=none \
-name QEMUGuest1 \ -name QEMUGuest1 \
-S \ -S \
-M pc \ -M pc \
-cpu core2duo,+lahf_lm,+3dnowext,+xtpr,+ds_cpl,+tm,+ht,+ds,-nx \ -cpu core2duo,+ds,+ht,+tm,+ds_cpl,+xtpr,+3dnowext,+lahf_lm,-nx \
-m 214 \ -m 214 \
-smp 6 \ -smp 6 \
-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \ -uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
......
...@@ -8,7 +8,7 @@ QEMU_AUDIO_DRV=none \ ...@@ -8,7 +8,7 @@ QEMU_AUDIO_DRV=none \
-name QEMUGuest1 \ -name QEMUGuest1 \
-S \ -S \
-M pc \ -M pc \
-cpu core2duo,+lahf_lm,+3dnowext,+xtpr,+ds_cpl,+tm,+ht,+ds,-nx \ -cpu core2duo,+ds,+ht,+tm,+ds_cpl,+xtpr,+3dnowext,+lahf_lm,-nx \
-m 214 \ -m 214 \
-smp 6 \ -smp 6 \
-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \ -uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
......
...@@ -8,8 +8,8 @@ QEMU_AUDIO_DRV=none \ ...@@ -8,8 +8,8 @@ QEMU_AUDIO_DRV=none \
-name QEMUGuest1 \ -name QEMUGuest1 \
-S \ -S \
-M pc \ -M pc \
-cpu Penryn,+xtpr,+tm2,+est,+vmx,+ds_cpl,+monitor,+pbe,+tm,+ht,+ss,+acpi,+ds,\ -cpu Penryn,+vme,+ds,+acpi,+ss,+ht,+tm,+pbe,+monitor,+ds_cpl,+vmx,+est,+tm2,\
+vme,-sse4.1 \ +xtpr,-sse4.1 \
-m 214 \ -m 214 \
-smp 6 \ -smp 6 \
-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \ -uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
......
...@@ -8,8 +8,8 @@ QEMU_AUDIO_DRV=none \ ...@@ -8,8 +8,8 @@ QEMU_AUDIO_DRV=none \
-name QEMUGuest1 \ -name QEMUGuest1 \
-S \ -S \
-M pc \ -M pc \
-cpu 'core2duo,vendor=Libvirt QEMU,+lahf_lm,+xtpr,+cx16,+tm2,+est,+vmx,+ds_cpl,\ -cpu 'core2duo,vendor=Libvirt QEMU,+ds,+acpi,+ss,+ht,+tm,+pbe,+ds_cpl,+vmx,+est,\
+pbe,+tm,+ht,+ss,+acpi,+ds' \ +tm2,+cx16,+xtpr,+lahf_lm' \
-m 214 \ -m 214 \
-smp 6 \ -smp 6 \
-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \ -uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
......
...@@ -8,8 +8,8 @@ QEMU_AUDIO_DRV=none \ ...@@ -8,8 +8,8 @@ QEMU_AUDIO_DRV=none \
-name QEMUGuest1 \ -name QEMUGuest1 \
-S \ -S \
-M pc \ -M pc \
-cpu core2duo,+lahf_lm,+xtpr,+cx16,+tm2,+est,+vmx,+ds_cpl,+pbe,+tm,+ht,+ss,+acpi,\ -cpu core2duo,+ds,+acpi,+ss,+ht,+tm,+pbe,+ds_cpl,+vmx,+est,+tm2,+cx16,+xtpr,\
+ds \ +lahf_lm \
-m 214 \ -m 214 \
-smp 6 \ -smp 6 \
-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \ -uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
......
...@@ -8,8 +8,8 @@ QEMU_AUDIO_DRV=none \ ...@@ -8,8 +8,8 @@ QEMU_AUDIO_DRV=none \
-name QEMUGuest1 \ -name QEMUGuest1 \
-S \ -S \
-M pc \ -M pc \
-cpu core2duo,+lahf_lm,+xtpr,+cx16,+tm2,+est,+vmx,+ds_cpl,+pbe,+tm,+ht,+ss,+acpi,\ -cpu core2duo,+ds,+acpi,+ss,+ht,+tm,+pbe,+ds_cpl,+vmx,+est,+tm2,+cx16,+xtpr,\
+ds \ +lahf_lm \
-m 214 \ -m 214 \
-smp 6 \ -smp 6 \
-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \ -uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
......
...@@ -8,8 +8,8 @@ QEMU_AUDIO_DRV=none \ ...@@ -8,8 +8,8 @@ QEMU_AUDIO_DRV=none \
-name QEMUGuest1 \ -name QEMUGuest1 \
-S \ -S \
-M pc \ -M pc \
-cpu core2duo,+lahf_lm,+xtpr,+cx16,+tm2,+est,+vmx,+ds_cpl,+pbe,+tm,+ht,+ss,+acpi,\ -cpu core2duo,+ds,+acpi,+ss,+ht,+tm,+pbe,+ds_cpl,+vmx,+est,+tm2,+cx16,+xtpr,\
+ds,-lm,-nx,-syscall \ +lahf_lm,-syscall,-nx,-lm \
-m 214 \ -m 214 \
-smp 6 \ -smp 6 \
-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \ -uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
......
...@@ -8,7 +8,7 @@ QEMU_AUDIO_DRV=none \ ...@@ -8,7 +8,7 @@ QEMU_AUDIO_DRV=none \
-name QEMUGuest1 \ -name QEMUGuest1 \
-S \ -S \
-M pc \ -M pc \
-cpu core2duo,+lahf_lm,+3dnowext,+xtpr,+est,+vmx,+ds_cpl,+tm,+ht,+acpi,+ds,-nx \ -cpu core2duo,+ds,+acpi,+ht,+tm,+ds_cpl,+vmx,+est,+xtpr,+3dnowext,+lahf_lm,-nx \
-m 214 \ -m 214 \
-smp 6 \ -smp 6 \
-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \ -uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
......
...@@ -8,8 +8,8 @@ QEMU_AUDIO_DRV=spice \ ...@@ -8,8 +8,8 @@ QEMU_AUDIO_DRV=spice \
-name f14 \ -name f14 \
-S \ -S \
-M pc \ -M pc \
-cpu core2duo,+lahf_lm,+xtpr,+cx16,+tm2,+est,+vmx,+ds_cpl,+pbe,+tm,+ht,+ss,+acpi,\ -cpu core2duo,+ds,+acpi,+ss,+ht,+tm,+pbe,+ds_cpl,+vmx,+est,+tm2,+cx16,+xtpr,\
+ds \ +lahf_lm \
-m 1024 \ -m 1024 \
-smp 2 \ -smp 2 \
-uuid 553effab-b5e1-2d80-dfe3-da4344826c43 \ -uuid 553effab-b5e1-2d80-dfe3-da4344826c43 \
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册