blob: f1fc3458a1034f0adfed19dc94801fff431a8491 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
mistranslation: 0.850
device: 0.739
instruction: 0.701
graphic: 0.700
vnc: 0.647
other: 0.634
network: 0.598
semantic: 0.494
socket: 0.368
assembly: 0.364
boot: 0.245
KVM: 0.124
VNC: virtio-gpu outputs not displayed by VNC client
Description of problem:
When combining virtio-gpu multiple outputs with VNC display, only output 0 is enabled.
Additional output are enabled when VNC client sent SetDesktopSize command.
The following statement assumes that all displays (gtk, sdl) are disabled except VNC:
#
Steps to reproduce:
1. Start Qemu
2. Start a VNC client on 5900
3. Start the second VNC client on 5901
Additional information:
The state of an output is controlled by the [enabled_output_bitmask](https://gitlab.com/qemu-project/qemu/-/blob/master/include/hw/virtio/virtio-gpu.h#L158) which is initialized to `1` at [device realization](https://gitlab.com/qemu-project/qemu/-/blob/master/hw/display/virtio-gpu-base.c#L204), thus VNC0 is always enabled.
Other devices will set this parameter during inititliazation by calling [dpy_set_ui_info](https://gitlab.com/qemu-project/qemu/-/blob/master/ui/console.c#L754) which schedules a call to [virtio_gpu_ui_info](https://gitlab.com/qemu-project/qemu/-/blob/master/hw/display/virtio-gpu-base.c#L89). However VNC calls this function only when handling [VNC_MSG_CLIENT_SET_DESKTOP_SIZE](https://gitlab.com/qemu-project/qemu/-/blob/master/ui/vnc.c#L2607) client command.\
If the client does not support this command or never changes the size of the default window, the respective display will remain disabled.
|