If you try to use the virtio-gpu-gl device, the error messages
we produce are not very specific, which can leave users confused
about what they need to do (see the issue
https://gitlab.com/qemu-project/qemu/-/issues/2443 for an example).
This patchset tries to improve those errors:
(1) Trying to use virtio-gpu-gl without enabling GL on the
display backend:
$ qemu-system-aarch64 -M virt -device virtio-gpu-gl
Currently we say
qemu-system-aarch64: -device virtio-gpu-gl: opengl is not available
With these patches we will say
qemu-system-aarch64: -device virtio-gpu-gl: The display backend does not have OpenGL support enabled
It can be enabled with '-display BACKEND,gl=on' where BACKEND is the name of the display backend to use.
(2) Trying to enable GL on a backend that doesn't support it:
$ qemu-system-aarch64 -M virt -device virtio-gpu-gl -display curses,gl=on
Currently we say
qemu-system-aarch64: OpenGL is not supported by the display
With these patches we will say
qemu-system-aarch64: OpenGL is not supported by display backend 'curses'
(3) Trying to enable GL when the QEMU binary wasn't built with it:
Currently we say
qemu-system-aarch64: OpenGL support is disabled
With these patches we will say
qemu-system-aarch64: OpenGL support was disabled when QEMU was compiled
(4) -display help doesn't mention that display types can have suboptions
Currently -display help just prints the list of backends. With these
patches we will also say
Some display backends support suboptions, which can be set with
-display backend,option=value,option=value...
For a short list of the suboptions for each display, see the top-level -help output; more detail is in the documentation.
(The ideal for that last would be to be like -device and let you
say "-display gtk,help", but that doesn't work.)
Peter Maydell (3):
hw/display/virtio-gpu: Improve "opengl is not available" error message
system/vl.c: Expand OpenGL related errors
ui/console: Note in '-display help' that some backends support
suboptions
hw/display/virtio-gpu-gl.c | 8 +++++++-
system/vl.c | 5 +++--
ui/console.c | 5 +++++
3 files changed, 15 insertions(+), 3 deletions(-)
--
2.34.1
Series: