
On Fri, Nov 04, 2016 at 11:00:29 -0400, Jason J. Herne wrote:
On 11/03/2016 08:54 AM, Jiri Denemark wrote:
On Wed, Nov 02, 2016 at 16:34:32 -0400, Jason J. Herne wrote:
From: "Collin L. Walling" <walling@linux.vnet.ibm.com>
On s390 , the host's features are heavily influenced by not only the host hardware but also by hardware microcode level, host OS version, qemu version and kvm version. In this environment it does not make sense to attempt to report exact host details. Rather than use the generic "host" we leave this field blank.
Signed-off-by: Collin L. Walling <walling@linux.vnet.ibm.com> Signed-off-by: Jason J. Herne <jjherne@linux.vnet.ibm.com> --- src/cpu/cpu_s390.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/cpu/cpu_s390.c b/src/cpu/cpu_s390.c index 0f94084..c75eacb 100644 --- a/src/cpu/cpu_s390.c +++ b/src/cpu/cpu_s390.c @@ -59,7 +59,7 @@ s390Decode(virCPUDefPtr cpu, virCheckFlags(VIR_CONNECT_BASELINE_CPU_EXPAND_FEATURES, -1);
if (cpu->model == NULL && - VIR_STRDUP(cpu->model, "host") < 0) + VIR_STRDUP(cpu->model, "") < 0) return -1;
return 0;
I think this function shouldn't do anything. Reporting "host" or even "" as host CPU is pointless. If we cannot provide anything reasonable, we should not report it at all.
I would agree. But virsh domcapabilities only indicates support for host-model mode if we have something in cpu->hostModel.
virDomainCapsCPUFormat() ... if (cpu->hostModel) { virBufferAddLit(buf, "supported='yes'>\n");
It also causes the guest to fail when trying to use host-model mode because virQEMUCapsInitHostCPUModel() skips setting qemuCaps->hostCPUModel if caps->host.cpu->model does not exist.
And that's what you need to change. As I wrote in my comments to patch 4/5, virQEMUCapsInitHostCPUModel() is the place where qemuCaps->hostCPUModel should be initialized with the host CPU returned by QEMU. If you do that, all the issues you mentioned will go away. Jirka