weston issueshttps://gitlab.freedesktop.org/wayland/weston/-/issues2023-08-24T03:46:17Zhttps://gitlab.freedesktop.org/wayland/weston/-/issues/791Porting weston-1.2.1 and wayland-1.2.1 to VxWorks reports an error2023-08-24T03:46:17ZHeYongPorting weston-1.2.1 and wayland-1.2.1 to VxWorks reports an errorHi Maintainer,
We are doing a challenging job to get weston running on VxWorks system.
Let me briefly introduce VxWorks which is a real-time operating system
and supports POSIX API, But it does not support graphical desk...Hi Maintainer,
We are doing a challenging job to get weston running on VxWorks system.
Let me briefly introduce VxWorks which is a real-time operating system
and supports POSIX API, But it does not support graphical desktops natively.
most of our work is going well now, weston has successfully run on VxWorks,
but when I start a wayand client, it reports an error.
Can you help me analyze the cause of the error, I know the code is very unfamiliar
from 10 years ago, but it is indeed a helpless move. here is the log
![20230728091209](/uploads/09b9c744ddda80ba315a3ff781fc4030/20230728091209.jpg)https://gitlab.freedesktop.org/wayland/weston/-/issues/790Cannot build drm-backend with libgbm 21.0 or before2023-08-02T13:38:32ZTomohito EsakiCannot build drm-backend with libgbm 21.0 or beforeSince drm-backend uses the `gbm_bo_get_fd_for_plane()` API, that requires libgbm 21.1 or later.
Is this requirement mandatory? Or is it an omission to be addressed?
(because meson.build of drm-backend has no version requirements.)Since drm-backend uses the `gbm_bo_get_fd_for_plane()` API, that requires libgbm 21.1 or later.
Is this requirement mandatory? Or is it an omission to be addressed?
(because meson.build of drm-backend has no version requirements.)https://gitlab.freedesktop.org/wayland/weston/-/issues/789Moving views to inactive layers currently leads to confusing internal state2023-08-01T16:03:33ZDerek ForemanMoving views to inactive layers currently leads to confusing internal stateThe following discussion from !1328 should be addressed:
- [ ] @derekf started a [discussion](https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/1328#note_2023849): (+1 comment)
> Not sure how to proceed with this one,...The following discussion from !1328 should be addressed:
- [ ] @derekf started a [discussion](https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/1328#note_2023849): (+1 comment)
> Not sure how to proceed with this one, the "Delete paint nodes..." patch really just papers over a very big problem in our layer handling.
>
> Should I remove that and proceed with the simpler bug fix for now?
When we move a view to a layer that isn't on the compositor layer list, we expect that to remove the content from display. This doesn't really happen naturally though, because the compositor doesn't currently understand inactive layers.
!1328 proposes an inefficient kludge to work around this for now, but ultimately layer handling in general needs help.https://gitlab.freedesktop.org/wayland/weston/-/issues/788Weston crashes when Super-Tab to Warcraft III2023-10-13T12:38:26ZLink MauveWeston crashes when Super-Tab to Warcraft IIIIt was running with Alexandros’s old wine wayland branch.
Here is the stack trace:
```rust
Core was generated by `weston'.
Program terminated with signal SIGABRT, Aborted.
#0 0x00007f3bff5c626c in ?? () from /usr/lib/libc.so.6
[Current...It was running with Alexandros’s old wine wayland branch.
Here is the stack trace:
```rust
Core was generated by `weston'.
Program terminated with signal SIGABRT, Aborted.
#0 0x00007f3bff5c626c in ?? () from /usr/lib/libc.so.6
[Current thread is 1 (Thread 0x7f3bfeeeb8c0 (LWP 703602))]
(gdb) bt
#0 0x00007f3bff5c626c in () at /usr/lib/libc.so.6
#1 0x00007f3bff576a08 in raise () at /usr/lib/libc.so.6
#2 0x00007f3bff55f538 in abort () at /usr/lib/libc.so.6
#3 0x00007f3bff55f45c in () at /usr/lib/libc.so.6
#4 0x00007f3bff56f3d6 in () at /usr/lib/libc.so.6
#5 0x00007f3bff50df89 in maybe_warp_confined_pointer (constraint=0x562bc66df8e0) at ../libweston/input.c:5704
#6 0x00007f3bff4f8859 in wl_signal_emit (data=0x562bc66e1cb0, signal=0x562bc66e1cd0) at /usr/include/wayland-server-core.h:496
#7 weston_surface_commit_state (surface=surface@entry=0x562bc66e1cb0, state=state@entry=0x562bc66e1dd8) at ../libweston/compositor.c:4424
#8 0x00007f3bff4f91b4 in weston_surface_commit (surface=0x562bc66e1cb0) at ../libweston/compositor.c:4438
#9 weston_subsurface_commit (sub=0x562bc66e3790) at ../libweston/compositor.c:4827
#10 surface_commit (client=<optimized out>, resource=0x562bc66f7c80) at ../libweston/compositor.c:4516
#11 0x00007f3bff1cd4f6 in () at /usr/lib/libffi.so.8
#12 0x00007f3bff1c9f5e in () at /usr/lib/libffi.so.8
#13 0x00007f3bff1ccb73 in ffi_call () at /usr/lib/libffi.so.8
#14 0x00007f3bff4b9a20 in wl_closure_invoke (closure=closure@entry=0x562bc65da1c0, flags=flags@entry=2, target=<optimized out>,
target@entry=0x562bc66f7c80, opcode=opcode@entry=6, data=<optimized out>, data@entry=0x562bc65d09f0) at ../wayland/src/connection.c:1025
#15 0x00007f3bff4b361f in wl_client_connection_data (fd=<optimized out>, mask=<optimized out>, data=0x562bc65d09f0) at ../wayland/src/wayland-server.c:438
#16 0x00007f3bff4b6d82 in wl_event_loop_dispatch (loop=0x562bc5c0b470, timeout=<optimized out>, timeout@entry=-1) at ../wayland/src/event-loop.c:1104
#17 0x00007f3bff4b3ef7 in wl_display_run (display=display@entry=0x562bc5c0b380) at ../wayland/src/wayland-server.c:1493
#18 0x00007f3bff770744 in wet_main (argc=<optimized out>, argv=0x7fff5d08d3f8, test_data=0x0) at ../compositor/main.c:4241
#19 0x00007f3bff560850 in () at /usr/lib/libc.so.6
#20 0x00007f3bff56090a in __libc_start_main () at /usr/lib/libc.so.6
#21 0x0000562bc5440055 in _start ()
```https://gitlab.freedesktop.org/wayland/weston/-/issues/787Weston crashes when plugging in a new output2023-08-08T10:05:12ZLink MauveWeston crashes when plugging in a new outputThis was a HDMI output, a possible difference with the many other ones I have plugged over the years is that this one is configured to be 120 Hz.
Here is the stack trace:
```rust
Core was generated by `weston'.
Program terminated with s...This was a HDMI output, a possible difference with the many other ones I have plugged over the years is that this one is configured to be 120 Hz.
Here is the stack trace:
```rust
Core was generated by `weston'.
Program terminated with signal SIGABRT, Aborted.
#0 0x00007f66e0ce026c in ?? () from /usr/lib/libc.so.6
[Current thread is 1 (Thread 0x7f66e06058c0 (LWP 682806))]
(gdb) bt
#0 0x00007f66e0ce026c in () at /usr/lib/libc.so.6
#1 0x00007f66e0c90a08 in raise () at /usr/lib/libc.so.6
#2 0x00007f66e0c79538 in abort () at /usr/lib/libc.so.6
#3 0x00007f66e0c7945c in () at /usr/lib/libc.so.6
#4 0x00007f66e0c893d6 in () at /usr/lib/libc.so.6
#5 0x00007f66e0c071a5 in weston_view_matches_output_entirely (ev=<optimized out>, output=<optimized out>) at ../libweston/compositor.c:2051
#6 weston_view_matches_output_entirely (ev=ev@entry=0x55f6abfb55e0, output=output@entry=0x55f6ab698ab0) at ../libweston/compositor.c:2045
#7 0x00007f66e0e65197 in drm_output_find_plane_for_view (current_lowest_zpos=18446744073709551615, scanout_state=<optimized out>, mode=<optimized out>, pnode=<optimized out>, state=0x55f6ac06b990) at ../libweston/backend-drm/state-propose.c:530
#8 drm_output_propose_state (output_base=output_base@entry=0x55f6ab698ab0, pending_state=pending_state@entry=0x55f6ac1263c0, mode=mode@entry=DRM_OUTPUT_PROPOSE_STATE_PLANES_ONLY) at ../libweston/backend-drm/state-propose.c:861
#9 0x00007f66e0e67554 in drm_assign_planes (output_base=0x55f6ab698ab0) at ../libweston/backend-drm/state-propose.c:967
#10 0x00007f66e0c1008b in weston_output_repaint (output=<optimized out>) at ../libweston/compositor.c:3323
#11 weston_output_maybe_repaint (now=0x7ffe18962200, output=<optimized out>) at ../libweston/compositor.c:3436
#12 output_repaint_timer_handler (data=0x55f6ab687630) at ../libweston/compositor.c:3517
#13 0x00007f66e0bd0f2d in wl_timer_heap_dispatch (timers=0x55f6ab6884b8) at ../wayland/src/event-loop.c:526
#14 wl_event_loop_dispatch (loop=0x55f6ab688470, timeout=<optimized out>, timeout@entry=-1) at ../wayland/src/event-loop.c:1097
#15 0x00007f66e0bcdef7 in wl_display_run (display=display@entry=0x55f6ab688380) at ../wayland/src/wayland-server.c:1493
#16 0x00007f66e0e8a744 in wet_main (argc=<optimized out>, argv=0x7ffe18962dd8, test_data=0x0) at ../compositor/main.c:4241
#17 0x00007f66e0c7a850 in () at /usr/lib/libc.so.6
#18 0x00007f66e0c7a90a in __libc_start_main () at /usr/lib/libc.so.6
#19 0x000055f6a9e38055 in _start ()
```https://gitlab.freedesktop.org/wayland/weston/-/issues/786`atomic: couldn't commit new state: Invalid argument` error after updating we...2023-08-01T16:51:48ZJames Hilliard`atomic: couldn't commit new state: Invalid argument` error after updating weston to 12.0.1 from 10.0.1I started hitting this error after updating weston to `12.0.1`(and `main` branch) from `10.0.1`, although it probably isn't a regression as I can reproduce it on `10.0.1`, probably something launcher specific as that was changed when upd...I started hitting this error after updating weston to `12.0.1`(and `main` branch) from `10.0.1`, although it probably isn't a regression as I can reproduce it on `10.0.1`, probably something launcher specific as that was changed when updating.
The error only seems to occur right after the system starts up.
If I restart the weston service it start up normally.
It looks like this may be specific to certain drivers/configurations, I'm able to reproduce it on an `imx6` system and one `x86_64` based system, however it seems to work fine on a different `x86_64` based system as well.
```c
Starting Weston Wayland Compositor...
Date: 2022-12-20 UTC
[18:15:51.875] weston 12.0.1
https://wayland.freedesktop.org
Bug reports to: https://gitlab.freedesktop.org/wayland/weston/issues/
Build: 24be16d+
[18:15:51.875] Command line: /bin/weston --debug --config=/etc/xdg/weston/weston.ini -Swayland-1
[18:15:51.875] OS: Linux, 6.4.3, #1 SMP Thu Jul 27 09:12:41 MDT 2023, armv7l
[18:15:51.875] Flight recorder: enabled
[18:15:51.876] Using config file '/etc/xdg/weston/weston.ini'
WARNING: debug protocol has been enabled. This is a potential denial-of-service attack vector and information leak.
[18:15:51.876] Output repaint window is 7 ms maximum.
[18:15:51.877] Loading module '/usr/lib/libweston-12/drm-backend.so'
[18:15:51.897] initializing drm backend
[18:15:51.898] Trying libseat launcher...
[18:15:51.908] [libseat/libseat.c:73] Seat opened with backend 'seatd'
[18:15:51.908] [libseat/backend/seatd.c:212] Enabling seat
[18:15:51.909] libseat: session control granted
[18:15:51.919] using /dev/dri/card0
[18:15:51.920] DRM: supports atomic modesetting
[18:15:51.920] DRM: supports GBM modifiers
[18:15:51.920] DRM: supports picture aspect ratio
[18:15:52.108] Loading module '/usr/lib/libweston-12/gl-renderer.so'
[18:15:52.146] Using rendering device: /dev/dri/card0
[18:15:52.146] EGL version: 1.4
[18:15:52.146] EGL vendor: Mesa Project
[18:15:52.146] EGL client APIs: OpenGL OpenGL_ES
[18:15:52.146] EGL features:
EGL Wayland extension: yes
context priority: no
buffer age: yes
partial update: no
swap buffers with damage: no
configless context: yes
surfaceless context: yes
dmabuf support: modifiers
[18:15:52.166] GL version: OpenGL ES 2.0 Mesa 23.1.4
[18:15:52.166] GLSL version: OpenGL ES GLSL ES 1.0.16
[18:15:52.166] GL vendor: Mesa
[18:15:52.166] GL renderer: Vivante GC2000 rev 5108
[18:15:52.166] warning: Disabling render GPU timeline due to missing GL_EXT_disjoint_timer_query extension
[18:15:52.356] GL ES 2.0 - renderer features:
read-back format: ARGB8888
glReadPixels supports y-flip: yes
wl_shm 10 bpc formats: yes
wl_shm 16 bpc formats: no
wl_shm half-float formats: no
internal R and RG formats: no
OES_EGL_image_external: yes
[18:15:52.356] Using GL renderer
[18:15:52.617] event0 - EP0700M06: is tagged by udev as: Touchscreen
[18:15:52.620] event0 - EP0700M06: device is a touch device
[18:15:52.622] Touchscreen - EP0700M06 - /sys/devices/platform/soc/2100000.bus/21a8000.i2c/i2c-2/2-0038/input/input1/event0
[18:15:52.622] libinput: configuring device "EP0700M06".
[18:15:52.622] input device event0 has no enabled output associated (none named), skipping calibration for now.
[18:15:52.623] DRM: head 'LVDS-1' found, connector 66 is connected, EDID make 'unknown', model 'unknown', serial 'unknown'
Supported EOTF modes: SDR
[18:15:52.624] DRM: head 'LVDS-2' found, connector 68 is connected, EDID make 'unknown', model 'unknown', serial 'unknown'
Supported EOTF modes: SDR
[18:15:52.624] Registered plugin API 'weston_drm_output_api_v1' of size 20
[18:15:52.625] Registered plugin API 'weston_drm_virtual_output_api_v2' of size 24
[18:15:52.625] Color manager: no-op
[18:15:52.625] Output 'LVDS-1' attempts EOTF mode: SDR
[18:15:52.625] Output 'LVDS-1' using color profile: built-in default sRGB SDR profile
[18:15:52.625] Chosen EGL config details: id: 13 rgba: 8 8 8 0 buf: 24 dep: 0 stcl: 0 int: 1-1 type: win vis_id: XRGB8888 (0x34325258)
[18:15:52.625] Initialized backlight for head 'LVDS-1', device /sys/class/backlight/backlight-lvds
[18:15:52.625] Output LVDS-1 (crtc 36) video modes:
800x480@66.0, preferred, current, 32.0 MHz
[18:15:52.625] associating input device event0 with output LVDS-1 (none by udev)
[18:15:52.627] Output 'LVDS-1' enabled with head(s) LVDS-1
[18:15:52.627] Output 'LVDS-2' attempts EOTF mode: SDR
[18:15:52.627] Output 'LVDS-2' using color profile: built-in default sRGB SDR profile
[18:15:52.627] Chosen EGL config details: id: 13 rgba: 8 8 8 0 buf: 24 dep: 0 stcl: 0 int: 1-1 type: win vis_id: XRGB8888 (0x34325258)
[18:15:52.627] Initialized backlight for head 'LVDS-2', device /sys/class/backlight/backlight-lvds
[18:15:52.628] Output LVDS-2 (crtc 47) video modes:
800x600@59.9, preferred, current, 38.3 MHz
[18:15:52.628] Output 'LVDS-2' enabled with head(s) LVDS-2
[18:15:52.628] Compositor capabilities:
arbitrary surface rotation: yes
screen capture uses y-flip: yes
cursor planes: yes
arbitrary resolutions: no
view mask clipping: yes
explicit sync: yes
color operations: no
presentation clock: CLOCK_MONOTONIC, id 1
presentation clock resolution: 0.000000001 s
[18:15:52.659] Loading module '/usr/lib/weston/kiosk-shell.so'
[18:15:52.660] Loading module '/usr/lib/weston/systemd-notify.so'
Started Weston Wayland Compositor.
[1832313.231] wl_display@1.get_registry(new id wl_registry@2)
[1832313.311] -> wl_registry@2.global(1, "wl_compositor", 5)
[1832313.357] -> wl_registry@2.global(2, "wl_subcompositor", 1)
[1832313.391] -> wl_registry@2.global(3, "wp_viewporter", 1)
[1832313.421] -> wl_registry@2.global(4, "zxdg_output_manager_v1", 2)
[1832313.448] -> wl_registry@2.global(5, "wp_presentation", 1)
[1832313.479] -> wl_registry@2.global(6, "wp_single_pixel_buffer_manager_v1", 1)
[1832313.509] -> wl_registry@2.global(7, "wp_tearing_control_manager_v1", 1)
[1832313.536] -> wl_registry@2.global(8, "zwp_relative_pointer_manager_v1", 1)
[1832313.565] -> wl_registry@2.global(9, "zwp_pointer_constraints_v1", 1)
[1832313.592] -> wl_registry@2.global(10, "zwp_input_timestamps_manager_v1", 1)
[1832313.617] -> wl_registry@2.global(11, "weston_capture_v1", 1)
[1832313.644] -> wl_registry@2.global(12, "wl_data_device_manager", 3)
[1832313.669] -> wl_registry@2.global(13, "wl_shm", 1)
[1832313.696] -> wl_registry@2.global(14, "weston_debug_v1", 1)
[1832313.722] -> wl_registry@2.global(15, "weston_touch_calibration", 1)
[1832313.746] -> wl_registry@2.global(16, "wl_drm", 2)
[1832313.772] -> wl_registry@2.global(17, "wl_seat", 7)
[1832313.798] -> wl_registry@2.global(18, "zwp_linux_dmabuf_v1", 4)
[1832313.825] -> wl_registry@2.global(19, "weston_direct_display_v1", 1)
[1832313.853] -> wl_registry@2.global(20, "zwp_linux_explicit_synchronization_v1", 2)
[1832313.880] -> wl_registry@2.global(21, "weston_content_protection", 1)
[1832313.908] -> wl_registry@2.global(22, "wl_output", 4)
[1832313.936] -> wl_registry@2.global(23, "wl_output", 4)
[1832313.961] -> wl_registry@2.global(24, "xdg_wm_base", 5)
[1832313.995] wl_display@1.sync(new id wl_callback@3)
[1832314.026] -> wl_callback@3.done(0)
[1832314.055] -> wl_display@1.delete_id(3)
[1832315.544] wl_display@1.get_registry(new id wl_registry@2)
[1832315.600] -> wl_registry@2.global(1, "wl_compositor", 5)
[1832315.632] -> wl_registry@2.global(2, "wl_subcompositor", 1)
[1832315.661] -> wl_registry@2.global(3, "wp_viewporter", 1)
[1832315.691] -> wl_registry@2.global(4, "zxdg_output_manager_v1", 2)
[1832315.716] -> wl_registry@2.global(5, "wp_presentation", 1)
[1832315.739] -> wl_registry@2.global(6, "wp_single_pixel_buffer_manager_v1", 1)
[1832315.764] -> wl_registry@2.global(7, "wp_tearing_control_manager_v1", 1)
[1832315.787] -> wl_registry@2.global(8, "zwp_relative_pointer_manager_v1", 1)
[1832315.811] -> wl_registry@2.global(9, "zwp_pointer_constraints_v1", 1)
[1832315.838] -> wl_registry@2.global(10, "zwp_input_timestamps_manager_v1", 1)
[1832315.865] -> wl_registry@2.global(11, "weston_capture_v1", 1)
[1832315.892] -> wl_registry@2.global(12, "wl_data_device_manager", 3)
[1832315.916] -> wl_registry@2.global(13, "wl_shm", 1)
[1832315.940] -> wl_registry@2.global(14, "weston_debug_v1", 1)
[1832315.964] -> wl_registry@2.global(15, "weston_touch_calibration", 1)
[1832315.989] -> wl_registry@2.global(16, "wl_drm", 2)
[1832316.020] -> wl_registry@2.global(17, "wl_seat", 7)
[1832316.045] -> wl_registry@2.global(18, "zwp_linux_dmabuf_v1", 4)
[1832316.072] -> wl_registry@2.global(19, "weston_direct_display_v1", 1)
[1832316.097] -> wl_registry@2.global(20, "zwp_linux_explicit_synchronization_v1", 2)
[1832316.121] -> wl_registry@2.global(21, "weston_content_protection", 1)
[1832316.147] -> wl_registry@2.global(22, "wl_output", 4)
[1832316.171] -> wl_registry@2.global(23, "wl_output", 4)
[1832316.197] -> wl_registry@2.global(24, "xdg_wm_base", 5)
[1832316.228] wl_display@1.sync(new id wl_callback@3)
[1832316.255] -> wl_callback@3.done(0)
[1832316.281] -> wl_display@1.delete_id(3)
[1832319.629] wl_registry@2.bind(1, "wl_compositor", 3, new id [unknown]@4)
[1832319.705] wl_registry@2.bind(2, "wl_subcompositor", 1, new id [unknown]@5)
[1832319.746] wl_registry@2.bind(5, "wp_presentation", 1, new id [unknown]@6)
[1832319.783] -> wp_presentation@6.clock_id(1)
[1832319.816] wl_registry@2.bind(13, "wl_shm", 1, new id [unknown]@7)
[1832319.856] -> wl_shm@7.format(0)
[1832319.885] -> wl_shm@7.format(1)
[1832319.910] -> wl_shm@7.format(909199186)
[1832319.936] -> wl_shm@7.format(842093913)
[1832319.959] -> wl_shm@7.format(875713881)
[1832319.984] -> wl_shm@7.format(842094158)
[1832320.008] -> wl_shm@7.format(1448695129)
[1832320.031] -> wl_shm@7.format(1448434008)
[1832320.055] -> wl_shm@7.format(808665665)
[1832320.080] -> wl_shm@7.format(808665688)
[1832320.109] wl_registry@2.bind(17, "wl_seat", 7, new id [unknown]@8)
[1832320.149] -> wl_seat@8.capabilities(4)
[1832320.176] -> wl_seat@8.name("default")
[1832320.207] wl_registry@2.bind(18, "zwp_linux_dmabuf_v1", 3, new id [unknown]@9)
[1832320.242] -> zwp_linux_dmabuf_v1@9.modifier(808665665, 16777215, 4294967295)
[1832320.274] -> zwp_linux_dmabuf_v1@9.modifier(808665665, 0, 0)
[1832320.303] -> zwp_linux_dmabuf_v1@9.modifier(808665665, 100663296, 1)
[1832320.331] -> zwp_linux_dmabuf_v1@9.modifier(808665665, 100663296, 2)
[1832320.356] -> zwp_linux_dmabuf_v1@9.modifier(808665665, 100663296, 3)
[1832320.383] -> zwp_linux_dmabuf_v1@9.modifier(808665665, 100663296, 4)
[1832320.414] -> zwp_linux_dmabuf_v1@9.modifier(808665688, 16777215, 4294967295)
[1832320.444] -> zwp_linux_dmabuf_v1@9.modifier(808665688, 0, 0)
[1832320.472] -> zwp_linux_dmabuf_v1@9.modifier(808665688, 100663296, 1)
[1832320.502] -> zwp_linux_dmabuf_v1@9.modifier(808665688, 100663296, 2)
[1832320.532] -> zwp_linux_dmabuf_v1@9.modifier(808665688, 100663296, 3)
[1832320.563] -> zwp_linux_dmabuf_v1@9.modifier(808665688, 100663296, 4)
[1832320.590] -> zwp_linux_dmabuf_v1@9.modifier(875713089, 16777215, 4294967295)
[1832320.625] -> zwp_linux_dmabuf_v1@9.modifier(875713089, 0, 0)
[1832320.652] -> zwp_linux_dmabuf_v1@9.modifier(875713089, 100663296, 1)
[1832320.680] -> zwp_linux_dmabuf_v1@9.modifier(875713089, 100663296, 2)
[1832320.706] -> zwp_linux_dmabuf_v1@9.modifier(875713089, 100663296, 3)
[1832320.731] -> zwp_linux_dmabuf_v1@9.modifier(875713089, 100663296, 4)
[1832320.758] -> zwp_linux_dmabuf_v1@9.modifier(875708993, 16777215, 4294967295)
[1832320.789] -> zwp_linux_dmabuf_v1@9.modifier(875708993, 0, 0)
[1832320.816] -> zwp_linux_dmabuf_v1@9.modifier(875708993, 100663296, 1)
[1832320.841] -> zwp_linux_dmabuf_v1@9.modifier(875708993, 100663296, 2)
[1832320.866] -> zwp_linux_dmabuf_v1@9.modifier(875708993, 100663296, 3)
[1832320.892] -> zwp_linux_dmabuf_v1@9.modifier(875708993, 100663296, 4)
[1832320.920] -> zwp_linux_dmabuf_v1@9.modifier(875713112, 16777215, 4294967295)
[1832320.946] -> zwp_linux_dmabuf_v1@9.modifier(875713112, 0, 0)
[1832320.973] -> zwp_linux_dmabuf_v1@9.modifier(875713112, 100663296, 1)
[1832320.999] -> zwp_linux_dmabuf_v1@9.modifier(875713112, 100663296, 2)
[1832321.024] -> zwp_linux_dmabuf_v1@9.modifier(875713112, 100663296, 3)
[1832321.050] -> zwp_linux_dmabuf_v1@9.modifier(875713112, 100663296, 4)
[1832321.074] -> zwp_linux_dmabuf_v1@9.modifier(875709016, 16777215, 4294967295)
[1832321.103] -> zwp_linux_dmabuf_v1@9.modifier(875709016, 0, 0)
[1832321.129] -> zwp_linux_dmabuf_v1@9.modifier(875709016, 100663296, 1)
[1832321.155] -> zwp_linux_dmabuf_v1@9.modifier(875709016, 100663296, 2)
[1832321.181] -> zwp_linux_dmabuf_v1@9.modifier(875709016, 100663296, 3)
[1832321.231] -> zwp_linux_dmabuf_v1@9.modifier(875709016, 100663296, 4)
[1832321.259] -> zwp_linux_dmabuf_v1@9.modifier(892424769, 16777215, 4294967295)
[1832321.286] -> zwp_linux_dmabuf_v1@9.modifier(892424769, 0, 0)
[1832321.310] -> zwp_linux_dmabuf_v1@9.modifier(892424769, 100663296, 1)
[1832321.336] -> zwp_linux_dmabuf_v1@9.modifier(892424769, 100663296, 2)
[1832321.363] -> zwp_linux_dmabuf_v1@9.modifier(892424769, 100663296, 3)
[1832321.389] -> zwp_linux_dmabuf_v1@9.modifier(892424769, 100663296, 4)
[1832321.418] -> zwp_linux_dmabuf_v1@9.modifier(909199186, 16777215, 4294967295)
[1832321.444] -> zwp_linux_dmabuf_v1@9.modifier(909199186, 0, 0)
[1832321.469] -> zwp_linux_dmabuf_v1@9.modifier(909199186, 100663296, 1)
[1832321.495] -> zwp_linux_dmabuf_v1@9.modifier(909199186, 100663296, 2)
[1832321.520] -> zwp_linux_dmabuf_v1@9.modifier(909199186, 100663296, 3)
[1832321.545] -> zwp_linux_dmabuf_v1@9.modifier(909199186, 100663296, 4)
[1832321.572] -> zwp_linux_dmabuf_v1@9.modifier(961959257, 16777215, 4294967295)
[1832321.600] -> zwp_linux_dmabuf_v1@9.modifier(961959257, 0, 0)
[1832321.626] -> zwp_linux_dmabuf_v1@9.modifier(961959257, 100663296, 1)
[1832321.650] -> zwp_linux_dmabuf_v1@9.modifier(961959257, 100663296, 2)
[1832321.674] -> zwp_linux_dmabuf_v1@9.modifier(961959257, 100663296, 3)
[1832321.700] -> zwp_linux_dmabuf_v1@9.modifier(961959257, 100663296, 4)
[1832321.726] -> zwp_linux_dmabuf_v1@9.modifier(825316697, 16777215, 4294967295)
[1832321.754] -> zwp_linux_dmabuf_v1@9.modifier(825316697, 0, 0)
[1832321.780] -> zwp_linux_dmabuf_v1@9.modifier(825316697, 100663296, 1)
[1832321.807] -> zwp_linux_dmabuf_v1@9.modifier(825316697, 100663296, 2)
[1832321.832] -> zwp_linux_dmabuf_v1@9.modifier(825316697, 100663296, 3)
[1832321.858] -> zwp_linux_dmabuf_v1@9.modifier(825316697, 100663296, 4)
[1832321.884] -> zwp_linux_dmabuf_v1@9.modifier(842093913, 16777215, 4294967295)
[1832321.911] -> zwp_linux_dmabuf_v1@9.modifier(842093913, 0, 0)
[1832321.938] -> zwp_linux_dmabuf_v1@9.modifier(842093913, 100663296, 1)
[1832321.965] -> zwp_linux_dmabuf_v1@9.modifier(842093913, 100663296, 2)
[1832321.989] -> zwp_linux_dmabuf_v1@9.modifier(842093913, 100663296, 3)
[1832322.016] -> zwp_linux_dmabuf_v1@9.modifier(842093913, 100663296, 4)
[1832322.049] -> zwp_linux_dmabuf_v1@9.modifier(909202777, 16777215, 4294967295)
[1832322.077] -> zwp_linux_dmabuf_v1@9.modifier(909202777, 0, 0)
[1832322.106] -> zwp_linux_dmabuf_v1@9.modifier(909202777, 100663296, 1)
[1832322.135] -> zwp_linux_dmabuf_v1@9.modifier(909202777, 100663296, 2)
[1832322.161] -> zwp_linux_dmabuf_v1@9.modifier(909202777, 100663296, 3)
[1832322.188] -> zwp_linux_dmabuf_v1@9.modifier(909202777, 100663296, 4)
[1832322.215] -> zwp_linux_dmabuf_v1@9.modifier(875713881, 16777215, 4294967295)
[1832322.248] -> zwp_linux_dmabuf_v1@9.modifier(875713881, 0, 0)
[1832322.277] -> zwp_linux_dmabuf_v1@9.modifier(875713881, 100663296, 1)
[1832322.305] -> zwp_linux_dmabuf_v1@9.modifier(875713881, 100663296, 2)
[1832322.334] -> zwp_linux_dmabuf_v1@9.modifier(875713881, 100663296, 3)
[1832322.362] -> zwp_linux_dmabuf_v1@9.modifier(875713881, 100663296, 4)
[1832322.394] -> zwp_linux_dmabuf_v1@9.modifier(961893977, 16777215, 4294967295)
[1832322.422] -> zwp_linux_dmabuf_v1@9.modifier(961893977, 0, 0)
[1832322.450] -> zwp_linux_dmabuf_v1@9.modifier(961893977, 100663296, 1)
[1832322.477] -> zwp_linux_dmabuf_v1@9.modifier(961893977, 100663296, 2)
[1832322.504] -> zwp_linux_dmabuf_v1@9.modifier(961893977, 100663296, 3)
[1832322.532] -> zwp_linux_dmabuf_v1@9.modifier(961893977, 100663296, 4)
[1832322.561] -> zwp_linux_dmabuf_v1@9.modifier(825316953, 16777215, 4294967295)
[1832322.588] -> zwp_linux_dmabuf_v1@9.modifier(825316953, 0, 0)
[1832322.618] -> zwp_linux_dmabuf_v1@9.modifier(825316953, 100663296, 1)
[1832322.644] -> zwp_linux_dmabuf_v1@9.modifier(825316953, 100663296, 2)
[1832322.673] -> zwp_linux_dmabuf_v1@9.modifier(825316953, 100663296, 3)
[1832322.700] -> zwp_linux_dmabuf_v1@9.modifier(825316953, 100663296, 4)
[1832322.730] -> zwp_linux_dmabuf_v1@9.modifier(842094169, 16777215, 4294967295)
[1832322.760] -> zwp_linux_dmabuf_v1@9.modifier(842094169, 0, 0)
[1832322.787] -> zwp_linux_dmabuf_v1@9.modifier(842094169, 100663296, 1)
[1832322.816] -> zwp_linux_dmabuf_v1@9.modifier(842094169, 100663296, 2)
[1832322.842] -> zwp_linux_dmabuf_v1@9.modifier(842094169, 100663296, 3)
[1832322.869] -> zwp_linux_dmabuf_v1@9.modifier(842094169, 100663296, 4)
[1832322.899] -> zwp_linux_dmabuf_v1@9.modifier(909203033, 16777215, 4294967295)
[1832322.928] -> zwp_linux_dmabuf_v1@9.modifier(909203033, 0, 0)
[1832322.957] -> zwp_linux_dmabuf_v1@9.modifier(909203033, 100663296, 1)
[1832322.986] -> zwp_linux_dmabuf_v1@9.modifier(909203033, 100663296, 2)
[1832323.013] -> zwp_linux_dmabuf_v1@9.modifier(909203033, 100663296, 3)
[1832323.041] -> zwp_linux_dmabuf_v1@9.modifier(909203033, 100663296, 4)
[1832323.071] -> zwp_linux_dmabuf_v1@9.modifier(875714137, 16777215, 4294967295)
[1832323.101] -> zwp_linux_dmabuf_v1@9.modifier(875714137, 0, 0)
[1832323.128] -> zwp_linux_dmabuf_v1@9.modifier(875714137, 100663296, 1)
[1832323.155] -> zwp_linux_dmabuf_v1@9.modifier(875714137, 100663296, 2)
[1832323.182] -> zwp_linux_dmabuf_v1@9.modifier(875714137, 100663296, 3)
[1832323.209] -> zwp_linux_dmabuf_v1@9.modifier(875714137, 100663296, 4)
[1832323.240] -> zwp_linux_dmabuf_v1@9.modifier(842094158, 16777215, 4294967295)
[1832323.267] -> zwp_linux_dmabuf_v1@9.modifier(842094158, 0, 0)
[1832323.295] -> zwp_linux_dmabuf_v1@9.modifier(842094158, 100663296, 1)
[1832323.325] -> zwp_linux_dmabuf_v1@9.modifier(842094158, 100663296, 2)
[1832323.354] -> zwp_linux_dmabuf_v1@9.modifier(842094158, 100663296, 3)
[1832323.383] -> zwp_linux_dmabuf_v1@9.modifier(842094158, 100663296, 4)
[1832323.412] -> zwp_linux_dmabuf_v1@9.modifier(909203022, 16777215, 4294967295)
[1832323.442] -> zwp_linux_dmabuf_v1@9.modifier(909203022, 0, 0)
[1832323.469] -> zwp_linux_dmabuf_v1@9.modifier(909203022, 100663296, 1)
[1832323.497] -> zwp_linux_dmabuf_v1@9.modifier(909203022, 100663296, 2)
[1832323.525] -> zwp_linux_dmabuf_v1@9.modifier(909203022, 100663296, 3)
[1832323.553] -> zwp_linux_dmabuf_v1@9.modifier(909203022, 100663296, 4)
[1832323.584] -> zwp_linux_dmabuf_v1@9.modifier(1448434008, 16777215, 4294967295)
[1832323.614] -> zwp_linux_dmabuf_v1@9.modifier(1448434008, 0, 0)
[1832323.640] -> zwp_linux_dmabuf_v1@9.modifier(1448434008, 100663296, 1)
[1832323.667] -> zwp_linux_dmabuf_v1@9.modifier(1448434008, 100663296, 2)
[1832323.712] -> zwp_linux_dmabuf_v1@9.modifier(1448434008, 100663296, 3)
[1832323.742] -> zwp_linux_dmabuf_v1@9.modifier(1448434008, 100663296, 4)
[1832323.771] -> zwp_linux_dmabuf_v1@9.modifier(1448695129, 16777215, 4294967295)
[1832323.799] -> zwp_linux_dmabuf_v1@9.modifier(1448695129, 0, 0)
[1832323.827] -> zwp_linux_dmabuf_v1@9.modifier(1448695129, 100663296, 1)
[1832323.852] -> zwp_linux_dmabuf_v1@9.modifier(1448695129, 100663296, 2)
[1832323.877] -> zwp_linux_dmabuf_v1@9.modifier(1448695129, 100663296, 3)
[1832323.904] -> zwp_linux_dmabuf_v1@9.modifier(1448695129, 100663296, 4)
[1832323.932] -> zwp_linux_dmabuf_v1@9.modifier(1498831189, 16777215, 4294967295)
[1832323.958] -> zwp_linux_dmabuf_v1@9.modifier(1498831189, 0, 0)
[1832323.984] -> zwp_linux_dmabuf_v1@9.modifier(1498831189, 100663296, 1)
[1832324.012] -> zwp_linux_dmabuf_v1@9.modifier(1498831189, 100663296, 2)
[1832324.041] -> zwp_linux_dmabuf_v1@9.modifier(1498831189, 100663296, 3)
[1832324.066] -> zwp_linux_dmabuf_v1@9.modifier(1498831189, 100663296, 4)
[1832324.108] wl_registry@2.bind(19, "weston_direct_display_v1", 1, new id [unknown]@10)
[1832324.160] wl_registry@2.bind(22, "wl_output", 2, new id [unknown]@11)
[1832324.203] -> wl_output@11.geometry(0, 0, 152, 91, 0, "unknown", "unknown", 0)
[1832324.242] -> wl_output@11.scale(1)
[1832324.271] -> wl_output@11.mode(3, 800, 480, 66020)
[1832324.298] -> wl_output@11.done()
[1832324.326] wl_registry@2.bind(23, "wl_output", 2, new id [unknown]@12)
[1832324.365] -> wl_output@12.geometry(800, 0, 152, 91, 0, "unknown", "unknown", 0)
[1832324.402] -> wl_output@12.scale(1)
[1832324.430] -> wl_output@12.mode(3, 800, 600, 59863)
[1832324.457] -> wl_output@12.done()
[1832324.482] wl_registry@2.bind(24, "xdg_wm_base", 1, new id [unknown]@13)
[1832324.528] wl_display@1.get_registry(new id wl_registry@3)
[1832324.559] -> wl_registry@3.global(1, "wl_compositor", 5)
[1832324.600] -> wl_registry@3.global(2, "wl_subcompositor", 1)
[1832324.632] -> wl_registry@3.global(3, "wp_viewporter", 1)
[1832324.659] -> wl_registry@3.global(4, "zxdg_output_manager_v1", 2)
[1832324.688] -> wl_registry@3.global(5, "wp_presentation", 1)
[1832324.714] -> wl_registry@3.global(6, "wp_single_pixel_buffer_manager_v1", 1)
[1832324.743] -> wl_registry@3.global(7, "wp_tearing_control_manager_v1", 1)
[1832324.768] -> wl_registry@3.global(8, "zwp_relative_pointer_manager_v1", 1)
[1832324.794] -> wl_registry@3.global(9, "zwp_pointer_constraints_v1", 1)
[1832324.820] -> wl_registry@3.global(10, "zwp_input_timestamps_manager_v1", 1)
[1832324.846] -> wl_registry@3.global(11, "weston_capture_v1", 1)
[1832324.873] -> wl_registry@3.global(12, "wl_data_device_manager", 3)
[1832324.901] -> wl_registry@3.global(13, "wl_shm", 1)
[1832324.929] -> wl_registry@3.global(14, "weston_debug_v1", 1)
[1832324.959] -> wl_registry@3.global(15, "weston_touch_calibration", 1)
[1832324.986] -> wl_registry@3.global(16, "wl_drm", 2)
[1832325.013] -> wl_registry@3.global(17, "wl_seat", 7)
[1832325.038] -> wl_registry@3.global(18, "zwp_linux_dmabuf_v1", 4)
[1832325.064] -> wl_registry@3.global(19, "weston_direct_display_v1", 1)
[1832325.090] -> wl_registry@3.global(20, "zwp_linux_explicit_synchronization_v1", 2)
[1832325.117] -> wl_registry@3.global(21, "weston_content_protection", 1)
[1832325.148] -> wl_registry@3.global(22, "wl_output", 4)
[1832325.176] -> wl_registry@3.global(23, "wl_output", 4)
[1832325.201] -> wl_registry@3.global(24, "xdg_wm_base", 5)
[1832325.295] wl_display@1.sync(new id wl_callback@14)
[1832325.339] -> wl_callback@14.done(0)
[1832325.375] -> wl_display@1.delete_id(14)
[1832326.765] wl_registry@3.bind(18, "zwp_linux_dmabuf_v1", 4, new id [unknown]@15)
[1832326.835] zwp_linux_dmabuf_v1@15.get_default_feedback(new id zwp_linux_dmabuf_feedback_v1@14)
[1832326.880] -> zwp_linux_dmabuf_feedback_v1@14.format_table(fd 33, 2208)
[1832326.910] -> zwp_linux_dmabuf_feedback_v1@14.main_device(array[8])
[1832326.938] -> zwp_linux_dmabuf_feedback_v1@14.tranche_target_device(array[8])
[1832326.961] -> zwp_linux_dmabuf_feedback_v1@14.tranche_flags(0)
[1832326.984] -> zwp_linux_dmabuf_feedback_v1@14.tranche_formats(array[276])
[1832327.011] -> zwp_linux_dmabuf_feedback_v1@14.tranche_done()
[1832327.034] -> zwp_linux_dmabuf_feedback_v1@14.done()
[1832327.065] wl_display@1.sync(new id wl_callback@16)
[1832327.094] -> wl_callback@16.done(0)
[1832327.121] -> wl_display@1.delete_id(16)
[1832329.687] zwp_linux_dmabuf_feedback_v1@14.destroy()
[1832329.749] -> wl_display@1.delete_id(14)
[1832329.783] wl_registry@3.bind(16, "wl_drm", 2, new id [unknown]@16)
[1832329.826] -> wl_drm@16.device("/dev/dri/card0")
[1832330.100] -> wl_drm@16.format(808665665)
[1832330.172] -> wl_drm@16.format(808665688)
[1832330.204] -> wl_drm@16.format(875713089)
[1832330.233] -> wl_drm@16.format(875713112)
[1832330.256] -> wl_drm@16.format(909199186)
[1832330.280] -> wl_drm@16.format(961959257)
[1832330.305] -> wl_drm@16.format(825316697)
[1832330.327] -> wl_drm@16.format(842093913)
[1832330.350] -> wl_drm@16.format(909202777)
[1832330.371] -> wl_drm@16.format(875713881)
[1832330.393] -> wl_drm@16.format(842094158)
[1832330.415] -> wl_drm@16.format(909203022)
[1832330.436] -> wl_drm@16.format(1448695129)
[1832330.466] -> wl_drm@16.capabilities(1)
[1832330.499] wl_display@1.sync(new id wl_callback@17)
[1832330.535] -> wl_callback@17.done(0)
[1832330.560] -> wl_display@1.delete_id(17)
[1832338.994] wl_drm@16.authenticate(1)
[1832339.097] -> wl_drm@16.authenticated()
[1832339.149] wl_display@1.sync(new id wl_callback@17)
[1832339.188] -> wl_callback@17.done(0)
[1832339.221] -> wl_display@1.delete_id(17)
[1832572.567] wl_compositor@4.create_surface(new id wl_surface@17)
[1832572.669] xdg_wm_base@13.get_xdg_surface(new id xdg_surface@14, wl_surface@17)
[1832572.748] xdg_surface@14.get_toplevel(new id xdg_toplevel@18)
[1832572.803] xdg_toplevel@18.set_title("Cog")
[1832572.845] xdg_toplevel@18.set_app_id("com.igalia.Cog")
[1832572.881] wl_surface@17.commit()
[1832572.994] xdg_toplevel@18.set_fullscreen(nil)
[1832573.043] wl_seat@8.get_touch(new id wl_touch@19)
[1832573.097] -> xdg_toplevel@18.configure(800, 480, array[4])
[1832573.139] -> xdg_surface@14.configure(1)
[1832589.600] xdg_surface@14.ack_configure(1)
[1833514.818] wl_drm@16.authenticate(2)
[1833514.913] -> wl_drm@16.authenticated()
[1833514.963] wl_display@1.sync(new id wl_callback@20)
[1833515.003] -> wl_callback@20.done(1)
[1833515.035] -> wl_display@1.delete_id(20)
[1835666.061] wl_compositor@4.create_region(new id wl_region@20)
[1835666.256] wl_region@20.add(0, 0, 800, 480)
[1835666.349] wl_surface@17.set_opaque_region(wl_region@20)
[1835666.407] wl_region@20.destroy()
[1835666.460] -> wl_display@1.delete_id(20)
[1835666.518] zwp_linux_dmabuf_v1@15.create_params(new id zwp_linux_buffer_params_v1@21)
[1835666.583] zwp_linux_buffer_params_v1@21.add(fd 33, 0, 0, 3328, 100663296, 4)
[1835666.651] zwp_linux_buffer_params_v1@21.create_immed(new id wl_buffer@22, 800, 480, 875713089, 0)
[1835667.358] zwp_linux_buffer_params_v1@21.destroy()
[1835667.447] -> wl_display@1.delete_id(21)
[1835667.507] wl_surface@17.attach(wl_buffer@22, 0, 0)
[1835667.579] wl_surface@17.damage(0, 0, 800, 480)
[1835667.643] wl_surface@17.frame(new id wl_callback@23)
[1835667.698] wp_presentation@6.feedback(wl_surface@17, new id wp_presentation_feedback@24)
[1835667.749] wl_surface@17.commit()
[1835668.074] -> wl_surface@17.enter(wl_output@11)
[1835668.185] -> xdg_toplevel@18.configure(800, 480, array[8])
[1835668.393] -> xdg_surface@14.configure(2)
[1835669.601] wl_surface@17.set_buffer_scale(1)
[1835669.714] xdg_surface@14.ack_configure(2)
[1835768.224] -> wl_callback@23.done(32436)
[1835769.566] -> wl_display@1.delete_id(23)
[18:15:57.701] atomic: couldn't commit new state: Invalid argument
[18:15:57.702] repaint-flush failed: Invalid argument
[1835800.863] zwp_linux_dmabuf_v1@15.create_params(new id zwp_linux_buffer_params_v1@23)
[1835801.048] zwp_linux_buffer_params_v1@23.add(fd 34, 0, 0, 3328, 100663296, 4)
[1835801.103] zwp_linux_buffer_params_v1@23.create_immed(new id wl_buffer@21, 800, 480, 875713089, 0)
[1835801.503] zwp_linux_buffer_params_v1@23.destroy()
[1835801.588] -> wl_display@1.delete_id(23)
[1835801.637] wl_surface@17.attach(wl_buffer@21, 0, 0)
[1835801.707] wl_surface@17.damage(0, 0, 800, 480)
[1835801.761] wl_surface@17.frame(new id wl_callback@20)
[1835801.816] wp_presentation@6.feedback(wl_surface@17, new id wp_presentation_feedback@25)
[1835801.863] wl_surface@17.commit()
[1835802.010] -> wl_buffer@22.release()
[1835805.880] wl_buffer@22.destroy()
[1835806.235] -> wl_display@1.delete_id(22)
```https://gitlab.freedesktop.org/wayland/weston/-/issues/785Send wl_surface::enter right after xdg_surface creation2023-08-21T15:15:03ZLink MauveSend wl_surface::enter right after xdg_surface creationThis would let the surface know its scale factor before its first rendering, and avoid redrawing once it knows it if it is different.This would let the surface know its scale factor before its first rendering, and avoid redrawing once it knows it if it is different.https://gitlab.freedesktop.org/wayland/weston/-/issues/784Document VNC client set-up with the VNC backend2023-07-25T16:26:15ZMarius VladDocument VNC client set-up with the VNC backendremmina, vinagre and possibly others (but not tigervnc, vncviewer) doesn't seem to work out of the box with the VNC backend. We should include some documentation part on how to set these up, related to certificates issues.
Ref: https:/...remmina, vinagre and possibly others (but not tigervnc, vncviewer) doesn't seem to work out of the box with the VNC backend. We should include some documentation part on how to set these up, related to certificates issues.
Ref: https://oftc.irclog.whitequark.org/wayland/2023-07-25https://gitlab.freedesktop.org/wayland/weston/-/issues/783clients/stacking various improvements2023-07-25T07:08:23ZMarius Vladclients/stacking various improvements> A potential further follow-up from this would be improving the stacking client to allow a new window (similar to 'n') to create a new non-fullscreen window that also explicitly calls set_parent(nil).
The last part would probably need a...> A potential further follow-up from this would be improving the stacking client to allow a new window (similar to 'n') to create a new non-fullscreen window that also explicitly calls set_parent(nil).
The last part would probably need a toytoolkit adjustment as this is skipped entirely if the last parent match current one (which would be true in case of NULL -- or by default). With that I'd like to match what the gtk client is doing with the ability to turn on or off gtk_window_set_transient_for(). It seems that we have some unhandled corner cases.
Obviously also include your changes as well. Probably better to just add a couple of additional keys to do these.
https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/1261#note_1949810https://gitlab.freedesktop.org/wayland/weston/-/issues/782desktop-shell: Panel and background resizing2023-09-13T13:34:03ZMarius Vladdesktop-shell: Panel and background resizingDue to https://gitlab.freedesktop.org/wayland/weston/-/issues/780 I had to revert https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/1298, but with that we're still not correctly
resizing the panels & background in desktop-sh...Due to https://gitlab.freedesktop.org/wayland/weston/-/issues/780 I had to revert https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/1298, but with that we're still not correctly
resizing the panels & background in desktop-shell.
Either we use something else for them, or we don't use toytoolkit entirely.https://gitlab.freedesktop.org/wayland/weston/-/issues/781desktop-shell: Set parent to nil on surface without a parent2023-07-24T08:34:18ZMarius Vladdesktop-shell: Set parent to nil on surface without a parentFollow-up from https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/1261#note_2009834.
See also https://gitlab.freedesktop.org/wayland/weston/-/issues/450Follow-up from https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/1261#note_2009834.
See also https://gitlab.freedesktop.org/wayland/weston/-/issues/450https://gitlab.freedesktop.org/wayland/weston/-/issues/780Toytoolkit window minimum size no longer respected2023-07-24T08:47:16ZPekka Paalanenppaalanen@gmail.comToytoolkit window minimum size no longer respectedThe following discussion from !1298 should be addressed:
- [ ] @pq started a [discussion](https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/1298#note_2006556):
> This MR broke the window minimum size constraints. I am...The following discussion from !1298 should be addressed:
- [ ] @pq started a [discussion](https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/1298#note_2006556):
> This MR broke the window minimum size constraints. I am now able to interactively resize a window smaller than its smallest allowed size, which breaks e.g. decorations drawing. Reverting this patch fixes the problem.https://gitlab.freedesktop.org/wayland/weston/-/issues/779Build error when xwayland is disabled.2023-07-18T11:55:25ZTomohito EsakiBuild error when xwayland is disabled.Disabling xwayland (use -Dxwayland=false option in meson) causes build errors.
I think this is caused by the following patch.
```
commit: 388702c181829a99b1540eeea734dc496f62f7f4
frontend: Explicitly destroy Xwayland from frontend code
`...Disabling xwayland (use -Dxwayland=false option in meson) causes build errors.
I think this is caused by the following patch.
```
commit: 388702c181829a99b1540eeea734dc496f62f7f4
frontend: Explicitly destroy Xwayland from frontend code
```
Ninja build log:
```
$ ninja -C build/
ninja: Entering directory `build/'
[27/83] Linking target compositor/libexec_weston.so.0.0.0
FAILED: compositor/libexec_weston.so.0.0.0
cc -o compositor/libexec_weston.so.0.0.0 compositor/libexec_weston.so.0.0.0.p/meson-generated_.._.._protocol_text-input-unstable-v1-protocol.c.o compositor/libexec_weston.so.0.0.0.p/meson-generated_.._.._protocol_input-method-unstable-v1-protocol.c.o compositor/libexec_weston.so.0.0.0.p/main.c.o compositor/libexec_weston.so.0.0.0.p/text-backend.c.o compositor/libexec_weston.so.0.0.0.p/config-helpers.c.o compositor/libexec_weston.so.0.0.0.p/weston-screenshooter.c.o -Wl,--as-needed -Wl,--no-undefined -shared -fPIC -Wl,--start-group -Wl,-soname,libexec_weston.so.0 '-Wl,-rpath,$ORIGIN/../libweston:/home/etom/work/wayland/env/lib' -Wl,-rpath-link,/home/etom/work/wayland/src/weston/build/libweston -Wl,-rpath-link,/home/etom/work/wayland/env/lib shared/libshared.a libweston/libweston-13.so.0.0.0 /home/etom/work/wayland/env/lib/libwayland-client.so /home/etom/work/wayland/env/lib/libwayland-server.so /usr/lib/x86_64-linux-gnu/libpixman-1.so /usr/lib/x86_64-linux-gnu/libxkbcommon.so /usr/lib/x86_64-linux-gnu/libinput.so /usr/lib/x86_64-linux-gnu/libevdev.so -ldl -Wl,--end-group -pthread
/usr/bin/ld: compositor/libexec_weston.so.0.0.0.p/main.c.o: in function `wet_main':
/home/etom/work/wayland/src/weston/build/../compositor/main.c:4254: undefined reference to `wet_xwayland_destroy'
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.
```https://gitlab.freedesktop.org/wayland/weston/-/issues/778The mouse button release signal is not called after moving the surface2023-07-18T00:43:39ZHyomin KimThe mouse button release signal is not called after moving the surfaceAfter moving the surface, the button release signal is not called because move_grab_button and shell_grab_end don't transfer it to the client. Please refer to [the codes]. And same situation can be seen during resizing or rotating the su...After moving the surface, the button release signal is not called because move_grab_button and shell_grab_end don't transfer it to the client. Please refer to [the codes]. And same situation can be seen during resizing or rotating the surface. So the client doesn't know the mouse has been released.
There is an issue regarding this on chromium. [link]
Can I manage this issue by transferring the release signal from the shell_grab_end function?
[the codes]: https://gitlab.freedesktop.org/wayland/weston/-/blob/main/desktop-shell/shell.c#L1179
[link]: https://bugs.chromium.org/p/chromium/issues/detail?id=1432559&q=1432559&can=2https://gitlab.freedesktop.org/wayland/weston/-/issues/777[BUG]Unable to differentiate connectors by their name when displays are ident...2023-12-06T14:36:19Zsdikshit786[BUG]Unable to differentiate connectors by their name when displays are identicalI have noticed one issue with 2 identical display (2 HDMI with same resolution) I am not able to map the display based on their connector name and it gets changed.
Further investigating I found that the connector name is aasigned from ma...I have noticed one issue with 2 identical display (2 HDMI with same resolution) I am not able to map the display based on their connector name and it gets changed.
Further investigating I found that the connector name is aasigned from make_connector_name().[https://gitlab.freedesktop.org/wayland/weston/-/blob/main/libweston/backend-drm/drm.c#L1400](url)
Here the connector name is formed by combining the connector_type & connector_type_id.
In case of two identical display the connector_type is same and connector_type_id is subject to change based on which device appears first to kernel.
How to fix this?
I have looked a bit into the struct drmModeConnector and I was thinking if we call drmModeGetEncoder() and retrieve the crtc-id from it if that will be unique after bootup?
Please suggest any suitable way for mapping the display.https://gitlab.freedesktop.org/wayland/weston/-/issues/776Segfault when destroying shm buffers in a client2023-07-12T02:58:35ZDudemanguySegfault when destroying shm buffers in a clientI encountered this while working on a feature for [mpv](https://github.com/mpv-player/mpv/pull/11877). When the window resizes, I was destroying all the previously allocated shm buffers, but this actually causes Weston to segfault. In th...I encountered this while working on a feature for [mpv](https://github.com/mpv-player/mpv/pull/11877). When the window resizes, I was destroying all the previously allocated shm buffers, but this actually causes Weston to segfault. In the actual PR, I managed to avoid this by attaching NULL to the surface first and then doing a commit which makes sense, but still Weston shouldn't segfault here. I assume this is specific to shm since that code destroys buffers imported with linux-dmabuf and that has never caused any issues. Here's the traceback. Looks like `shm_buffer` is null which I assume is the problem.
```
Thread 1 "weston" received signal SIGSEGV, Segmentation fault.
0x00007ffff7ce9234 in wl_shm_buffer_get_stride () from /usr/lib/libwayland-server.so.0
#0 0x00007ffff7ce9234 in wl_shm_buffer_get_stride () at /usr/lib/libwayland-server.so.0
#1 0x00007ffff723dd78 in gl_renderer_attach_shm (es=0x555555ead3b0, buffer=0x555555eab430) at ../libweston/renderer-gl/gl-renderer.c:2317
bpp = 32
ec = 0x5555555699f0
gr = 0x555555588160
gs = 0x5555556eb1e0
gb = 0x20560
shm_buffer = 0x0
old_buffer = 0x0
gl_format = {0, 0, 0}
gl_pixel_type = 32767
shader_variant = SHADER_VARIANT_RGBA
pitch = 21845
offset = {0, 0, 0}
num_planes = 1
i = 5
using_glesv2 = false
yuv = 0x0
__PRETTY_FUNCTION__ = "gl_renderer_attach_shm"
#2 0x00007ffff7240332 in gl_renderer_attach (es=0x555555ead3b0, buffer=0x555555eab430) at ../libweston/renderer-gl/gl-renderer.c:3200
gs = 0x5555556eb1e0
ret = false
__PRETTY_FUNCTION__ = "gl_renderer_attach"
#3 0x00007ffff7240d1a in gl_renderer_create_surface (surface=0x555555ead3b0) at ../libweston/renderer-gl/gl-renderer.c:3445
gs = 0x5555556eb1e0
gr = 0x555555588160
#4 0x00007ffff72380dd in get_surface_state (surface=0x555555ead3b0) at ../libweston/renderer-gl/gl-renderer.c:250
#5 0x00007ffff724028b in gl_renderer_attach (es=0x555555ead3b0, buffer=0x555555eab430) at ../libweston/renderer-gl/gl-renderer.c:3176
gs = 0x0
ret = false
__PRETTY_FUNCTION__ = "gl_renderer_attach"
#6 0x00007ffff7d2b4bc in weston_surface_attach (surface=0x555555ead3b0, state=0x555555ee33e0, status=(WESTON_SURFACE_DIRTY_BUFFER | WESTON_SURFACE_DIRTY_SIZE | WESTON_SURFACE_DIRTY_BUFFER_PARAMS | WESTON_SURFACE_DIRTY_INPUT)) at ../libweston/compositor.c:2843
buffer = 0x555555eab430
old_buffer = 0x0
#7 0x00007ffff7d2e676 in weston_surface_commit_state (surface=0x555555ead3b0, state=0x555555ee33e0) at ../libweston/compositor.c:4222
view = 0x7fffffffdb20
opaque = {
extents = {
x1 = -8816,
y1 = 32767,
x2 = -138291166,
y2 = 32767
},
data = 0x555555ead030
}
status = (WESTON_SURFACE_DIRTY_BUFFER | WESTON_SURFACE_DIRTY_SIZE | WESTON_SURFACE_DIRTY_INPUT)
__PRETTY_FUNCTION__ = "weston_surface_commit_state"
#8 0x00007ffff7d2f322 in weston_subsurface_commit_from_cache (sub=0x555555ee3350) at ../libweston/compositor.c:4597
surface = 0x555555ead3b0
status = (WESTON_SURFACE_DIRTY_BUFFER | WESTON_SURFACE_DIRTY_POS | WESTON_SURFACE_DIRTY_INPUT | unknown: 0x5540)
#9 0x00007ffff7d2f8b4 in weston_subsurface_synchronized_commit (sub=0x555555ee3350) at ../libweston/compositor.c:4746
surface = 0x555555ead3b0
status = WESTON_SURFACE_CLEAN
tmp = 0x0
#10 0x00007ffff7d2f9e5 in weston_subsurface_parent_commit (sub=0x555555ee3350, parent_is_synchronized=0) at ../libweston/compositor.c:4772
status = WESTON_SURFACE_CLEAN
view = 0x555555ead448
#11 0x00007ffff7d2f84c in weston_subsurface_commit (sub=0x555555ee3760) at ../libweston/compositor.c:4725
surface = 0x555555ead030
status = (WESTON_SURFACE_DIRTY_BUFFER | WESTON_SURFACE_DIRTY_SIZE | WESTON_SURFACE_DIRTY_SUBSURFACE_CONFIG)
tmp = 0x555555ee3350
#12 0x00007ffff7d2ee3b in surface_commit (client=0x555555f5bc50, resource=0x555555e9c0f0) at ../libweston/compositor.c:4409
surface = 0x555555ead030
sub = 0x555555ee3760
status = (WESTON_SURFACE_DIRTY_BUFFER | WESTON_SURFACE_DIRTY_POS | WESTON_SURFACE_DIRTY_INPUT | unknown: 0x5540)
__PRETTY_FUNCTION__ = "surface_commit"
#13 0x00007ffff7a624f6 in () at /usr/lib/libffi.so.8
#14 0x00007ffff7a5ef5e in () at /usr/lib/libffi.so.8
#15 0x00007ffff7a61b73 in ffi_call () at /usr/lib/libffi.so.8
#16 0x00007ffff7ce8ada in () at /usr/lib/libwayland-server.so.0
#17 0x00007ffff7ced180 in () at /usr/lib/libwayland-server.so.0
#18 0x00007ffff7cebae2 in wl_event_loop_dispatch () at /usr/lib/libwayland-server.so.0
#19 0x00007ffff7cec2d7 in wl_display_run () at /usr/lib/libwayland-server.so.0
#20 0x00007ffff7fb24bd in wet_main (argc=1, argv=0x7fffffffe998, test_data=0x0) at ../compositor/main.c:4226
ret = 1
cmdline = 0x555555566b40 "H\227VUUU"
display = 0x5555555692e0
signals = {0x5555555694c0, 0x555555569510, 0x555555569560}
loop = 0x5555555693d0
i = 1
fd = -1
backend = 0x5555555699d0 "x11"
renderer = 0x0
shell = 0x555555dfe6f0 "desktop"
xwayland = false
modules = 0x555555dfdfe0 ""
option_modules = 0x0
log = 0x0
log_scopes = 0x0
flight_rec_scopes = 0x7ffff7fbc0b6 "log,drm-backend"
server_socket = 0x0
require_outputs = 0x0
idle_time = 300
help = 0
socket_name = 0x0
version = 0
noconfig = 0
debug_protocol = 0
numlock_on = false
config_file = 0x0
config = 0x555555566b40
section = 0x0
primary_client = 0x7fffffffe9a8
primary_client_destroyed = {
link = {
prev = 0x7ffff7ffd000 <_rtld_global>,
next = 0x7ffff7fda7e2 <_dl_fixup+258>
},
notify = 0x1
}
seat = 0x7fff00000001
wet = {
compositor = 0x5555555699f0,
config = 0x555555566b40,
parsed_options = 0x55555556a4e0,
drm_use_current_mode = false,
heads_changed_listener = {
link = {
prev = 0x555555569e20,
next = 0x555555569e20
},
notify = 0x7ffff7fabcc7 <simple_heads_changed>
},
simple_output_configure = 0x7ffff7fb0274 <x11_backend_output_configure>,
init_failed = false,
layoutput_list = {
prev = 0x7fffffffe4c8,
next = 0x7fffffffe4c8
},
child_process_list = {
prev = 0x555555e19b70,
next = 0x555555e19510
},
autolaunch_pid = -1,
autolaunch_watch = false,
use_color_manager = false,
screenshot_auth = {
link = {
prev = 0x0,
next = 0x0
},
notify = 0x0
},
require_outputs = REQUIRE_OUTPUTS_ANY
}
log_ctx = 0x55555555f5b0
logger = 0x555555568be0
flight_rec = 0x555555568c20
process = 0xffffffff
process_tmp = 0x7ffff7fa1ba0
wet_xwl = 0x0
mask = {
__val = {512, 140737352167415, 93824992290304, 96, 7, 26, 93824992269584, 0, 3, 140737352167415, 93824992290448, 80, 6, 140737352167415, 0, 0}
}
action = {
__sigaction_handler = {
sa_handler = 0x7ffff7fb1482 <sigint_helper>,
sa_sigaction = 0x7ffff7fb1482 <sigint_helper>
},
sa_mask = {
__val = {0, 140737349886944, 140737349881120, 140737350132768, 0, 140737350133952, 0, 140737350135392, 0, 140737350127328, 0, 140737350131808, 0, 12, 16, 0}
},
sa_flags = 0,
sa_restorer = 0x0
}
wait_for_debugger = false
protologger = 0x5555555681b0
core_options = {{
type = WESTON_OPTION_STRING,
name = 0x7ffff7fbbfd3 "backend",
short_name = 66 'B',
data = 0x7fffffffe388
}, {
type = WESTON_OPTION_STRING,
name = 0x7ffff7fbbfdb "renderer",
short_name = 0 '\000',
data = 0x7fffffffe390
}, {
type = WESTON_OPTION_STRING,
name = 0x7ffff7fbbe73 "shell",
short_name = 0 '\000',
data = 0x7fffffffe398
}, {
type = WESTON_OPTION_STRING,
name = 0x7ffff7fbbfe4 "socket",
short_name = 83 'S',
data = 0x7fffffffe3d0
}, {
type = WESTON_OPTION_INTEGER,
name = 0x7ffff7fbbfeb "idle-time",
short_name = 105 'i',
data = 0x7fffffffe36c
}, {
type = WESTON_OPTION_BOOLEAN,
name = 0x7ffff7fbbff5 "xwayland",
short_name = 0 '\000',
data = 0x7fffffffe365
}, {
type = WESTON_OPTION_STRING,
name = 0x7ffff7fbbffe "modules",
short_name = 0 '\000',
data = 0x7fffffffe3a8
}, {
type = WESTON_OPTION_STRING,
name = 0x7ffff7fbbfcf "log",
short_name = 0 '\000',
data = 0x7fffffffe3b0
}, {
type = WESTON_OPTION_BOOLEAN,
name = 0x7ffff7fbc006 "help",
short_name = 104 'h',
data = 0x7fffffffe370
}, {
type = WESTON_OPTION_BOOLEAN,
name = 0x7ffff7fbc00b "version",
short_name = 0 '\000',
data = 0x7fffffffe374
}, {
type = WESTON_OPTION_BOOLEAN,
name = 0x7ffff7fbc013 "no-config",
short_name = 0 '\000',
data = 0x7fffffffe378
}, {
type = WESTON_OPTION_STRING,
name = 0x7ffff7fbc01d "config",
short_name = 99 'c',
data = 0x7fffffffe3d8
}, {
type = WESTON_OPTION_BOOLEAN,
name = 0x7ffff7fbc024 "wait-for-debugger",
short_name = 0 '\000',
data = 0x7fffffffe367
}, {
type = WESTON_OPTION_BOOLEAN,
name = 0x7ffff7fbc036 "debug",
short_name = 0 '\000',
data = 0x7fffffffe37c
}, {
type = WESTON_OPTION_STRING,
name = 0x7ffff7fbc03c "logger-scopes",
short_name = 108 'l',
data = 0x7fffffffe3b8
}, {
type = WESTON_OPTION_STRING,
name = 0x7ffff7fbc04a "flight-rec-scopes",
short_name = 102 'f',
data = 0x7fffffffe3c0
}}
#21 0x000055555555515e in main (argc=1, argv=0x7fffffffe998) at ../compositor/executable.c:33
```https://gitlab.freedesktop.org/wayland/weston/-/issues/775NULL pointer dereference during surface activation sync for popups2023-08-07T13:11:03ZMax IhlenfeldtNULL pointer dereference during surface activation sync for popupsIn [`has_keyboard_focused_child_callback`](https://gitlab.freedesktop.org/wayland/weston/-/blob/main/desktop-shell/shell.c#L1646), `shsurf` can be NULL when popups are involved (it's possible that fullscreen xdg-toplevels also play a rol...In [`has_keyboard_focused_child_callback`](https://gitlab.freedesktop.org/wayland/weston/-/blob/main/desktop-shell/shell.c#L1646), `shsurf` can be NULL when popups are involved (it's possible that fullscreen xdg-toplevels also play a role).
<details><summary>Stack trace</summary>
```
Program received signal SIGSEGV, Segmentation fault.
0x00007ffff5caca20 in has_keyboard_focused_child_callback (surface=0x5555555eb770, user_data=0x7fffffffd25f) at ../../third_party/weston/src/desktop-shell/shell.c:1596
1596 if (shsurf->focus_count > 0) {
(gdb) bt
#0 0x00007ffff5caca20 in has_keyboard_focused_child_callback (surface=0x5555555eb770, user_data=0x7fffffffd25f) at ../../third_party/weston/src/desktop-shell/shell.c:1596
#1 0x00007ffff7f664c7 in weston_desktop_surface_foreach_child (surface=0x5555555bbb90, callback=0x7ffff5cac9c0 <has_keyboard_focused_child_callback>, user_data=0x7fffffffd25f)
at ../../third_party/weston/src/libweston/desktop/surface.c:913
#2 0x00007ffff5cac9a6 in has_keyboard_focused_child (shsurf=0x5555555ea310) at ../../third_party/weston/src/desktop-shell/shell.c:1614
#3 0x00007ffff5cac926 in sync_surface_activated_state (shsurf=0x5555555ea310) at ../../third_party/weston/src/desktop-shell/shell.c:1635
#4 0x00007ffff5caa721 in shell_surface_deactivate (shsurf=0x5555555ea310) at ../../third_party/weston/src/desktop-shell/shell.c:1665
#5 0x00007ffff5caa499 in activate (shell=0x55555558bdc0, view=0x5555555ec530, seat=0x55555558de50, flags=1) at ../../third_party/weston/src/desktop-shell/shell.c:3769
#6 0x00007ffff5cb19e1 in map (shell=0x55555558bdc0, shsurf=0x5555555ec7e0) at ../../third_party/weston/src/desktop-shell/shell.c:2364
#7 0x00007ffff5caf49f in desktop_surface_committed (desktop_surface=0x5555555ec3f0, sx=0, sy=0, data=0x55555558bdc0) at ../../third_party/weston/src/desktop-shell/shell.c:2416
#8 0x00007ffff7f62ca4 in weston_desktop_api_committed (desktop=0x55555558c3f0, surface=0x5555555ec3f0, sx=0, sy=0) at ../../third_party/weston/src/libweston/desktop/libweston-desktop.c:159
#9 0x00007ffff7f6aa10 in weston_desktop_xdg_toplevel_committed (toplevel=0x5555555ec330, sx=0, sy=0) at ../../third_party/weston/src/libweston/desktop/xdg-shell.c:786
#10 0x00007ffff7f69b90 in weston_desktop_xdg_surface_committed (dsurface=0x5555555ec3f0, user_data=0x5555555ec330, sx=0, sy=0)
at ../../third_party/weston/src/libweston/desktop/xdg-shell.c:1492
#11 0x00007ffff7f64ca5 in weston_desktop_surface_surface_committed (listener=0x5555555ec448, data=0x5555555ebc70) at ../../third_party/weston/src/libweston/desktop/surface.c:178
#12 0x00007ffff7f49217 in wl_signal_emit (signal=0x5555555ebc90, data=0x5555555ebc70) at ../../third_party/wayland/src/src/wayland-server-core.h:491
#13 0x00007ffff7f5a784 in weston_surface_commit_state (surface=0x5555555ebc70, state=0x5555555ebd98) at ../../third_party/weston/src/libweston/compositor.c:4103
#14 0x00007ffff7f59c80 in weston_surface_commit (surface=0x5555555ebc70) at ../../third_party/weston/src/libweston/compositor.c:4112
#15 0x00007ffff7f59475 in surface_commit (client=0x5555555b21d0, resource=0x5555555cdae0) at ../../third_party/weston/src/libweston/compositor.c:4195
#16 0x00007ffff7fb3235 in ffi_call_unix64 () at /home/igalia/chromium/src/out/WaylandDebug/libweston_compositor.so
#17 0x00007ffff7fb2789 in ffi_call_int () at /home/igalia/chromium/src/out/WaylandDebug/libweston_compositor.so
#18 0x00007ffff7fa00bb in wl_closure_invoke (closure=0x5555555eaaf0, flags=2, target=0x5555555cdae0, opcode=6, data=0x5555555b21d0) at ../../third_party/wayland/src/src/connection.c:1172
#19 0x00007ffff7f95a51 in wl_client_connection_data (fd=17, mask=1, data=0x5555555b21d0) at ../../third_party/wayland/src/src/wayland-server.c:439
#20 0x00007ffff7f930cc in wl_event_source_fd_dispatch (source=0x5555555c7ca0, ep=0x7fffffffdb10) at ../../third_party/wayland/src/src/event-loop.c:112
#21 0x00007ffff7f9488d in wl_event_loop_dispatch (loop=0x5555555795b0, timeout=-1) at ../../third_party/wayland/src/src/event-loop.c:1027
#22 0x00007ffff7f9708f in wl_display_run (display=0x5555555794c0) at ../../third_party/wayland/src/src/wayland-server.c:1435
#23 0x00007ffff7f379cd in wet_main (argc=1, argv=0x7fffffffe2e8, test_data=0x0) at ../../third_party/weston/src/compositor/main.c:4203
#24 0x00007ffff7f35706 in main (argc=8, argv=0x7fffffffe2e8) at ../../third_party/weston/src/compositor/executable.c:33
```
</details>
<details><summary>Client WAYLAND_DEBUG log</summary>
```
[4047911.020] -> wl_display@1.get_registry(new id wl_registry@2)
[4047911.105] -> wl_display@1.sync(new id wl_callback@3)
[4047911.163] wl_display@1.delete_id(3)
[4047911.179] wl_registry@2.global(1, "wl_compositor", 5)
[4047911.189] -> wl_registry@2.bind(1, "wl_compositor", 4, new id [unknown]@4)
[4047911.198] wl_registry@2.global(2, "wl_subcompositor", 1)
[4047911.203] -> wl_registry@2.bind(2, "wl_subcompositor", 1, new id [unknown]@5)
[4047911.210] wl_registry@2.global(3, "wp_viewporter", 1)
[4047911.215] -> wl_registry@2.bind(3, "wp_viewporter", 1, new id [unknown]@6)
[4047911.220] wl_registry@2.global(4, "zxdg_output_manager_v1", 2)
[4047911.225] -> wl_registry@2.bind(4, "zxdg_output_manager_v1", 2, new id [unknown]@7)
[4047911.230] wl_registry@2.global(5, "wp_presentation", 1)
[4047911.234] -> wl_registry@2.bind(5, "wp_presentation", 1, new id [unknown]@8)
[4047911.240] wl_registry@2.global(6, "wp_single_pixel_buffer_manager_v1", 1)
[4047911.245] -> wl_registry@2.bind(6, "wp_single_pixel_buffer_manager_v1", 1, new id [unknown]@9)
[4047911.251] wl_registry@2.global(7, "wp_tearing_control_manager_v1", 1)
[4047911.257] wl_registry@2.global(8, "zwp_relative_pointer_manager_v1", 1)
[4047911.266] -> wl_registry@2.bind(8, "zwp_relative_pointer_manager_v1", 1, new id [unknown]@10)
[4047911.271] wl_registry@2.global(9, "zwp_pointer_constraints_v1", 1)
[4047911.275] -> wl_registry@2.bind(9, "zwp_pointer_constraints_v1", 1, new id [unknown]@11)
[4047911.280] wl_registry@2.global(10, "zwp_input_timestamps_manager_v1", 1)
[4047911.283] wl_registry@2.global(11, "weston_capture_v1", 1)
[4047911.286] wl_registry@2.global(12, "wl_data_device_manager", 3)
[4047911.290] -> wl_registry@2.bind(12, "wl_data_device_manager", 3, new id [unknown]@12)
[4047911.294] wl_registry@2.global(13, "wl_shm", 1)
[4047911.298] -> wl_registry@2.bind(13, "wl_shm", 1, new id [unknown]@13)
[4047911.302] wl_registry@2.global(14, "zwp_linux_explicit_synchronization_v1", 2)
[4047911.304] -> wl_registry@2.bind(14, "zwp_linux_explicit_synchronization_v1", 2, new id [unknown]@14)
[4047911.308] wl_registry@2.global(15, "wl_output", 4)
[4047911.315] -> wl_registry@2.bind(15, "wl_output", 4, new id [unknown]@15)
[4047911.324] -> zxdg_output_manager_v1@7.get_xdg_output(new id zxdg_output_v1@16, wl_output@15)
[4047911.335] wl_registry@2.global(16, "zwp_input_panel_v1", 1)
[4047911.338] wl_registry@2.global(17, "zwp_text_input_manager_v1", 1)
[4047911.341] -> wl_registry@2.bind(17, "zwp_text_input_manager_v1", 1, new id [unknown]@17)
[4047911.346] wl_registry@2.global(18, "xdg_wm_base", 5)
[4047911.349] -> wl_registry@2.bind(18, "xdg_wm_base", 5, new id [unknown]@18)
[4047911.401] wl_registry@2.global(19, "weston_desktop_shell", 1)
[4047911.405] wl_registry@2.global(20, "weston_test", 1)
[4047911.408] wl_registry@2.global(21, "wl_seat", 7)
[4047911.411] -> wl_registry@2.bind(21, "wl_seat", 7, new id [unknown]@19)
[4047911.419] -> wl_data_device_manager@12.get_data_device(new id wl_data_device@20, wl_seat@19)
[4047911.438] wl_registry@2.global(22, "zwp_input_method_v1", 1)
[4047911.441] wl_callback@3.done(1)
[4047911.445] -> wl_display@1.sync(new id wl_callback@3)
[4047911.458] wp_presentation@8.clock_id(4)
[4047911.462] wl_output@15.geometry(0, 0, 1600, 800, 0, "weston", "headless", 0)
[4047911.469] wl_output@15.scale(1)
[4047911.471] wl_output@15.mode(3, 1600, 800, 60000)
[4047911.474] wl_output@15.name("headless")
[4047911.477] wl_output@15.description("headless")
[4047911.479] wl_output@15.done()
[4047911.485] zxdg_output_v1@16.logical_position(0, 0)
[4047911.488] zxdg_output_v1@16.logical_size(1600, 800)
[4047911.490] zxdg_output_v1@16.name("headless")
[4047911.492] zxdg_output_v1@16.done()
[4047911.494] wl_seat@19.capabilities(7)
[4047911.497] -> wl_seat@19.get_keyboard(new id wl_keyboard@21)
[4047911.515] -> wl_seat@19.get_pointer(new id wl_pointer@22)
[4047911.518] -> wl_seat@19.get_touch(new id wl_touch@23)
[4047911.565] -> wl_compositor@4.create_surface(new id wl_surface@24)
[4047911.580] wl_seat@19.name("test-seat")
[4047911.652] wl_display@1.delete_id(3)
[4047911.655] wl_callback@3.done(1)
[4047911.749] -> wl_display@1.get_registry(new id wl_registry@3)
[4047911.753] -> wl_display@1.sync(new id wl_callback@25)
[4047911.764] wl_keyboard@21.repeat_info(40, 400)
[4047911.773] wl_keyboard@21.keymap(1, fd 500, 63169)
[4047914.052] wl_display@1.delete_id(25)
[4047914.058] wl_registry@3.global(1, "wl_compositor", 5)
[4047914.063] wl_registry@3.global(2, "wl_subcompositor", 1)
[4047914.066] wl_registry@3.global(3, "wp_viewporter", 1)
[4047914.068] wl_registry@3.global(4, "zxdg_output_manager_v1", 2)
[4047914.071] wl_registry@3.global(5, "wp_presentation", 1)
[4047914.073] wl_registry@3.global(6, "wp_single_pixel_buffer_manager_v1", 1)
[4047914.075] wl_registry@3.global(7, "wp_tearing_control_manager_v1", 1)
[4047914.077] wl_registry@3.global(8, "zwp_relative_pointer_manager_v1", 1)
[4047914.080] wl_registry@3.global(9, "zwp_pointer_constraints_v1", 1)
[4047914.082] wl_registry@3.global(10, "zwp_input_timestamps_manager_v1", 1)
[4047914.085] wl_registry@3.global(11, "weston_capture_v1", 1)
[4047914.087] wl_registry@3.global(12, "wl_data_device_manager", 3)
[4047914.090] wl_registry@3.global(13, "wl_shm", 1)
[4047914.091] wl_registry@3.global(14, "zwp_linux_explicit_synchronization_v1", 2)
[4047914.094] wl_registry@3.global(15, "wl_output", 4)
[4047914.096] wl_registry@3.global(16, "zwp_input_panel_v1", 1)
[4047914.098] wl_registry@3.global(17, "zwp_text_input_manager_v1", 1)
[4047914.101] wl_registry@3.global(18, "xdg_wm_base", 5)
[4047914.103] wl_registry@3.global(19, "weston_desktop_shell", 1)
[4047914.106] wl_registry@3.global(20, "weston_test", 1)
[4047914.112] -> wl_registry@3.bind(20, "weston_test", 1, new id [unknown]@26)
[4047914.116] wl_registry@3.global(21, "wl_seat", 7)
[4047914.119] wl_registry@3.global(22, "zwp_input_method_v1", 1)
[4047914.121] wl_callback@25.done(1)
[4047918.762] -> weston_test@26.reset_pointer()
[4047918.778] -> weston_test@26.send_key(0, 7044, 844538000, 29, 0)
[4047918.782] -> weston_test@26.send_key(0, 7044, 844546000, 42, 0)
[4047918.786] -> weston_test@26.send_key(0, 7044, 844549000, 56, 0)
[4047918.789] -> weston_test@26.send_key(0, 7044, 844552000, 125, 0)
[4047918.792] -> weston_test@26.send_key(0, 7044, 844556000, 97, 0)
[4047918.795] -> weston_test@26.send_key(0, 7044, 844558000, 54, 0)
[4047918.798] -> weston_test@26.send_key(0, 7044, 844561000, 100, 0)
[4047918.801] -> weston_test@26.send_key(0, 7044, 844564000, 126, 0)
[4047918.810] -> wl_display@1.sync(new id wl_callback@25)
[4047918.899] wl_display@1.delete_id(25)
[4047918.903] weston_test@26.pointer_position(100.00000000, 100.00000000)
[4047918.908] weston_test@26.keyboard_key(29, 0)
[4047918.911] weston_test@26.keyboard_key(42, 0)
[4047918.913] weston_test@26.keyboard_key(56, 0)
[4047918.915] weston_test@26.keyboard_key(125, 0)
[4047918.919] weston_test@26.keyboard_key(97, 0)
[4047918.921] weston_test@26.keyboard_key(54, 0)
[4047918.923] weston_test@26.keyboard_key(100, 0)
[4047918.925] weston_test@26.keyboard_key(126, 0)
[4047918.928] wl_callback@25.done(1)
[4048245.600] -> wl_display@1.get_registry(new id wl_registry@2)
[4048245.612] -> wl_display@1.sync(new id wl_callback@3)
[4048245.786] wl_display@1.delete_id(3)
[4048245.790] wl_registry@2.global(1, "wl_compositor", 5)
[4048245.794] -> wl_registry@2.bind(1, "wl_compositor", 3, new id [unknown]@4)
[4048245.798] wl_registry@2.global(2, "wl_subcompositor", 1)
[4048245.801] -> wl_registry@2.bind(2, "wl_subcompositor", 1, new id [unknown]@5)
[4048245.805] wl_registry@2.global(3, "wp_viewporter", 1)
[4048245.807] wl_registry@2.global(4, "zxdg_output_manager_v1", 2)
[4048245.810] -> wl_registry@2.bind(4, "zxdg_output_manager_v1", 2, new id [unknown]@6)
[4048245.812] -> wl_display@1.sync(new id wl_callback@7)
[4048245.815] wl_registry@2.global(5, "wp_presentation", 1)
[4048245.817] wl_registry@2.global(6, "wp_single_pixel_buffer_manager_v1", 1)
[4048245.819] wl_registry@2.global(7, "wp_tearing_control_manager_v1", 1)
[4048245.821] wl_registry@2.global(8, "zwp_relative_pointer_manager_v1", 1)
[4048245.824] wl_registry@2.global(9, "zwp_pointer_constraints_v1", 1)
[4048245.827] wl_registry@2.global(10, "zwp_input_timestamps_manager_v1", 1)
[4048245.831] wl_registry@2.global(11, "weston_capture_v1", 1)
[4048245.834] wl_registry@2.global(12, "wl_data_device_manager", 3)
[4048245.837] -> wl_registry@2.bind(12, "wl_data_device_manager", 3, new id [unknown]@8)
[4048245.839] wl_registry@2.global(13, "wl_shm", 1)
[4048245.842] -> wl_registry@2.bind(13, "wl_shm", 1, new id [unknown]@9)
[4048245.845] wl_registry@2.global(14, "zwp_linux_explicit_synchronization_v1", 2)
[4048245.857] wl_registry@2.global(15, "wl_output", 4)
[4048245.860] -> wl_registry@2.bind(15, "wl_output", 2, new id [unknown]@10)
[4048245.896] -> zxdg_output_manager_v1@6.get_xdg_output(new id zxdg_output_v1@11, wl_output@10)
[4048245.900] -> wl_display@1.sync(new id wl_callback@12)
[4048245.903] wl_registry@2.global(16, "zwp_input_panel_v1", 1)
[4048245.910] wl_registry@2.global(17, "zwp_text_input_manager_v1", 1)
[4048245.913] wl_registry@2.global(18, "xdg_wm_base", 5)
[4048245.916] wl_registry@2.global(19, "weston_desktop_shell", 1)
[4048245.918] wl_registry@2.global(20, "weston_test", 1)
[4048245.920] wl_registry@2.global(21, "wl_seat", 7)
[4048245.925] wl_registry@2.global(22, "zwp_input_method_v1", 1)
[4048245.927] wl_callback@3.done(1)
[4048245.974] -> wl_shm@9.create_pool(new id wl_shm_pool@3, fd 534, 2304)
[4048246.080] -> wl_shm_pool@3.resize(6912)
[4048246.725] -> wl_shm_pool@3.resize(16128)
[4048246.738] -> wl_shm_pool@3.resize(34560)
[4048246.764] -> wl_shm_pool@3.resize(71424)
[4048246.789] -> wl_shm_pool@3.resize(145152)
[4048246.859] -> wl_shm_pool@3.resize(292608)
[4048247.587] -> wl_shm_pool@3.resize(587520)
[4048249.225] -> wl_shm_pool@3.resize(1177344)
[4048251.888] -> wl_registry@2.bind(21, "wl_seat", 5, new id [unknown]@13)
[4048255.110] -> wl_compositor@4.create_surface(new id wl_surface@14)
[4048255.124] -> wl_data_device_manager@8.get_data_device(new id wl_data_device@15, wl_seat@13)
[4048255.193] -> wl_compositor@4.create_surface(new id wl_surface@16)
[4048255.197] -> wl_display@1.sync(new id wl_callback@17)
[4048255.391] wl_display@1.delete_id(7)
[4048255.399] wl_display@1.delete_id(12)
[4048255.401] wl_display@1.delete_id(17)
[4048255.403] wl_callback@7.done(1)
[4048255.405] wl_shm@9.format(0)
[4048255.407] wl_shm@9.format(1)
[4048255.409] wl_output@10.geometry(0, 0, 1600, 800, 0, "weston", "headless", 0)
[4048255.416] wl_output@10.scale(1)
[4048255.418] wl_output@10.mode(3, 1600, 800, 60000)
[4048255.421] wl_output@10.done()
[4048255.423] zxdg_output_v1@11.logical_position(0, 0)
[4048255.425] zxdg_output_v1@11.logical_size(1600, 800)
[4048255.427] zxdg_output_v1@11.name("headless")
[4048255.429] zxdg_output_v1@11.done()
[4048255.439] wl_callback@12.done(1)
[4048255.441] wl_seat@13.capabilities(7)
[4048255.444] -> wl_seat@13.get_pointer(new id wl_pointer@12)
[4048255.455] -> wl_seat@13.get_keyboard(new id wl_keyboard@7)
[4048255.460] -> wl_seat@13.get_touch(new id wl_touch@18)
[4048255.474] wl_seat@13.name("test-seat")
[4048255.476] wl_callback@17.done(1)
[4048255.480] -> wl_registry@2.bind(18, "xdg_wm_base", 1, new id [unknown]@17)
[4048319.971] -> wl_compositor@4.create_surface(new id wl_surface@19)
[4048346.171] -> wl_shm@13.create_pool(new id wl_shm_pool@25, fd 544, 2304)
[4048346.328] -> wl_shm_pool@25.resize(6912)
[4048347.119] -> wl_shm_pool@25.resize(16128)
[4048347.138] -> wl_shm_pool@25.resize(34560)
[4048347.158] -> wl_shm_pool@25.resize(71424)
[4048347.193] -> wl_shm_pool@25.resize(145152)
[4048347.273] -> wl_shm_pool@25.resize(292608)
[4048348.303] -> wl_shm_pool@25.resize(587520)
[4048350.224] -> wl_shm_pool@25.resize(1177344)
[4048476.206] -> wl_compositor@4.create_surface(new id wl_surface@27)
[4048476.226] -> wp_viewporter@6.get_viewport(new id wp_viewport@28, wl_surface@27)
[4048476.346] -> wl_compositor@4.create_surface(new id wl_surface@29)
[4048476.352] -> wp_viewporter@6.get_viewport(new id wp_viewport@30, wl_surface@29)
[4048476.441] -> wl_compositor@4.create_region(new id wl_region@31)
[4048476.446] -> wl_region@31.add(0, 0, 1050, 780)
[4048476.450] -> wl_surface@27.set_opaque_region(wl_region@31)
[4048476.454] -> wl_region@31.destroy()
[4048677.293] -> wl_surface@27.attach(nil, 0, 0)
[4048677.308] -> wl_surface@27.commit()
[4048677.348] -> xdg_wm_base@18.get_xdg_surface(new id xdg_surface@32, wl_surface@27)
[4048677.359] -> xdg_surface@32.get_toplevel(new id xdg_toplevel@33)
[4048677.383] -> xdg_toplevel@33.set_app_id("chromium-browser (/tmp/scoped_dirHWDgUQ/user_data)")
[4048677.390] -> xdg_toplevel@33.set_title("Untitled - Chromium")
[4048678.595] -> xdg_toplevel@33.set_min_size(532, 127)
[4048678.604] -> xdg_toplevel@33.set_max_size(0, 0)
[4048678.611] -> xdg_toplevel@33.unset_maximized()
[4048679.158] -> xdg_toplevel@33.set_min_size(532, 127)
[4048679.165] -> xdg_toplevel@33.set_max_size(0, 0)
[4048679.177] -> wl_surface@27.commit()
[4048679.607] -> xdg_surface@32.set_window_geometry(16, 10, 1018, 738)
[4048684.157] wl_display@1.delete_id(31)
[4048684.170] xdg_toplevel@33.wm_capabilities(array[12])
[4048684.195] xdg_toplevel@33.configure(0, 0, array[0])
[4048684.761] xdg_surface@32.configure(2)
[4048685.188] -> xdg_surface@32.ack_configure(2)
[4048685.854] -> wl_shm@13.create_pool(new id wl_shm_pool@31, fd 620, 3276000)
[4048685.880] -> wl_shm_pool@31.create_buffer(new id wl_buffer@34, 0, 1050, 780, 4200, 0)
[4048685.892] -> wl_shm_pool@31.destroy()
[4048685.918] -> wl_surface@27.attach(wl_buffer@34, 0, 0)
[4048685.922] -> wl_surface@27.damage(0, 0, 1050, 780)
[4048685.925] -> wl_surface@27.frame(new id wl_callback@35)
[4048685.932] -> wl_surface@27.commit()
[4048686.111] wl_keyboard@7.repeat_info(40, 400)
[4048686.118] wl_keyboard@7.keymap(1, fd 619, 63169)
[4048689.436] wl_display@1.delete_id(31)
[4048689.446] wl_surface@27.enter(wl_output@15)
[4048690.051] wl_keyboard@21.enter(3, wl_surface@27, array[0])
[4048690.072] wl_keyboard@21.modifiers(3, 0, 0, 0, 0)
[4048690.132] wl_data_device@20.selection(nil)
[4048690.156] xdg_toplevel@33.configure(0, 0, array[4])
[4048692.849] xdg_surface@32.configure(4)
[4048693.285] -> xdg_surface@32.ack_configure(4)
[4048693.830] -> wl_shm@13.create_pool(new id wl_shm_pool@31, fd 621, 3276000)
[4048693.838] -> wl_shm_pool@31.create_buffer(new id wl_buffer@36, 0, 1050, 780, 4200, 0)
[4048693.850] -> wl_shm_pool@31.destroy()
[4048693.861] -> wl_surface@27.attach(wl_buffer@36, 0, 0)
[4048693.865] -> wl_surface@27.damage(0, 0, 1050, 780)
[4048693.869] -> wl_surface@27.frame(new id wl_callback@37)
[4048693.872] -> wl_surface@27.commit()
[4048696.991] wl_display@1.delete_id(31)
[4048699.284] wl_display@1.delete_id(37)
[4048699.292] wl_display@1.delete_id(35)
[4048699.295] wl_pointer@22.enter(6, wl_surface@27, 17.00000000, 94.00000000)
[4048699.791] -> wl_surface@24.set_buffer_scale(1)
[4048699.802] -> wl_shm_pool@25.create_buffer(new id wl_buffer@31, 417024, 24, 24, 96, 0)
[4048699.809] -> wl_surface@24.damage(0, 0, 24, 24)
[4048699.812] -> wl_surface@24.attach(wl_buffer@31, 0, 0)
[4048699.815] -> wl_surface@24.commit()
[4048699.818] -> wl_pointer@22.set_cursor(6, wl_surface@24, 4, 4)
[4048700.312] wl_pointer@22.frame()
[4048700.322] xdg_wm_base@18.ping(7)
[4048700.325] -> xdg_wm_base@18.pong(7)
[4048700.331] wl_callback@37.done(7045353)
[4048700.335] wl_callback@35.done(7045353)
[4048881.136] -> xdg_toplevel@33.set_title("about:blank - Chromium")
[4048934.004] -> wl_shm@13.create_pool(new id wl_shm_pool@37, fd 682, 3276000)
[4048934.020] -> wl_shm_pool@37.create_buffer(new id wl_buffer@38, 0, 1050, 780, 4200, 0)
[4048934.036] -> wl_shm_pool@37.destroy()
[4048942.782] -> wl_surface@27.frame(new id wl_callback@39)
[4048942.808] -> wp_presentation@8.feedback(wl_surface@27, new id wp_presentation_feedback@40)
[4048942.815] -> wl_surface@27.attach(wl_buffer@38, 0, 0)
[4048942.826] -> zwp_linux_explicit_synchronization_v1@14.get_synchronization(new id zwp_linux_surface_synchronization_v1@41, wl_surface@27)
[4048942.836] -> zwp_linux_surface_synchronization_v1@41.get_release(new id zwp_linux_buffer_release_v1@42)
[4048942.845] -> wl_compositor@4.create_region(new id wl_region@43)
[4048942.849] -> wl_region@43.add(6, 0, 1038, 758)
[4048942.856] -> wl_surface@27.set_input_region(wl_region@43)
[4048942.861] -> wl_region@43.destroy()
[4048942.867] -> wl_compositor@4.create_region(new id wl_region@44)
[4048942.872] -> wl_region@44.add(24, 10, 1002, 8)
[4048942.875] -> wl_region@44.add(16, 18, 1018, 730)
[4048942.878] -> wl_surface@27.set_opaque_region(wl_region@44)
[4048942.881] -> wl_region@44.destroy()
[4048942.889] -> wl_surface@27.damage(0, 0, 1050, 780)
[4048942.895] -> wl_surface@27.commit()
[4048958.700] wl_display@1.delete_id(37)
[4048958.715] wl_display@1.delete_id(43)
[4048958.718] wl_display@1.delete_id(44)
[4048958.721] wl_display@1.delete_id(42)
[4048958.723] wl_display@1.delete_id(39)
[4048958.726] zwp_linux_buffer_release_v1@42.immediate_release()
[4048958.748] wl_callback@39.done(7045610)
[4048990.318] wl_display@1.delete_id(40)
[4048990.331] wp_presentation_feedback@40.sync_output(wl_output@15)
[4048990.334] wp_presentation_feedback@40.presented(0, 7045, 635632751, 16666666, 0, 0, 0)
[4048997.328] -> xdg_toplevel@33.set_title("127.0.0.1:39985/notifications/notification_tester.html - Chromium")
[4049006.578] -> wl_shm@13.create_pool(new id wl_shm_pool@39, fd 685, 3276000)
[4049006.594] -> wl_shm_pool@39.create_buffer(new id wl_buffer@42, 0, 1050, 780, 4200, 0)
[4049006.605] -> wl_shm_pool@39.destroy()
[4049007.784] -> xdg_toplevel@33.set_fullscreen(nil)
[4049007.895] -> xdg_toplevel@33.set_min_size(500, 0)
[4049007.899] -> xdg_toplevel@33.set_max_size(0, 0)
[4049009.157] -> wl_compositor@4.create_surface(new id wl_surface@44)
[4049009.170] -> wp_viewporter@6.get_viewport(new id wp_viewport@43, wl_surface@44)
[4049009.196] -> wl_compositor@4.create_surface(new id wl_surface@37)
[4049009.201] -> wp_viewporter@6.get_viewport(new id wp_viewport@45, wl_surface@37)
[4049009.235] -> wl_compositor@4.create_region(new id wl_region@46)
[4049009.239] -> wl_region@46.add(0, 0, 1, 1)
[4049009.243] -> wl_surface@44.set_opaque_region(wl_region@46)
[4049009.246] -> wl_region@46.destroy()
[4049021.691] wl_display@1.delete_id(39)
[4049021.707] xdg_toplevel@33.configure(1600, 800, array[8])
[4049021.794] xdg_surface@32.configure(8)
[4049029.580] -> xdg_toplevel@33.set_min_size(500, 1)
[4049029.593] -> xdg_toplevel@33.set_max_size(0, 0)
[4049029.617] -> xdg_surface@32.set_window_geometry(0, 0, 1600, 800)
[4049029.624] -> xdg_surface@32.ack_configure(8)
[4049031.584] -> wl_surface@27.frame(new id wl_callback@39)
[4049031.601] -> wp_presentation@8.feedback(wl_surface@27, new id wp_presentation_feedback@47)
[4049031.608] -> wl_surface@27.attach(wl_buffer@42, 0, 0)
[4049031.612] -> zwp_linux_surface_synchronization_v1@41.get_release(new id zwp_linux_buffer_release_v1@48)
[4049031.619] -> wl_compositor@4.create_region(new id wl_region@49)
[4049031.622] -> wl_region@49.add(0, 0, 1600, 800)
[4049031.625] -> wl_surface@27.set_input_region(wl_region@49)
[4049031.628] -> wl_region@49.destroy()
[4049031.632] -> wl_compositor@4.create_region(new id wl_region@50)
[4049031.635] -> wl_region@50.add(0, 0, 1600, 800)
[4049031.638] -> wl_surface@27.set_opaque_region(wl_region@50)
[4049031.640] -> wl_region@50.destroy()
[4049031.646] -> wl_surface@27.damage(0, 0, 1050, 748)
[4049031.651] -> wl_surface@27.commit()
[4049032.216] -> wl_surface@24.set_buffer_scale(1)
[4049032.226] -> wl_surface@24.damage(0, 0, 24, 24)
[4049032.230] -> wl_surface@24.attach(wl_buffer@31, 0, 0)
[4049032.233] -> wl_surface@24.commit()
[4049032.237] -> wl_pointer@22.set_cursor(6, wl_surface@24, 4, 4)
[4049032.248] -> wl_surface@24.set_buffer_scale(1)
[4049032.253] -> wl_surface@24.damage(0, 0, 24, 24)
[4049032.255] -> wl_surface@24.attach(wl_buffer@31, 0, 0)
[4049032.258] -> wl_surface@24.commit()
[4049032.260] -> wl_pointer@22.set_cursor(6, wl_surface@24, 4, 4)
[4049035.058] -> wl_surface@44.attach(nil, 0, 0)
[4049035.070] -> wl_surface@44.commit()
[4049035.076] -> xdg_wm_base@18.get_xdg_surface(new id xdg_surface@40, wl_surface@44)
[4049035.086] -> xdg_wm_base@18.create_positioner(new id xdg_positioner@51)
[4049035.090] -> xdg_positioner@51.set_anchor_rect(364, 55, 1, 1)
[4049035.093] -> xdg_positioner@51.set_size(341, 54)
[4049035.096] -> xdg_positioner@51.set_anchor(5)
[4049035.098] -> xdg_positioner@51.set_gravity(8)
[4049035.101] -> xdg_positioner@51.set_constraint_adjustment(8)
[4049035.104] -> xdg_surface@40.get_popup(new id xdg_popup@52, xdg_surface@32, xdg_positioner@51)
[4049035.128] -> wl_surface@44.commit()
[4049035.131] -> xdg_positioner@51.destroy()
[4049035.137] -> xdg_surface@40.set_window_geometry(0, 0, 341, 54)
[4049035.516] wl_display@1.delete_id(46)
[4049035.524] wl_display@1.delete_id(49)
[4049035.526] wl_display@1.delete_id(50)
[4049035.528] wl_display@1.delete_id(51)
[4049035.529] xdg_popup@52.configure(364, 55, 341, 54)
[4049035.550] xdg_surface@40.configure(9)
[4049035.564] -> xdg_surface@40.ack_configure(9)
[4049035.721] -> wl_shm@13.create_pool(new id wl_shm_pool@51, fd 684, 73656)
[4049035.727] -> wl_shm_pool@51.create_buffer(new id wl_buffer@50, 0, 341, 54, 1364, 0)
[4049035.737] -> wl_shm_pool@51.destroy()
[4049035.746] -> wl_surface@44.attach(wl_buffer@50, 0, 0)
[4049035.749] -> wl_surface@44.damage(0, 0, 341, 54)
[4049035.752] -> wl_surface@44.frame(new id wl_callback@49)
[4049035.756] -> wl_surface@44.commit()
[4049039.899] -> xdg_wm_base@18.create_positioner(new id xdg_positioner@46)
[4049039.909] -> xdg_positioner@46.set_anchor_rect(629, 45, 1, 1)
[4049039.913] -> xdg_positioner@46.set_size(341, 54)
[4049039.916] -> xdg_positioner@46.set_anchor(5)
[4049039.920] -> xdg_positioner@46.set_gravity(8)
[4049039.922] -> xdg_positioner@46.set_constraint_adjustment(8)
[4049039.925] -> xdg_popup@52.reposition(xdg_positioner@46, 2)
[4049039.931] -> xdg_positioner@46.destroy()
[4049044.928] wl_display@1.delete_id(51)
[4049044.938] wl_display@1.delete_id(48)
[4049044.940] wl_display@1.delete_id(39)
[4049044.942] wl_display@1.delete_id(49)
[4049044.944] wl_surface@44.enter(wl_output@15)
[4049044.951] xdg_popup@52.repositioned(2)
[4049044.984] xdg_popup@52.configure(629, 45, 341, 54)
[4049045.000] xdg_surface@40.configure(10)
[4049045.030] -> xdg_surface@40.ack_configure(10)
[4049045.166] -> wl_shm@13.create_pool(new id wl_shm_pool@51, fd 684, 73656)
[4049045.173] -> wl_shm_pool@51.create_buffer(new id wl_buffer@53, 0, 341, 54, 1364, 0)
[4049045.183] -> wl_shm_pool@51.destroy()
[4049045.190] -> wl_surface@44.attach(wl_buffer@53, 0, 0)
[4049045.194] -> wl_surface@44.damage(0, 0, 341, 54)
[4049045.197] -> wl_surface@44.frame(new id wl_callback@54)
[4049045.201] -> wl_surface@44.commit()
[4049045.214] zwp_linux_buffer_release_v1@48.immediate_release()
[4049045.233] wl_pointer@22.leave(11, wl_surface@27)
[4049045.702] wl_pointer@22.frame()
[4049045.710] wl_callback@39.done(7045699)
[4049045.715] wl_callback@49.done(7045699)
[4049054.849] -> wl_buffer@42.destroy()
[4049055.092] -> wl_buffer@38.destroy()
[4049055.178] -> wl_shm@13.create_pool(new id wl_shm_pool@39, fd 680, 5120000)
[4049055.186] -> wl_shm_pool@39.create_buffer(new id wl_buffer@48, 0, 1600, 800, 6400, 0)
[4049055.196] -> wl_shm_pool@39.destroy()
[4049057.797] -> wl_surface@27.frame(new id wl_callback@55)
[4049057.815] -> wp_presentation@8.feedback(wl_surface@27, new id wp_presentation_feedback@56)
[4049057.823] -> wl_surface@27.attach(wl_buffer@48, 0, 0)
[4049057.828] -> zwp_linux_surface_synchronization_v1@41.get_release(new id zwp_linux_buffer_release_v1@57)
[4049057.839] -> wl_surface@27.damage(0, 0, 1600, 800)
[4049057.845] -> wl_surface@27.commit()
[4049059.019] -> wl_shm@13.create_pool(new id wl_shm_pool@58, fd 680, 73656)
[4049059.030] -> wl_shm_pool@58.create_buffer(new id wl_buffer@59, 0, 341, 54, 1364, 0)
[4049059.040] -> wl_shm_pool@58.destroy()
[4049059.895] -> wl_surface@44.frame(new id wl_callback@60)
[4049059.908] -> wp_presentation@8.feedback(wl_surface@44, new id wp_presentation_feedback@61)
[4049059.914] -> wl_surface@44.attach(wl_buffer@59, 0, 0)
[4049059.918] -> zwp_linux_explicit_synchronization_v1@14.get_synchronization(new id zwp_linux_surface_synchronization_v1@62, wl_surface@44)
[4049059.923] -> zwp_linux_surface_synchronization_v1@62.get_release(new id zwp_linux_buffer_release_v1@63)
[4049059.930] -> wl_surface@44.set_opaque_region(nil)
[4049059.936] -> wl_surface@44.damage(0, 0, 341, 54)
[4049059.940] -> wl_surface@44.commit()
[4049061.914] wl_display@1.delete_id(46)
[4049061.923] wl_display@1.delete_id(51)
[4049061.925] wl_display@1.delete_id(42)
[4049061.927] wl_display@1.delete_id(38)
[4049061.929] wl_display@1.delete_id(39)
[4049061.931] wl_display@1.delete_id(47)
[4049061.935] wl_display@1.delete_id(58)
[4049061.937] wp_presentation_feedback@47.sync_output(wl_output@15)
[4049061.940] wp_presentation_feedback@47.presented(0, 7045, 725416087, 16666666, 0, 0, 0)
[4049073.111] -> wl_compositor@4.create_surface(new id wl_surface@58)
[4049073.123] -> wp_viewporter@6.get_viewport(new id wp_viewport@39, wl_surface@58)
[4049073.155] -> wl_compositor@4.create_surface(new id wl_surface@38)
[4049073.159] -> wp_viewporter@6.get_viewport(new id wp_viewport@42, wl_surface@38)
[4049073.196] -> wl_compositor@4.create_region(new id wl_region@51)
[4049073.201] -> wl_region@51.add(0, 0, 1, 1)
[4049073.204] -> wl_surface@58.set_opaque_region(wl_region@51)
[4049073.207] -> wl_region@51.destroy()
[4049082.477] -> wl_surface@58.attach(nil, 0, 0)
[4049082.489] -> wl_surface@58.commit()
[4049082.495] -> xdg_wm_base@18.get_xdg_surface(new id xdg_surface@46, wl_surface@58)
[4049082.505] -> xdg_surface@46.get_toplevel(new id xdg_toplevel@64)
[4049082.524] -> xdg_toplevel@64.set_app_id("")
[4049082.527] -> xdg_toplevel@64.set_title("")
[4049082.531] -> xdg_toplevel@64.set_min_size(0, 0)
[4049082.533] -> xdg_toplevel@64.set_max_size(0, 0)
[4049082.536] -> xdg_toplevel@64.unset_maximized()
[4049082.545] -> wl_surface@58.commit()
[4049082.561] -> xdg_surface@46.set_window_geometry(0, 0, 360, 94)
[4049084.152] wl_display@1.delete_id(63)
[4049084.163] wl_display@1.delete_id(57)
[4049084.165] wl_display@1.delete_id(55)
[4049084.167] wl_display@1.delete_id(60)
[4049084.168] wl_display@1.delete_id(54)
[4049084.170] wl_display@1.delete_id(51)
[4049084.172] zwp_linux_buffer_release_v1@63.immediate_release()
[4049084.192] zwp_linux_buffer_release_v1@57.immediate_release()
[4049084.199] wl_pointer@22.enter(12, wl_surface@27, 100.00000000, 100.00000000)
[4049084.214] -> wl_surface@24.set_buffer_scale(1)
[4049084.219] -> wl_surface@24.damage(0, 0, 24, 24)
[4049084.222] -> wl_surface@24.attach(wl_buffer@31, 0, 0)
[4049084.225] -> wl_surface@24.commit()
[4049084.228] -> wl_pointer@22.set_cursor(12, wl_surface@24, 4, 4)
[4049084.454] -> wl_surface@24.set_buffer_scale(1)
[4049084.460] -> wl_surface@24.damage(0, 0, 24, 24)
[4049084.463] -> wl_surface@24.attach(wl_buffer@31, 0, 0)
[4049084.466] -> wl_surface@24.commit()
[4049084.468] -> wl_pointer@22.set_cursor(12, wl_surface@24, 4, 4)
[4049084.733] wl_pointer@22.frame()
[4049084.742] xdg_wm_base@18.ping(13)
[4049084.745] -> xdg_wm_base@18.pong(13)
[4049084.750] wl_callback@55.done(7045725)
[4049084.754] wl_callback@60.done(7045725)
[4049084.757] wl_callback@54.done(7045725)
[4049084.761] xdg_toplevel@64.wm_capabilities(array[12])
[4049084.765] xdg_toplevel@64.configure(0, 0, array[0])
[4049084.781] xdg_surface@46.configure(14)
[4049084.792] -> xdg_surface@46.ack_configure(14)
[4049084.955] -> wl_shm@13.create_pool(new id wl_shm_pool@54, fd 685, 135360)
[4049084.962] -> wl_shm_pool@54.create_buffer(new id wl_buffer@60, 0, 360, 94, 1440, 0)
[4049084.972] -> wl_shm_pool@54.destroy()
[4049084.980] -> wl_surface@58.attach(wl_buffer@60, 0, 0)
[4049084.983] -> wl_surface@58.damage(0, 0, 360, 94)
[4049084.986] -> wl_surface@58.frame(new id wl_callback@55)
[4049084.989] -> wl_surface@58.commit()
[4049085.596] -> wl_shm@13.create_pool(new id wl_shm_pool@57, fd 684, 5120000)
[4049085.604] -> wl_shm_pool@57.create_buffer(new id wl_buffer@63, 0, 1600, 800, 6400, 0)
[4049085.613] -> wl_shm_pool@57.destroy()
[4049089.588] -> wl_surface@27.frame(new id wl_callback@51)
[4049089.608] -> wp_presentation@8.feedback(wl_surface@27, new id wp_presentation_feedback@65)
[4049089.617] -> wl_surface@27.attach(wl_buffer@63, 0, 0)
[4049089.622] -> zwp_linux_surface_synchronization_v1@41.get_release(new id zwp_linux_buffer_release_v1@66)
[4049089.635] -> wl_surface@27.damage(0, 0, 1600, 800)
[4049089.640] -> wl_surface@27.commit()
[4049096.213] -> wl_shm@13.create_pool(new id wl_shm_pool@47, fd 684, 73656)
[4049096.226] -> wl_shm_pool@47.create_buffer(new id wl_buffer@67, 0, 341, 54, 1364, 0)
[4049096.235] -> wl_shm_pool@47.destroy()
[4049098.411] -> wl_surface@44.frame(new id wl_callback@68)
[4049098.427] -> wp_presentation@8.feedback(wl_surface@44, new id wp_presentation_feedback@69)
[4049098.435] -> wl_surface@44.attach(wl_buffer@67, 0, 0)
[4049098.440] -> zwp_linux_surface_synchronization_v1@62.get_release(new id zwp_linux_buffer_release_v1@70)
[4049098.449] -> wl_surface@44.damage(0, 0, 341, 54)
[4049098.455] -> wl_surface@44.commit()
[4049102.850] -> wl_shm@13.create_pool(new id wl_shm_pool@71, fd 684, 135360)
[4049102.867] -> wl_shm_pool@71.create_buffer(new id wl_buffer@72, 0, 360, 94, 1440, 0)
[4049102.878] -> wl_shm_pool@71.destroy()
[4049103.202] -> wl_surface@58.frame(new id wl_callback@73)
[4049103.215] -> wp_presentation@8.feedback(wl_surface@58, new id wp_presentation_feedback@74)
[4049103.223] -> wl_surface@58.attach(wl_buffer@72, 0, 0)
[4049103.227] -> zwp_linux_explicit_synchronization_v1@14.get_synchronization(new id zwp_linux_surface_synchronization_v1@75, wl_surface@58)
[4049103.231] -> zwp_linux_surface_synchronization_v1@75.get_release(new id zwp_linux_buffer_release_v1@76)
[4049103.239] -> wl_compositor@4.create_region(new id wl_region@77)
[4049103.243] -> wl_region@77.add(0, 0, 360, 94)
[4049103.247] -> wl_surface@58.set_input_region(wl_region@77)
[4049103.250] -> wl_region@77.destroy()
[4049103.253] -> wl_compositor@4.create_region(new id wl_region@78)
[4049103.256] -> wl_region@78.add(0, 0, 360, 94)
[4049103.259] -> wl_surface@58.set_opaque_region(wl_region@78)
[4049103.261] -> wl_region@78.destroy()
[4049103.269] -> wl_surface@58.damage(0, 0, 360, 94)
[4049103.272] -> wl_surface@58.commit()
[4049104.396] -> xdg_popup@52.destroy()
[4049104.419] -> wl_buffer@53.destroy()
[4049104.449] -> xdg_surface@40.destroy()
[4049104.492] -> xdg_toplevel@33.destroy()
[4049104.499] -> wl_buffer@36.destroy()
[4049104.513] -> xdg_surface@32.destroy()
[4049142.995] -> wl_surface@24.set_buffer_scale(1)
[4049143.012] -> wl_surface@24.damage(0, 0, 24, 24)
[4049143.016] -> wl_surface@24.attach(wl_buffer@31, 0, 0)
[4049143.019] -> wl_surface@24.commit()
[4049143.022] -> wl_pointer@22.set_cursor(12, wl_surface@24, 4, 4)
[4049143.035] -> wl_surface@24.set_buffer_scale(1)
[4049143.045] -> wl_surface@24.damage(0, 0, 24, 24)
[4049143.047] -> wl_surface@24.attach(wl_buffer@31, 0, 0)
[4049143.050] -> wl_surface@24.commit()
[4049143.053] -> wl_pointer@22.set_cursor(12, wl_surface@24, 4, 4)
[4049143.059] -> wl_surface@24.set_buffer_scale(1)
[4049143.063] -> wl_surface@24.damage(0, 0, 24, 24)
[4049143.066] -> wl_surface@24.attach(wl_buffer@31, 0, 0)
[4049143.069] -> wl_surface@24.commit()
[4049143.071] -> wl_pointer@22.set_cursor(12, wl_surface@24, 4, 4)
[4049151.101] -> zwp_linux_surface_synchronization_v1@62.destroy()
[4049151.117] -> wp_viewport@43.destroy()
[4049151.120] -> wl_surface@44.destroy()
[4049157.681] -> wp_viewport@45.destroy()
[4049157.695] -> wl_surface@37.destroy()
[4049157.770] -> zwp_linux_surface_synchronization_v1@41.destroy()
[4049157.774] -> wp_viewport@28.destroy()
[4049157.776] -> wl_surface@27.destroy()
[4049197.984] -> xdg_toplevel@64.destroy()
[4049198.024] -> wl_buffer@60.destroy()
[4049198.035] -> xdg_surface@46.destroy()
[4049198.056] -> wp_viewport@30.destroy()
[4049198.059] -> wl_surface@29.destroy()
[4049198.090] -> zwp_linux_surface_synchronization_v1@75.destroy()
[4049198.093] -> wp_viewport@39.destroy()
[4049198.096] -> wl_surface@58.destroy()
[4049202.248] -> wl_buffer@67.destroy()
[4049203.027] -> wl_buffer@59.destroy()
[4049203.100] -> wl_buffer@63.destroy()
[4049203.149] -> wl_buffer@48.destroy()
[4049203.209] -> wl_buffer@72.destroy()
```
</details>https://gitlab.freedesktop.org/wayland/weston/-/issues/774NULL pointer dereference when an xdg_surface role object is recreated2023-07-18T13:06:49ZKirill Primakvyivel@eclair.cafeNULL pointer dereference when an xdg_surface role object is recreated```
Thread 1 "weston" received signal SIGSEGV, Segmentation fault.
0x00007ffff7d756fe in weston_desktop_surface_get_surface (surface=0x0) at ../libweston/desktop/surface.c:598
598 return surface->surface;
(gdb) bt
#0 0x00007ffff7d756fe...```
Thread 1 "weston" received signal SIGSEGV, Segmentation fault.
0x00007ffff7d756fe in weston_desktop_surface_get_surface (surface=0x0) at ../libweston/desktop/surface.c:598
598 return surface->surface;
(gdb) bt
#0 0x00007ffff7d756fe in weston_desktop_surface_get_surface (surface=0x0) at ../libweston/desktop/surface.c:598
#1 0x00007ffff7d78874 in weston_desktop_xdg_surface_protocol_get_toplevel (wl_client=0xda3820, resource=0xd29b20, id=8) at ../libweston/desktop/xdg-shell.c:1242
#2 0x00007ffff7a80be6 in ffi_call_unix64 () at ../src/x86/unix64.S:104
#3 0x00007ffff7a7d4bf in ffi_call_int (cif=cif@entry=0x7fffffffd740, fn=<optimized out>, rvalue=<optimized out>, avalue=<optimized out>, closure=closure@entry=0x0) at ../src/x86/ffi64.c:673
#4 0x00007ffff7a8018e in ffi_call (cif=cif@entry=0x7fffffffd740, fn=<optimized out>, rvalue=rvalue@entry=0x0, avalue=avalue@entry=0x7fffffffd810) at ../src/x86/ffi64.c:710
#5 0x00007ffff7d05843 in wl_closure_invoke (closure=closure@entry=0x434580, target=<optimized out>, target@entry=0xd29b20, opcode=opcode@entry=1, data=<optimized out>, data@entry=0xda3820, flags=2) at ../src/connection.c:1025
#6 0x00007ffff7d0a0b4 in wl_client_connection_data (fd=<optimized out>, mask=<optimized out>, data=0xda3820) at ../src/wayland-server.c:438
#7 0x00007ffff7d088e2 in wl_event_loop_dispatch (loop=0x415280, timeout=timeout@entry=-1) at ../src/event-loop.c:1027
#8 0x00007ffff7d09125 in wl_display_run (display=0x415190) at ../src/wayland-server.c:1493
#9 0x00007ffff7fb2723 in wet_main (argc=1, argv=0x7fffffffe388, test_data=0x0) at ../compositor/main.c:4226
#10 0x000000000040114b in main (argc=1, argv=0x7fffffffe388) at ../compositor/executable.c:33
```
Tested with 23ea8655085272df86418b580e63f648599dd7cb
Reproducible with [randfall](https://gitlab.freedesktop.org/vyivel/randfall) (`build/cases/xdg_surface_reassign_role_same`)https://gitlab.freedesktop.org/wayland/weston/-/issues/773weston-screenshooter2023-08-09T09:26:40ZBaskar Rweston-screenshooterThe Weston Wayland is integrated with yocto kirkstone machine and is working on lvds interface display .
We are tried to use “weston-screenshooter” tool in command line capture the live screen with debug enable.
But we are getting the ...The Weston Wayland is integrated with yocto kirkstone machine and is working on lvds interface display .
We are tried to use “weston-screenshooter” tool in command line capture the live screen with debug enable.
But we are getting the following error, so our doubt is about the “weston-screenshooter” screen capture procedure.
If we able to capture the screen using this tool , then share step procedure to follow for the weston-screenshooter.
Please find steps which followed:
root@Alpha-22:/usr/lib/weston# loginctl
SESSION UID USER SEAT TTY
c1 1000 weston seat0 tty7
c3 0 root ttyLP0
2 sessions listed.
root@Alpha-22:/usr/lib/weston# echo $XDG_RUNTIME_DIR
/run/user/1000
root@Alpha-22:/usr/lib/weston# weston-screenshooter
weston_screenshooter@5: error 0: screenshooter failed: permission denied. Debug protocol must be enabled
root@Alpha-22:/usr/lib/weston#https://gitlab.freedesktop.org/wayland/weston/-/issues/772WSL2 and xwayland cause weston to crash2023-10-14T00:10:13ZJim BWSL2 and xwayland cause weston to crashThis is more of a feature request than an issue.
I recently updated WSL (Windows Subsystem for Linux), and found that it had an option to enable systemd. I enabled systemd, and was able to run weston directly from the wsl prompt. It p...This is more of a feature request than an issue.
I recently updated WSL (Windows Subsystem for Linux), and found that it had an option to enable systemd. I enabled systemd, and was able to run weston directly from the wsl prompt. It performs quite well; however, when I enable [core] xwayland=true, then weston crashes
```
[02:56:04.049] Registered plugin API 'weston_xwayland_surface_v1' of size 16
[02:56:04.050] failed to bind to /tmp/.X11-unix/X0: Address already in use
/home/d3x0r/gow2.sh: line 2: 77000 Segmentation fault /usr/local/bin/weston --width=1250 --height=640 --scale=2
```
I tried to move/remove the /tmp/.X11-unix/X0, but it's in a readonly filesystem. which I can do something like `mount -o remount,rw /tmp/.X11-unix`; (but then the X0 goes away, not sure when) I had started wayland again and it didn't crash...but now I can't run X applications either (looks like they were running with windows as the server somehow).
But; What I was wondering, is if maybe there could be an option to specify an X Server display to use which would be used for wayland? Like leave the original X0 alone and add another? (Although it looks like that won't immediately solve my issue anyway)