mirror of
https://git.yoctoproject.org/poky
synced 2026-05-09 17:39:31 +00:00
runqemu: enforce right CPU type for qemux86/x86-64
Set in accordance with qemu machines configs. Fixes [YOCTO #5817]. (From OE-Core rev: 0e5cfef90ff762b33da6dc301dfc9cb3947c8a02) Signed-off-by: Cristian Iorga <cristian.iorga@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
6a6cdadf31
commit
a2a20adbfd
+3
-6
@@ -68,6 +68,8 @@ SCRIPT_QEMU_OPT=""
|
|||||||
SCRIPT_QEMU_EXTRA_OPT=""
|
SCRIPT_QEMU_EXTRA_OPT=""
|
||||||
SCRIPT_KERNEL_OPT=""
|
SCRIPT_KERNEL_OPT=""
|
||||||
SERIALSTDIO=""
|
SERIALSTDIO=""
|
||||||
|
KVM_ENABLED="no"
|
||||||
|
KVM_ACTIVE="no"
|
||||||
|
|
||||||
# Determine whether the file is a kernel or QEMU image, and set the
|
# Determine whether the file is a kernel or QEMU image, and set the
|
||||||
# appropriate variables
|
# appropriate variables
|
||||||
@@ -103,7 +105,6 @@ process_filename() {
|
|||||||
|
|
||||||
# Parse command line args without requiring specific ordering. It's a
|
# Parse command line args without requiring specific ordering. It's a
|
||||||
# bit more complex, but offers a great user experience.
|
# bit more complex, but offers a great user experience.
|
||||||
KVM_ENABLED="no"
|
|
||||||
while true; do
|
while true; do
|
||||||
arg=${1}
|
arg=${1}
|
||||||
case "$arg" in
|
case "$arg" in
|
||||||
@@ -266,11 +267,7 @@ if [ "x$KVM_ENABLED" = "xyes" ]; then
|
|||||||
exit 1;
|
exit 1;
|
||||||
fi
|
fi
|
||||||
if [ -w /dev/kvm -a -r /dev/kvm ]; then
|
if [ -w /dev/kvm -a -r /dev/kvm ]; then
|
||||||
if [ "x$MACHINE" = "xqemux86" ]; then
|
SCRIPT_QEMU_OPT="$SCRIPT_QEMU_OPT -enable-kvm"
|
||||||
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
|
|
||||||
KVM_ACTIVE="yes"
|
KVM_ACTIVE="yes"
|
||||||
else
|
else
|
||||||
echo "You have no rights on /dev/kvm."
|
echo "You have no rights on /dev/kvm."
|
||||||
|
|||||||
@@ -360,6 +360,11 @@ fi
|
|||||||
|
|
||||||
if [ "$MACHINE" = "qemux86" ]; then
|
if [ "$MACHINE" = "qemux86" ]; then
|
||||||
QEMU=qemu-system-i386
|
QEMU=qemu-system-i386
|
||||||
|
if [ "$KVM_ACTIVE" = "yes" ]; then
|
||||||
|
CPU_SUBTYPE=kvm32
|
||||||
|
else
|
||||||
|
CPU_SUBTYPE=qemu32
|
||||||
|
fi
|
||||||
if [ ! -z "$vga_option" ]; then
|
if [ ! -z "$vga_option" ]; then
|
||||||
QEMU_UI_OPTIONS="$QEMU_UI_OPTIONS"
|
QEMU_UI_OPTIONS="$QEMU_UI_OPTIONS"
|
||||||
else
|
else
|
||||||
@@ -367,7 +372,7 @@ if [ "$MACHINE" = "qemux86" ]; then
|
|||||||
fi
|
fi
|
||||||
if [ "${FSTYPE:0:3}" = "ext" -o "$FSTYPE" = "btrfs" ]; then
|
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"
|
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
|
fi
|
||||||
if [ "$FSTYPE" = "nfs" ]; then
|
if [ "$FSTYPE" = "nfs" ]; then
|
||||||
if [ "$NFS_SERVER" = "192.168.7.1" -a ! -d "$NFS_DIR" ]; then
|
if [ "$NFS_SERVER" = "192.168.7.1" -a ! -d "$NFS_DIR" ]; then
|
||||||
@@ -388,7 +393,11 @@ fi
|
|||||||
|
|
||||||
if [ "$MACHINE" = "qemux86-64" ]; then
|
if [ "$MACHINE" = "qemux86-64" ]; then
|
||||||
QEMU=qemu-system-x86_64
|
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
|
if [ ! -z "$vga_option" ]; then
|
||||||
QEMU_UI_OPTIONS="$QEMU_UI_OPTIONS"
|
QEMU_UI_OPTIONS="$QEMU_UI_OPTIONS"
|
||||||
else
|
else
|
||||||
|
|||||||
Reference in New Issue
Block a user