From ec38a9b641108bba14f8be1c71c50cc85e6f9f86 Mon Sep 17 00:00:00 2001 From: Robert Yang Date: Thu, 25 Jun 2015 01:56:03 -0700 Subject: runqemu: enable kvm when use tap under sudo Enable kvm support automatically when use tap interface under sudo, the thought is, if sudo works well, and qemu-native has been built with kvm support, and kvm can be enabled, then enable it, it can be disabled by nokvm option. The previous command: $ runqemu qemux86 kvm may not work since it checks the current user's read/write permission on /dev/kvm and /dev/vhost-net but failed without sudo, it can't use sudo to check them since sudo is not a must, sudo is only required when need create tap interface, this patch can enable it automatically. Enable kvm can improve qemu's performance a lot, when test perl-5.22's lib/warnings.t on qemux86-64, 70 times improved. Signed-off-by: Robert Yang --- scripts/runqemu | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'scripts/runqemu') diff --git a/scripts/runqemu b/scripts/runqemu index 78dfd1a047..01f6cbff97 100755 --- a/scripts/runqemu +++ b/scripts/runqemu @@ -33,6 +33,7 @@ usage() { echo " nographic - disables video console" echo " serial - enables a serial console on /dev/ttyS0" echo " kvm - enables KVM when running qemux86/qemux86-64 (VT-capable CPU required)" + echo " nokvm - disables KVM" echo " publicvnc - enable a VNC server open to all hosts" echo " qemuparams=\"xyz\" - specify custom parameters to QEMU" echo " bootparams=\"xyz\" - specify custom kernel parameters during boot" @@ -68,8 +69,10 @@ SCRIPT_QEMU_OPT="" SCRIPT_QEMU_EXTRA_OPT="" SCRIPT_KERNEL_OPT="" SERIALSTDIO="" -KVM_ENABLED="no" +KVM_ENABLED="maybe" +KVM_CAPABLE="`grep -q 'vmx\|svm' /proc/cpuinfo && echo 1`" KVM_ACTIVE="no" +KVM_SUDO="" GRAPHIC="yes" PUBLICVNC="no" @@ -181,7 +184,9 @@ while true; do ;; "kvm") KVM_ENABLED="yes" - KVM_CAPABLE=`grep -q 'vmx\|svm' /proc/cpuinfo && echo 1` + ;; + "nokvm") + KVM_ENABLED="no" ;; "slirp") SLIRP_ENABLED="yes" -- cgit 1.2.3-korg