summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Kanavin <alex.kanavin@gmail.com>2019-08-30 14:49:48 +0200
committerRichard Purdie <richard.purdie@linuxfoundation.org>2019-09-01 22:33:07 +0100
commit58e85c60cd15cf4c0b47cddcf507543461c1a328 (patch)
tree53845c5922cf2e8bceaccf34240844ebd48410e3
parent6883a667962c130b3d130671dabf47f1554922af (diff)
downloadpoky-58e85c60cd15cf4c0b47cddcf507543461c1a328.tar.gz
qemu: switch to '-vga std' emulated hardware from vmware/cirrus for x86/mips
This is the qemu default since qemu 2.2, is generally supported better, and is recommended by upstream. It also has already been in use for arm/risc and ovmf. Additional information: https://bugzilla.yoctoproject.org/show_bug.cgi?id=13466 https://www.kraxel.org/blog/2014/10/qemu-using-cirrus-considered-harmful/ '-vga virtio' emulated hardware remains in use when virgl is enabled via a runqemu override. Also, adjust the error whitelist, as there is a number of new messages coming from the drivers that are not actual errors. (From OE-Core rev: 73cb104f3307736f4922f2e0c9648f9b2d3b3b6b) Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/conf/machine/include/qemuboot-mips.inc2
-rw-r--r--meta/conf/machine/include/qemuboot-x86.inc2
-rw-r--r--meta/conf/machine/qemux86-64.conf1
-rw-r--r--meta/conf/machine/qemux86.conf1
-rw-r--r--meta/lib/oeqa/runtime/cases/parselogs.py4
-rwxr-xr-xscripts/runqemu6
6 files changed, 8 insertions, 8 deletions
diff --git a/meta/conf/machine/include/qemuboot-mips.inc b/meta/conf/machine/include/qemuboot-mips.inc
index 1c2b532b48..978820a2e0 100644
--- a/meta/conf/machine/include/qemuboot-mips.inc
+++ b/meta/conf/machine/include/qemuboot-mips.inc
@@ -2,6 +2,6 @@
2IMAGE_CLASSES += "qemuboot" 2IMAGE_CLASSES += "qemuboot"
3QB_MACHINE = "-machine malta" 3QB_MACHINE = "-machine malta"
4QB_KERNEL_CMDLINE_APPEND = "console=ttyS0 console=tty" 4QB_KERNEL_CMDLINE_APPEND = "console=ttyS0 console=tty"
5QB_OPT_APPEND = "-vga cirrus -show-cursor -usb -device usb-tablet" 5QB_OPT_APPEND = "-show-cursor -usb -device usb-tablet"
6# Add the 'virtio-rng-pci' device otherwise the guest may run out of entropy 6# Add the 'virtio-rng-pci' device otherwise the guest may run out of entropy
7QB_OPT_APPEND += "-object rng-random,filename=/dev/urandom,id=rng0 -device virtio-rng-pci,rng=rng0" 7QB_OPT_APPEND += "-object rng-random,filename=/dev/urandom,id=rng0 -device virtio-rng-pci,rng=rng0"
diff --git a/meta/conf/machine/include/qemuboot-x86.inc b/meta/conf/machine/include/qemuboot-x86.inc
index 3931b0f0fb..495418fa04 100644
--- a/meta/conf/machine/include/qemuboot-x86.inc
+++ b/meta/conf/machine/include/qemuboot-x86.inc
@@ -9,7 +9,7 @@ QB_CPU_KVM_x86-64 = "-cpu core2duo"
9QB_AUDIO_DRV = "alsa" 9QB_AUDIO_DRV = "alsa"
10QB_AUDIO_OPT = "-soundhw ac97,es1370" 10QB_AUDIO_OPT = "-soundhw ac97,es1370"
11QB_KERNEL_CMDLINE_APPEND = "vga=0 uvesafb.mode_option=${UVESA_MODE} oprofile.timer=1 uvesafb.task_timeout=-1" 11QB_KERNEL_CMDLINE_APPEND = "vga=0 uvesafb.mode_option=${UVESA_MODE} oprofile.timer=1 uvesafb.task_timeout=-1"
12QB_OPT_APPEND = "-vga vmware -show-cursor -usb -device usb-tablet" 12QB_OPT_APPEND = "-show-cursor -usb -device usb-tablet"
13# Add the 'virtio-rng-pci' device otherwise the guest may run out of entropy 13# Add the 'virtio-rng-pci' device otherwise the guest may run out of entropy
14QB_OPT_APPEND += "-object rng-random,filename=/dev/urandom,id=rng0 -device virtio-rng-pci,rng=rng0" 14QB_OPT_APPEND += "-object rng-random,filename=/dev/urandom,id=rng0 -device virtio-rng-pci,rng=rng0"
15 15
diff --git a/meta/conf/machine/qemux86-64.conf b/meta/conf/machine/qemux86-64.conf
index e7979997f2..648cf2fe8f 100644
--- a/meta/conf/machine/qemux86-64.conf
+++ b/meta/conf/machine/qemux86-64.conf
@@ -27,6 +27,7 @@ XSERVER = "xserver-xorg \
27 xf86-video-fbdev \ 27 xf86-video-fbdev \
28 xf86-video-vmware \ 28 xf86-video-vmware \
29 xf86-video-modesetting \ 29 xf86-video-modesetting \
30 xf86-video-vesa \
30 xserver-xorg-module-libint10 \ 31 xserver-xorg-module-libint10 \
31 " 32 "
32 33
diff --git a/meta/conf/machine/qemux86.conf b/meta/conf/machine/qemux86.conf
index 3832302f07..8e0da82076 100644
--- a/meta/conf/machine/qemux86.conf
+++ b/meta/conf/machine/qemux86.conf
@@ -24,6 +24,7 @@ XSERVER = "xserver-xorg \
24 xf86-video-fbdev \ 24 xf86-video-fbdev \
25 xf86-video-vmware \ 25 xf86-video-vmware \
26 xf86-video-modesetting \ 26 xf86-video-modesetting \
27 xf86-video-vesa \
27 xserver-xorg-module-libint10 \ 28 xserver-xorg-module-libint10 \
28 " 29 "
29 30
diff --git a/meta/lib/oeqa/runtime/cases/parselogs.py b/meta/lib/oeqa/runtime/cases/parselogs.py
index 19c9c52a0a..15343d7abb 100644
--- a/meta/lib/oeqa/runtime/cases/parselogs.py
+++ b/meta/lib/oeqa/runtime/cases/parselogs.py
@@ -83,6 +83,10 @@ qemux86_common = [
83 'amd_nb: Cannot enumerate AMD northbridges', 83 'amd_nb: Cannot enumerate AMD northbridges',
84 'uvesafb: 5000 ms task timeout, infinitely waiting', 84 'uvesafb: 5000 ms task timeout, infinitely waiting',
85 'tsc: HPET/PMTIMER calibration failed', 85 'tsc: HPET/PMTIMER calibration failed',
86 "modeset(0): Failed to initialize the DRI2 extension",
87 "uvesafb: cannot reserve video memory at",
88 "uvesafb: probe of uvesafb.0 failed with error",
89 "glamor initialization failed",
86] + common_errors 90] + common_errors
87 91
88ignore_errors = { 92ignore_errors = {
diff --git a/scripts/runqemu b/scripts/runqemu
index 7705b2b60e..b520010624 100755
--- a/scripts/runqemu
+++ b/scripts/runqemu
@@ -145,8 +145,6 @@ class BaseConfig(object):
145 # to be added with -drive if=pflash. 145 # to be added with -drive if=pflash.
146 # Found in the same places as the rootfs, with or without one of 146 # Found in the same places as the rootfs, with or without one of
147 # these suffices: qcow2, bin. 147 # these suffices: qcow2, bin.
148 # Setting one also adds "-vga std" because that is all that
149 # OVMF supports.
150 self.ovmf_bios = [] 148 self.ovmf_bios = []
151 # When enrolling default Secure Boot keys, the hypervisor 149 # When enrolling default Secure Boot keys, the hypervisor
152 # must provide the Platform Key and the first Key Exchange Key 150 # must provide the Platform Key and the first Key Exchange Key
@@ -1283,10 +1281,6 @@ class BaseConfig(object):
1283 for ovmf in self.ovmf_bios: 1281 for ovmf in self.ovmf_bios:
1284 format = ovmf.rsplit('.', 1)[-1] 1282 format = ovmf.rsplit('.', 1)[-1]
1285 self.qemu_opt += ' -drive if=pflash,format=%s,file=%s' % (format, ovmf) 1283 self.qemu_opt += ' -drive if=pflash,format=%s,file=%s' % (format, ovmf)
1286 if self.ovmf_bios:
1287 # OVMF only supports normal VGA, i.e. we need to override a -vga vmware
1288 # that gets added for example for normal qemux86.
1289 self.qemu_opt += ' -vga std'
1290 1284
1291 self.qemu_opt += ' ' + self.qemu_opt_script 1285 self.qemu_opt += ' ' + self.qemu_opt_script
1292 1286