# -rw-r--r-- 9.4 KiB View raw
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
Running Monado with
```diff
diff --git a/src/xrt/compositor/main/comp_window_direct_wayland.c b/src/xrt/compositor/main/comp_window_direct_wayland.c
index c777f246c..df1d5e9e1 100644
--- a/src/xrt/compositor/main/comp_window_direct_wayland.c
+++ b/src/xrt/compositor/main/comp_window_direct_wayland.c
@@ -432,9 +432,11 @@ comp_window_direct_wayland_init(struct comp_target *w)
        struct direct_wayland_lease_device *dev = w_wayland->devices;
        while (dev) {
                if (!dev->done) {
+                       U_LOG_E("calling wl_display_dispatch on %p", dev);
                        wl_display_dispatch(w_wayland->display);
                        continue;
                }
+               U_LOG_E("this device is done, going to next device");
                dev = dev->next;
        }
```
kwin:
[4216705.181]  -> wl_display@1.get_registry(new id wl_registry@2)
[4216705.193]  -> wl_display@1.sync(new id wl_callback@3)
[4216708.643] wl_display@1.delete_id(3)
[4216708.651] wl_registry@2.global(1, "wl_compositor", 5)
[4216708.655] wl_registry@2.global(2, "zwp_tablet_manager_v2", 1)
[4216708.658] wl_registry@2.global(3, "zwp_keyboard_shortcuts_inhibit_manager_v1", 1)
[4216708.660] wl_registry@2.global(5, "xdg_wm_base", 4)
[4216708.662] wl_registry@2.global(6, "zwlr_layer_shell_v1", 3)
[4216708.665] wl_registry@2.global(7, "zxdg_decoration_manager_v1", 1)
[4216708.668] wl_registry@2.global(8, "wp_viewporter", 1)
[4216708.673] wl_registry@2.global(9, "wl_shm", 1)
[4216708.677] wl_registry@2.global(10, "wl_seat", 7)
[4216708.682] wl_registry@2.global(11, "zwp_pointer_gestures_v1", 3)
[4216708.686] wl_registry@2.global(12, "zwp_pointer_constraints_v1", 1)
[4216708.689] wl_registry@2.global(13, "zwp_relative_pointer_manager_v1", 1)
[4216708.692] wl_registry@2.global(14, "wl_data_device_manager", 3)
[4216708.697] wl_registry@2.global(15, "zwlr_data_control_manager_v1", 2)
[4216708.701] wl_registry@2.global(16, "zwp_primary_selection_device_manager_v1", 1)
[4216708.703] wl_registry@2.global(17, "org_kde_kwin_idle", 1)
[4216708.707] wl_registry@2.global(18, "zwp_idle_inhibit_manager_v1", 1)
[4216708.712] wl_registry@2.global(19, "org_kde_plasma_shell", 7)
[4216708.716] wl_registry@2.global(20, "org_kde_kwin_appmenu_manager", 1)
[4216708.721] wl_registry@2.global(21, "org_kde_kwin_server_decoration_palette_manager", 1)
[4216708.725] wl_registry@2.global(23, "org_kde_plasma_virtual_desktop_management", 2)
[4216708.730] wl_registry@2.global(25, "org_kde_kwin_shadow_manager", 2)
[4216708.735] wl_registry@2.global(26, "org_kde_kwin_dpms_manager", 1)
[4216708.738] wl_registry@2.global(27, "org_kde_kwin_server_decoration_manager", 1)
[4216708.741] wl_registry@2.global(28, "kde_output_management_v2", 2)
[4216708.744] wl_registry@2.global(29, "kde_primary_output_v1", 2)
[4216708.748] wl_registry@2.global(30, "zxdg_output_manager_v1", 3)
[4216708.752] wl_registry@2.global(31, "wl_subcompositor", 1)
[4216708.757] wl_registry@2.global(32, "zxdg_exporter_v2", 1)
[4216708.761] wl_registry@2.global(33, "zxdg_importer_v2", 1)
[4216708.765] wl_registry@2.global(35, "xdg_activation_v1", 1)
[4216708.768] wl_registry@2.global(36, "wp_drm_lease_device_v1", 1)
[4216708.771]  -> wl_registry@2.bind(36, "wp_drm_lease_device_v1", 1, new id [unknown]@4)
[4216708.774] wl_registry@2.global(37, "wp_drm_lease_device_v1", 1)
[4216708.777]  -> wl_registry@2.bind(37, "wp_drm_lease_device_v1", 1, new id [unknown]@5)
[4216708.780] wl_registry@2.global(40, "wl_drm", 2)
[4216708.783] wl_registry@2.global(41, "zwp_linux_dmabuf_v1", 4)
[4216708.785] wl_registry@2.global(42, "kde_output_device_v2", 2)
[4216708.788] wl_registry@2.global(43, "wl_output", 3)
[4216708.790] wl_registry@2.global(44, "kde_output_device_v2", 2)
[4216708.793] wl_registry@2.global(45, "wl_output", 3)
[4216708.796] wl_registry@2.global(47, "zwp_text_input_manager_v2", 1)
[4216708.798] wl_registry@2.global(48, "zwp_text_input_manager_v3", 1)
[4216708.801] wl_registry@2.global(49, "org_kde_kwin_contrast_manager", 2)
[4216708.803] wl_registry@2.global(50, "org_kde_kwin_blur_manager", 1)
[4216708.806] wl_registry@2.global(51, "org_kde_kwin_slide_manager", 1)
[4216708.808] wl_callback@3.done(1613)
ERROR [comp_window_direct_wayland_init] calling wl_display_dispatch on 0x556fdc2b0790
[4216709.478] wp_drm_lease_device_v1@4.drm_fd(fd 14)
DEBUG [_drm_lease_device_drm_fd] Available DRM lease device: /dev/dri/card1
[4216709.514] wp_drm_lease_device_v1@5.drm_fd(fd 15)
DEBUG [_drm_lease_device_drm_fd] Available DRM lease device: /dev/dri/card0
[4216709.539] wp_drm_lease_device_v1@5.connector(new id wp_drm_lease_connector_v1@4278190080)
[4216709.544] wp_drm_lease_connector_v1@4278190080.connector_id(86)
[4216709.548] wp_drm_lease_connector_v1@4278190080.name("Index HMD/968092465")
[4216709.551] wp_drm_lease_connector_v1@4278190080.description("Valve Corporation Index HMD/968092465")
[4216709.553] wp_drm_lease_connector_v1@4278190080.done()
DEBUG [_lease_connector_done] [/dev/dri/card0] connector Index HMD/968092465 (Valve Corporation Index HMD/968092465) id: 86
<Hangs here>


with Sway:
[  81209.589]  -> wl_display@1.get_registry(new id wl_registry@2)
[  81209.598]  -> wl_display@1.sync(new id wl_callback@3)
[  81209.675] wl_display@1.delete_id(3)
[  81209.682] wl_registry@2.global(1, "wl_shm", 1)
[  81209.685] wl_registry@2.global(2, "wl_drm", 2)
[  81209.688] wl_registry@2.global(3, "zwp_linux_dmabuf_v1", 4)
[  81209.690] wl_registry@2.global(4, "wl_compositor", 4)
[  81209.692] wl_registry@2.global(5, "wl_subcompositor", 1)
[  81209.694] wl_registry@2.global(6, "wl_data_device_manager", 3)
[  81209.696] wl_registry@2.global(7, "zwlr_gamma_control_manager_v1", 1)
[  81209.698] wl_registry@2.global(8, "zxdg_output_manager_v1", 3)
[  81209.700] wl_registry@2.global(9, "org_kde_kwin_idle", 1)
[  81209.702] wl_registry@2.global(10, "zwp_idle_inhibit_manager_v1", 1)
[  81209.705] wl_registry@2.global(11, "zwlr_layer_shell_v1", 4)
[  81209.707] wl_registry@2.global(12, "xdg_wm_base", 2)
[  81209.708] wl_registry@2.global(13, "zwp_tablet_manager_v2", 1)
[  81209.711] wl_registry@2.global(14, "org_kde_kwin_server_decoration_manager", 1)
[  81209.713] wl_registry@2.global(15, "zxdg_decoration_manager_v1", 1)
[  81209.715] wl_registry@2.global(16, "zwp_relative_pointer_manager_v1", 1)
[  81209.716] wl_registry@2.global(17, "zwp_pointer_constraints_v1", 1)
[  81209.719] wl_registry@2.global(18, "wp_presentation", 1)
[  81209.721] wl_registry@2.global(19, "zwlr_output_manager_v1", 2)
[  81209.723] wl_registry@2.global(20, "zwlr_output_power_manager_v1", 1)
[  81209.725] wl_registry@2.global(21, "zwp_input_method_manager_v2", 1)
[  81209.727] wl_registry@2.global(22, "zwp_text_input_manager_v3", 1)
[  81209.729] wl_registry@2.global(23, "zwlr_foreign_toplevel_manager_v1", 3)
[  81209.731] wl_registry@2.global(24, "wp_drm_lease_device_v1", 1)
[  81209.733]  -> wl_registry@2.bind(24, "wp_drm_lease_device_v1", 1, new id [unknown]@4)
[  81209.736] wl_registry@2.global(25, "wp_drm_lease_device_v1", 1)
[  81209.738]  -> wl_registry@2.bind(25, "wp_drm_lease_device_v1", 1, new id [unknown]@5)
[  81209.741] wl_registry@2.global(26, "zwlr_export_dmabuf_manager_v1", 1)
[  81209.743] wl_registry@2.global(27, "zwlr_screencopy_manager_v1", 3)
[  81209.745] wl_registry@2.global(28, "zwlr_data_control_manager_v1", 2)
[  81209.747] wl_registry@2.global(29, "zwp_primary_selection_device_manager_v1", 1)
[  81209.749] wl_registry@2.global(30, "wp_viewporter", 1)
[  81209.751] wl_registry@2.global(31, "zxdg_exporter_v1", 1)
[  81209.753] wl_registry@2.global(32, "zxdg_importer_v1", 1)
[  81209.756] wl_registry@2.global(33, "zxdg_exporter_v2", 1)
[  81209.758] wl_registry@2.global(34, "zxdg_importer_v2", 1)
[  81209.760] wl_registry@2.global(35, "xdg_activation_v1", 1)
[  81209.762] wl_registry@2.global(36, "zwp_virtual_keyboard_manager_v1", 1)
[  81209.764] wl_registry@2.global(37, "zwlr_virtual_pointer_manager_v1", 2)
[  81209.766] wl_registry@2.global(38, "zwlr_input_inhibit_manager_v1", 1)
[  81209.768] wl_registry@2.global(39, "zwp_keyboard_shortcuts_inhibit_manager_v1", 1)
[  81209.770] wl_registry@2.global(40, "wl_seat", 7)
[  81209.772] wl_registry@2.global(41, "zwp_pointer_gestures_v1", 3)
[  81209.774] wl_registry@2.global(42, "wl_output", 4)
[  81209.776] wl_registry@2.global(43, "wl_output", 4)
[  81209.778] wl_callback@3.done(178)
ERROR [comp_window_direct_wayland_init] calling wl_display_dispatch on 0x55d979c58870
[  81210.266] wp_drm_lease_device_v1@4.drm_fd(fd 14)
DEBUG [_drm_lease_device_drm_fd] Available DRM lease device: /dev/dri/card1
[  81210.292] wp_drm_lease_device_v1@4.done()
[  81210.295] wp_drm_lease_device_v1@5.drm_fd(fd 15)
DEBUG [_drm_lease_device_drm_fd] Available DRM lease device: /dev/dri/card0
[  81210.311] wp_drm_lease_device_v1@5.connector(new id wp_drm_lease_connector_v1@4278190080)
[  81210.314] wp_drm_lease_connector_v1@4278190080.name("DP-1")
[  81210.316] wp_drm_lease_connector_v1@4278190080.description("Valve Index HMD 0x0000FB31 (DP-1)")
[  81210.318] wp_drm_lease_connector_v1@4278190080.connector_id(86)
[  81210.320] wp_drm_lease_connector_v1@4278190080.done()
DEBUG [_lease_connector_done] [/dev/dri/card0] connector DP-1 (Valve Index HMD 0x0000FB31 (DP-1)) id: 86
[  81210.325] wp_drm_lease_device_v1@5.done()
ERROR [comp_window_direct_wayland_init] this device is done, going to next device
ERROR [comp_window_direct_wayland_init] this device is done, going to next device
DEBUG [compositor_try_window] Window backend wayland-direct initialized!
<Monado continues to start up normally>