From 539d73dbf64cb35558ffd3992f82e0b482cd0e70 Mon Sep 17 00:00:00 2001 From: Viktor Mihajlovski Date: Mon, 10 Dec 2012 11:00:05 +0100 Subject: [PATCH] S390: Assign default model "virtio" for network interfaces If a network interface model is not specified, libvirt will run into an unchecked NULL pointer coredump. On the other hand if the empty model is ignored, a PCI bus address would be generated, which is not supported by S390. Since the only valid network type model for S390 is virtio, we use this as the default value, which is the same for QEMU. Signed-off-by: Viktor Mihajlovski --- src/qemu/qemu_command.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c index 5335dcf5a1..9009bd296c 100644 --- a/src/qemu/qemu_command.c +++ b/src/qemu/qemu_command.c @@ -810,9 +810,14 @@ qemuDomainPrimeS390VirtioDevices(virDomainDefPtr def, } for (i = 0; i < def->nnets ; i++) { + if (STRPREFIX(def->os.arch, "s390") && + def->nets[i]->model == NULL) { + def->nets[i]->model = strdup("virtio"); + } if (STREQ(def->nets[i]->model,"virtio") && - def->nets[i]->info.type == VIR_DOMAIN_DEVICE_ADDRESS_TYPE_NONE) + def->nets[i]->info.type == VIR_DOMAIN_DEVICE_ADDRESS_TYPE_NONE) { def->nets[i]->info.type = type; + } } for (i = 0; i < def->ncontrollers ; i++) {