SCRIPT_QEMU_EXTRA_OPT=""
SCRIPT_KERNEL_OPT=""
SERIALSTDIO=""
+KVM_ENABLED="no"
+KVM_ACTIVE="no"
# Determine whether the file is a kernel or QEMU image, and set the
# appropriate variables
# Parse command line args without requiring specific ordering. It's a
# bit more complex, but offers a great user experience.
-KVM_ENABLED="no"
while true; do
arg=${1}
case "$arg" in
exit 1;
fi
if [ -w /dev/kvm -a -r /dev/kvm ]; then
- if [ "x$MACHINE" = "xqemux86" ]; then
- SCRIPT_QEMU_OPT="$SCRIPT_QEMU_OPT -enable-kvm -cpu kvm32"
- elif [ "x$MACHINE" = "xqemux86-64" ]; then
- SCRIPT_QEMU_OPT="$SCRIPT_QEMU_OPT -enable-kvm -cpu kvm64"
- fi
+ SCRIPT_QEMU_OPT="$SCRIPT_QEMU_OPT -enable-kvm"
KVM_ACTIVE="yes"
else
echo "You have no rights on /dev/kvm."
if [ "$MACHINE" = "qemux86" ]; then
QEMU=qemu-system-i386
+ if [ "$KVM_ACTIVE" = "yes" ]; then
+ CPU_SUBTYPE=kvm32
+ else
+ CPU_SUBTYPE=qemu32
+ fi
if [ ! -z "$vga_option" ]; then
QEMU_UI_OPTIONS="$QEMU_UI_OPTIONS"
else
fi
if [ "${FSTYPE:0:3}" = "ext" -o "$FSTYPE" = "btrfs" ]; then
KERNCMDLINE="vga=0 uvesafb.mode_option=640x480-32 root=$DROOT rw mem=$QEMU_MEMORY $KERNEL_NETWORK_CMD"
- QEMUOPTIONS="$QEMU_NETWORK_CMD $ROOTFS_OPTIONS $QEMU_UI_OPTIONS"
+ QEMUOPTIONS="$QEMU_NETWORK_CMD -cpu $CPU_SUBTYPE $ROOTFS_OPTIONS $QEMU_UI_OPTIONS"
fi
if [ "$FSTYPE" = "nfs" ]; then
if [ "$NFS_SERVER" = "192.168.7.1" -a ! -d "$NFS_DIR" ]; then
if [ "$MACHINE" = "qemux86-64" ]; then
QEMU=qemu-system-x86_64
- CPU_SUBTYPE=core2duo
+ if [ "$KVM_ACTIVE" = "yes" ]; then
+ CPU_SUBTYPE=kvm64
+ else
+ CPU_SUBTYPE=core2duo
+ fi
if [ ! -z "$vga_option" ]; then
QEMU_UI_OPTIONS="$QEMU_UI_OPTIONS"
else