mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-12-22 05:35:25 +00:00
qemu: domain: Check arch in qemuDomainMakeCPUMigratable
The content is arch specific and checking for Icelake-Server CPU model on non-x86 architectures does not make sense. Signed-off-by: Jiri Denemark <jdenemar@redhat.com> Reviewed-by: Tim Wiederhake <twiederh@redhat.com> Reviewed-by: Peter Krempa <pkrempa@redhat.com>
This commit is contained in:
parent
5fbfa5ab8a
commit
909564c365
@ -6644,10 +6644,15 @@ qemuDomainDefCopy(virQEMUDriver *driver,
|
||||
|
||||
|
||||
int
|
||||
qemuDomainMakeCPUMigratable(virCPUDef *cpu)
|
||||
qemuDomainMakeCPUMigratable(virArch arch,
|
||||
virCPUDef *cpu)
|
||||
{
|
||||
if (cpu->mode == VIR_CPU_MODE_CUSTOM &&
|
||||
STREQ_NULLABLE(cpu->model, "Icelake-Server")) {
|
||||
if (cpu->mode != VIR_CPU_MODE_CUSTOM ||
|
||||
!cpu->model ||
|
||||
!ARCH_IS_X86(arch))
|
||||
return 0;
|
||||
|
||||
if (STREQ(cpu->model, "Icelake-Server")) {
|
||||
/* Originally Icelake-Server CPU model contained pconfig CPU feature.
|
||||
* It was never actually enabled and thus it was removed. To enable
|
||||
* migration to QEMU 3.1.0 (with both new and old libvirt), we
|
||||
@ -6837,7 +6842,8 @@ qemuDomainDefFormatBufInternal(virQEMUDriver *driver,
|
||||
return -1;
|
||||
}
|
||||
|
||||
if (def->cpu && qemuDomainMakeCPUMigratable(def->cpu) < 0)
|
||||
if (def->cpu &&
|
||||
qemuDomainMakeCPUMigratable(def->os.arch, def->cpu) < 0)
|
||||
return -1;
|
||||
|
||||
/* Old libvirt doesn't understand <audio> elements so
|
||||
|
@ -1048,7 +1048,8 @@ qemuDomainSupportsCheckpointsBlockjobs(virDomainObj *vm)
|
||||
G_GNUC_WARN_UNUSED_RESULT;
|
||||
|
||||
int
|
||||
qemuDomainMakeCPUMigratable(virCPUDef *cpu);
|
||||
qemuDomainMakeCPUMigratable(virArch arch,
|
||||
virCPUDef *cpu);
|
||||
|
||||
int
|
||||
qemuDomainInitializePflashStorageSource(virDomainObj *vm,
|
||||
|
@ -545,7 +545,7 @@ qemuMigrationCookieAddCPU(qemuMigrationCookie *mig,
|
||||
|
||||
mig->cpu = virCPUDefCopy(vm->def->cpu);
|
||||
|
||||
if (qemuDomainMakeCPUMigratable(mig->cpu) < 0)
|
||||
if (qemuDomainMakeCPUMigratable(vm->def->os.arch, mig->cpu) < 0)
|
||||
return -1;
|
||||
|
||||
mig->flags |= QEMU_MIGRATION_COOKIE_CPU;
|
||||
|
Loading…
Reference in New Issue
Block a user