Use Alpine's QEMU rather than host system QEMU
This addresses issue #1158 (closed) and #543 (closed).
This change makes pmbootstrap use Alpine's QEMU and the virglrenderer by default. I've added the option pmbootstrap qemu --host-qemu
so that the host qemu can still be used.
The previous functionality of pmbootstrap qemu
remains the same when the dri-swrast
mesa driver is chosen. In that case the bochs graphics driver will be used. The Spice option is also unchanged.
With virgl there is lots of mouse cursor buggy-ness. I get these issues with both host QEMU and Alpine's QEMU.
- xorg desktops: Mouse isn't usable at all.
-
--display sdl,gl=on
: Mouse jumps all over the place. -
--display gtk,gl=on
: Mouse cursor not visible.
-
- weston:
-
--display sdl,gl=on
: Mouse is jumpy but works okay enough to actually use the desktop. -
--display gtk,gl=on
: Mouse cursor not visible.
-
- plasma-mobile:
- No input at all. May be related to issue #1585 (closed).
Some system logs while using virglrenderer:
virtio drm driver:
qemu-amd64:~$ dmesg | grep drm
[ 6.349084] [drm] pci: virtio-vga detected at 0000:00:02.0
[ 6.349385] [drm] virgl 3d acceleration enabled
[ 6.350124] [drm] number of scanouts: 1
[ 6.350133] [drm] number of cap sets: 1
[ 6.358108] [drm] cap set 0: id 1, max-version 1, max-size 308
[ 6.399931] virtio_gpu virtio0: fb0: virtiodrmfb frame buffer device
[ 6.399942] [drm] Initialized virtio_gpu 0.0.1 0 for virtio0 on minor 0
xorg (xfce4):
qemu-amd64:/home/user# DISPLAY=:0 glxinfo | grep OpenGL
OpenGL vendor string: Red Hat
OpenGL renderer string: virgl
OpenGL core profile version string: 3.3 (Core Profile) Mesa 18.1.1
OpenGL core profile shading language version string: 3.30
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 3.1 Mesa 18.1.1
OpenGL shading language version string: 1.40
OpenGL context flags: (none)
OpenGL extensions:
OpenGL ES profile version string: OpenGL ES 3.0 Mesa 18.1.1
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.00
OpenGL ES profile extensions:
plasma-mobile:
qemu-amd64:~$ logread
OpenGL vendor string: Red Hat
OpenGL renderer string: virgl
OpenGL version string: OpenGL ES 3.0 Mesa 18.1.1
OpenGL shading language version string: OpenGL ES GLSL ES 3.00
Driver: Unknown
GPU class: Unknown
OpenGL version: 3.0
GLSL version: 3.0
Mesa version: 18.1.1
Linux kernel version: 4.16.2
Requires strict binding: no
GLSL shaders: yes
Texture NPOT support: yes
Virtual Machine: no
kwin_wayland_drm: Support for remote access enabled
libkwinglutils: Skipping self test as it is reported to return false positive results on Mesa drivers
kwin_core: Instantiated compositing plugin: "SceneOpenGL"
Edited by Administrator