Xwayland test intermittently fails with timeout
Sometimes Xwayland fails with a timeout. It's not really clear why, but for some reason the client doesn't seem to get its PROPERTY_NOTIFY
back, so presumably there's a race ... somewhere.
Compositor log:
[12:49:31.079] created wm, root 1298
[2023-08-09 12:49:31.080][xwm-wm-x11] XCB_CREATE_NOTIFY (window 2097153, at (0, 0), width 10, height 10, ours)
[2023-08-09 12:49:31.080][xwm-wm-x11] XCB_CREATE_NOTIFY (window 2097154, at (0, 0), width 8192, height 8192, ours)
[2023-08-09 12:49:31.082][xwm-wm-x11] XCB_CREATE_NOTIFY (window 2097191, at (0, 0), width 10, height 10, ours)
[2023-08-09 12:49:31.082][xwm-wm-x11] XCB_CREATE_NOTIFY (window 4194305, at (100, 100), width 100, height 100)
handle_event_set_pending: Added pending event id 28 - name PROPERTY_NOTIFY, wid 4194305
The XKEYBOARD keymap compiler (xkbcomp) reports:
> Warning: Unsupported maximum keycode 708, clipping.
> X11 cannot support keycodes above 255.
Errors from xkbcomp are not fatal to the X server
[2023-08-09 12:49:31.099][xwm-wm-x11] XCB_MAPPING_NOTIFY
[2023-08-09 12:49:31.099][xwm-wm-x11] XCB_MAPPING_NOTIFY
[2023-08-09 12:49:31.100][xwm-wm-x11] XCB_PROPERTY_NOTIFY: window 4194305, _NET_WM_NAME: STRING/8, length 20 (value_len 20): "Xwayland Test Window"
Test backtrace:
(gdb) t a a bt
Thread 2 (Thread 0x7f44f592b6c0 (LWP 699519) "client"):
#0 0x00007f44f9af7450 in ppoll () at /lib64/libc.so.6
#1 0x00007f44fa091302 in ppoll () at /lib64/libasan.so.8
#2 0x00000000002266b0 in poll_for_event (conn=0x62a00000c200) at ../tests/xcb-client-helper.c:393
#3 0x0000000000226e0f in handle_events_x11 (window=0x60e000007120) at ../tests/xcb-client-helper.c:481
#4 0x0000000000212d64 in handle_events_and_check_flags (win=0x60e000007120, flag=PROPERTY_NAME) at ../tests/xcb-client-helper.h:193
#5 0x00000000002137cc in xwayland_client_test (_wet_suite_data=0x611000000918) at ../tests/xwayland-test.c:135
#6 0x000000000021362d in wrapxwayland_client_test (_wet_suite_data=0x611000000918, data=0x0) at ../tests/xwayland-test.c:115
#7 0x0000000000222fcd in run_test (suite_data=0x611000000918, fixture_nr=1, t=0x210e80 <testxwayland_client_test>, data=0x0, iteration=0) at ../tests/weston-test-runner.c:169
#8 0x0000000000223688 in run_case (suite_data=0x611000000918, t=0x210e80 <testxwayland_client_test>, test_data=0x0, iteration=0) at ../tests/weston-test-runner.c:284
#9 0x000000000022340f in for_each_test_case (data=0x611000000918, cb=0x2234f2 <run_case>) at ../tests/weston-test-runner.c:242
#10 0x000000000022395e in testsuite_run (data=0x611000000918) at ../tests/weston-test-runner.c:319
#11 0x00007f44f83188cd in client_thread_routine (data_=0x611000000918) at ../tests/weston-test.c:639
#12 0x00007f44f9a7e907 in start_thread () at /lib64/libc.so.6
#13 0x00007f44f9b04870 in clone3 () at /lib64/libc.so.6
Thread 1 (Thread 0x7f44f8d4d940 (LWP 699514) "test-xwayland"):
#0 0x00007f44f9b04c72 in epoll_wait () at /lib64/libc.so.6
#1 0x00007f44f9d7eae2 in wl_event_loop_dispatch (loop=0x60d000000450, timeout=timeout@entry=-1) at ../src/event-loop.c:1004
#2 0x00007f44f9d7c8a5 in wl_display_run (display=0x611000000b80) at ../src/wayland-server.c:1493
#3 0x00007f44f9fe3cf6 in wet_main (argc=1, argv=0x60e0000003c0, test_data=0x7f44f6f00140) at ../compositor/main.c:4244
#4 0x0000000000220faf in execute_compositor (setup=0x7f44f6f00030, data=0x611000000918) at ../tests/weston-test-fixture-compositor.c:410
#5 0x00000000002248c1 in weston_test_harness_execute_as_client (harness=0x611000000900, setup=0x7f44f6f00030) at ../tests/weston-test-runner.c:536
#6 0x0000000000212f06 in fixture_setup (harness=0x611000000900) at ../tests/xwayland-test.c:63
#7 0x0000000000212f81 in fixture_setup_run_ (harness=0x611000000900, arg_=0x0) at ../tests/xwayland-test.c:65
#8 0x0000000000224ee1 in main (argc=1, argv=0x7ffd74051968) at ../tests/weston-test-runner.c:684