[libvirt] [PATCH] qemu: add default pci-root device to mips*/malta guests
Cole Robinson
crobinso at redhat.com
Wed May 4 13:54:22 UTC 2016
Thanks for the patch.
Can you provide a working mips XML config? We don't have one in the unit test
suite.
On 05/03/2016 05:23 PM, Aurelien Jarno wrote:
> The MIPS Malta board has a root PCI controller. It is not sent during
> migration, so it needs to be added by default.
>
I'm a bit confused by the migration reference... does specifying the PCI
controller on the command line somehow convince qemu to send the PCI device
state during migration? Or am I
> Signed-off-by: Aurelien Jarno <aurelien at aurel32.net>
> ---
> src/qemu/qemu_domain.c | 15 ++++++++++++++-
> src/qemu/qemu_domain.h | 1 +
> 2 files changed, 15 insertions(+), 1 deletion(-)
>
The patch looks fine to me but should have some test suite representation,
tests/qemuxml2argvtest at least
- Cole
> diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c
> index 173f82c..75b0545 100644
> --- a/src/qemu/qemu_domain.c
> +++ b/src/qemu/qemu_domain.c
> @@ -1763,6 +1763,14 @@ qemuDomainDefAddDefaultDevices(virDomainDefPtr def,
> addPCIeRoot = virQEMUCapsGet(qemuCaps, QEMU_CAPS_OBJECT_GPEX);
> break;
>
> + case VIR_ARCH_MIPS:
> + case VIR_ARCH_MIPSEL:
> + case VIR_ARCH_MIPS64:
> + case VIR_ARCH_MIPS64EL:
> + if (qemuDomainMachineIsMalta(def))
> + addPCIRoot = true;
> + break;
> +
> case VIR_ARCH_PPC64:
> case VIR_ARCH_PPC64LE:
> addPCIRoot = true;
> @@ -4654,6 +4662,11 @@ qemuDomainMachineIsVirt(const virDomainDef *def)
> STRPREFIX(def->os.machine, "virt-");
> }
>
> +bool
> +qemuDomainMachineIsMalta(const virDomainDef *def)
> +{
> + return STRPREFIX(def->os.machine, "malta");
> +}
>
> static bool
> qemuCheckMemoryDimmConflict(const virDomainDef *def,
> @@ -4830,7 +4843,7 @@ bool
> qemuDomainMachineHasBuiltinIDE(const virDomainDef *def)
> {
> return qemuDomainMachineIsI440FX(def) ||
> - STREQ(def->os.machine, "malta") ||
> + qemuDomainMachineIsMalta(def) ||
> STREQ(def->os.machine, "sun4u") ||
> STREQ(def->os.machine, "g3beige");
> }
> diff --git a/src/qemu/qemu_domain.h b/src/qemu/qemu_domain.h
> index 95f821c..adba5fa 100644
> --- a/src/qemu/qemu_domain.h
> +++ b/src/qemu/qemu_domain.h
> @@ -585,6 +585,7 @@ bool qemuDomainMachineIsI440FX(const virDomainDef *def);
> bool qemuDomainMachineNeedsFDC(const virDomainDef *def);
> bool qemuDomainMachineIsS390CCW(const virDomainDef *def);
> bool qemuDomainMachineIsVirt(const virDomainDef *def);
> +bool qemuDomainMachineIsMalta(const virDomainDef *def);
> bool qemuDomainMachineHasBuiltinIDE(const virDomainDef *def);
>
> int qemuDomainUpdateCurrentMemorySize(virQEMUDriverPtr driver,
>
More information about the libvir-list
mailing list