aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Kiszka <jan.kiszka@web.de>2009-06-07 11:30:25 +0200
committerBlue Swirl <blauwirbel@gmail.com>2009-06-07 16:40:22 +0300
commit168ccc11c323af885de353d9e045c0c1f78f6f2f (patch)
treed75e9a932496d36c94f274aad5d0039f6df0f6a2
parent4ca1a9c62af1b98a359254546cd8e9999c892670 (diff)
kvm: Improve upgrade notes when facing unsupported kernels
Users complained that it is not obvious what to do when kvm refuses to build or run due to an unsupported host kernel, so let's improve the hints. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
-rwxr-xr-xconfigure6
-rw-r--r--kvm-all.c10
2 files changed, 11 insertions, 5 deletions
diff --git a/configure b/configure
index 3a34e00e43..89e7f5362a 100755
--- a/configure
+++ b/configure
@@ -1158,7 +1158,9 @@ EOF
| grep "error: " \
| awk -F "error: " '{if (NR>1) printf(", "); printf("%s",$2);}'`
if test "$kvmerr" != "" ; then
- kvm="no - (${kvmerr})"
+ kvm="no - (${kvmerr})\n\
+ NOTE: To enable KVM support, update your kernel to 2.6.29+ or install \
+recent kvm-kmod from http://sourceforge.net/projects/kvm."
fi
fi
fi
@@ -1377,7 +1379,7 @@ echo "vde support $vde"
echo "AIO support $aio"
echo "IO thread $io_thread"
echo "Install blobs $blobs"
-echo "KVM support $kvm"
+echo -e "KVM support $kvm"
echo "fdt support $fdt"
echo "preadv support $preadv"
diff --git a/kvm-all.c b/kvm-all.c
index c89e3b1cfe..b24d8766f4 100644
--- a/kvm-all.c
+++ b/kvm-all.c
@@ -404,6 +404,9 @@ static void kvm_reset_vcpus(void *opaque)
int kvm_init(int smp_cpus)
{
+ static const char upgrade_note[] =
+ "Please upgrade to at least kernel 2.6.29 or recent kvm-kmod\n"
+ "(see http://sourceforge.net/projects/kvm).\n";
KVMState *s;
int ret;
int i;
@@ -454,7 +457,8 @@ int kvm_init(int smp_cpus)
*/
if (!kvm_check_extension(s, KVM_CAP_USER_MEMORY)) {
ret = -EINVAL;
- fprintf(stderr, "kvm does not support KVM_CAP_USER_MEMORY\n");
+ fprintf(stderr, "kvm does not support KVM_CAP_USER_MEMORY\n%s",
+ upgrade_note);
goto err;
}
@@ -465,8 +469,8 @@ int kvm_init(int smp_cpus)
ret = -EINVAL;
fprintf(stderr,
- "KVM kernel module broken (DESTROY_MEMORY_REGION)\n"
- "Please upgrade to at least kvm-81.\n");
+ "KVM kernel module broken (DESTROY_MEMORY_REGION).\n%s",
+ upgrade_note);
goto err;
}