On Wed, Nov 02, 2016 at 16:34:31 -0400, Jason J. Herne wrote: > Implement getModels for s390. It returns an empty list. This means libvirt > supports all models Qemu knows about. > > Implement compare for s390. Required to test the guest against the host for > guest cpu model runnability checking. We always return IDENTICAL to bypass > Libvirt's checking. s390 will rely on Qemu to perform the runnability checking. > > Implement update for s390. required to support use of cpu "host-model" mode. > > Signed-off-by: Jason J. Herne <jjherne@xxxxxxxxxxxxxxxxxx> > --- > src/cpu/cpu_s390.c | 31 +++++++++++++++++++++++++++++-- > 1 file changed, 29 insertions(+), 2 deletions(-) > > diff --git a/src/cpu/cpu_s390.c b/src/cpu/cpu_s390.c > index fb352a0..0f94084 100644 > --- a/src/cpu/cpu_s390.c > +++ b/src/cpu/cpu_s390.c > @@ -71,16 +71,43 @@ s390DataFree(virCPUDataPtr data) > VIR_FREE(data); > } > > +static int > +s390GetModels(char ***models ATTRIBUTE_UNUSED) > +{ > + return 0; > +} This is almost an equivalent of not defining the function at all. Except that your code leaves models uninitialized. Keeping cpuArchDriver.getModels == NULL will do a better job (see cpu.c): if (!driver->getModels) { if (models) *models = NULL; return 0; } > + > +static virCPUCompareResult > +virCPUs390Compare(virCPUDefPtr host ATTRIBUTE_UNUSED, > + virCPUDefPtr cpu ATTRIBUTE_UNUSED, > + bool failMessages ATTRIBUTE_UNUSED) > +{ > + return VIR_CPU_COMPARE_IDENTICAL; > +} > + > +static int > +virCPUs390Update(virCPUDefPtr guest ATTRIBUTE_UNUSED, > + const virCPUDef *host ATTRIBUTE_UNUSED) > +{ > + /* > + * - host-passthrough not yet supported Why is it not supported? > + * - host-model needs no changes It actually needs changes. The CPU definition with mode='host-model' needs to be replaced with mode='custom' and model name and possibly features need to be set too. > + * - custom mode ... ??? Custom mode would need to be changed only when match='minimum' is used. If that's not supported with s390, we should report an error. Hmm, which reminds me, we should probably report what matches are supported in domain capabilities. Jirka -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list