diff --git a/src/cpu/cpu_x86.c b/src/cpu/cpu_x86.c index d0cb65365ba28472364e7ff348057739105d8181..a05cea66d5135276b834a2edde92d6d0500521bd 100644 --- a/src/cpu/cpu_x86.c +++ b/src/cpu/cpu_x86.c @@ -1488,6 +1488,11 @@ x86Compute(virCPUDefPtr host, if (!(guest_model = x86ModelCopy(host_model))) goto error; + if (cpu->vendor && + virCPUx86DataAddCPUID(guest_model->data, + &host_model->vendor->cpuid) < 0) + goto error; + if (cpu->type == VIR_CPU_TYPE_GUEST && cpu->match == VIR_CPU_MATCH_EXACT) x86DataSubtract(guest_model->data, diff->data); diff --git a/tests/cputestdata/x86-host+host+host-model,models,Penryn-result.xml b/tests/cputestdata/x86-host+host+host-model,models,Penryn-result.xml index 2696356d98accbae97c6e92716fa6ed469b473b1..63d5e9075f507c3d7a01cebeb7eb1ec3a5d4dda1 100644 --- a/tests/cputestdata/x86-host+host+host-model,models,Penryn-result.xml +++ b/tests/cputestdata/x86-host+host+host-model,models,Penryn-result.xml @@ -1,6 +1,7 @@ x86_64 core2duo + Intel