--- libvirt-1.2.8.orig/src/qemu/qemu_command.c +++ libvirt-1.2.8/src/qemu/qemu_command.c @@ -1795,7 +1795,8 @@ qemuDomainMachineIsI440FX(virDomainDefPt STRPREFIX(def->os.machine, "pc-0.") || STRPREFIX(def->os.machine, "pc-1.") || STRPREFIX(def->os.machine, "pc-i440") || - STRPREFIX(def->os.machine, "rhel")); + STRPREFIX(def->os.machine, "rhel") || + STREQ(def->os.machine, "ubuntu")); } @@ -1995,7 +1996,8 @@ qemuAssignDevicePCISlots(virDomainDefPtr STRPREFIX(def->os.machine, "pc-1.") || STRPREFIX(def->os.machine, "pc-i440") || STREQ(def->os.machine, "pc") || - STRPREFIX(def->os.machine, "rhel")) && + STRPREFIX(def->os.machine, "rhel") || + STREQ(def->os.machine, "ubuntu")) && qemuValidateDevicePCISlotsPIIX3(def, qemuCaps, addrs) < 0) { goto error; } --- libvirt-1.2.8.orig/src/qemu/qemu_domain.c +++ libvirt-1.2.8/src/qemu/qemu_domain.c @@ -739,7 +739,8 @@ qemuDomainDefPostParse(virDomainDefPtr d !STRPREFIX(def->os.machine, "pc-1.") && !STRPREFIX(def->os.machine, "pc-i440") && !STREQ(def->os.machine, "pc") && - !STRPREFIX(def->os.machine, "rhel")) + !STRPREFIX(def->os.machine, "rhel") && + !STREQ(def->os.machine, "ubuntu")) break; addPCIRoot = true; break;