On 01/09/2012 01:05 PM, Laine Stump wrote: > This *kind of* addresses: > > https://bugzilla.redhat.com/show_bug.cgi?id=772395 > > (it doesn't eliminate the failure to start, but causes libvirt to give > a better idea about the cause of the failure). > > If a guest uses a kvm emulator (e.g. /usr/bin/qemu-kvm) and the guest > is started when kvm isn't available (either because virtualization is > unavailable / has been disabled in the BIOS, or the kvm modules > haven't been loaded for some reason), a semi-cryptic error message is > logged: > > libvirtError: internal error Child process (LC_ALL=C > PATH=/sbin:/usr/sbin:/bin:/usr/bin /usr/bin/qemu-kvm -device ? -device > pci-assign,? -device virtio-blk-pci,? -device virtio-net-pci,?) status > unexpected: exit status 1 > > This patch notices at process start that a guest needs kvm, and checks > for the presence of /dev/kvm (a reasonable indicator that kvm is > available) before trying to execute the qemu binary. If kvm isn't > available, a more useful (too verbose??) error is logged. Nah, I think it is useful to have a message that long, as I have seen quite a few people on the IRC channel (myself included, at one point) that have forgotten to turn on the BIOS to allow kvm. ACK. > + if (vm->def->virtType == VIR_DOMAIN_VIRT_KVM) { > + VIR_DEBUG("Checking for KVM availability"); > + if (access("/dev/kvm", F_OK) != 0) { > + qemuReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", > + _("Domain requires KVM, but it is not available. " > + "Check that virtualization is enabled in the host BIOS, " > + "and host configuration is setup to load the kvm modules.")); > + goto cleanup; > + } > + } -- Eric Blake eblake@xxxxxxxxxx +1-919-301-3266 Libvirt virtualization library http://libvirt.org
Attachment:
signature.asc
Description: OpenPGP digital signature
-- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list