Segmentation fault at wl_map_insert_at
Wayland version: 1.18.0 (Arch Linux packages)
I'm testing the Plasma 5.21 Beta with KWinFT, so the compositor may be misbehaving. But since there seems to be an illegal state within wayland-client
, I thought it may be interesting to share the debugging information with you.
plasma-browser-integration-host
crashed after I closed a Chromium window, with this backtrace:
#3 <signal handler called>
#4 0x00007f38d5bb4d5e in wl_map_insert_at (map=map@entry=0x55c8c733eba0, flags=flags@entry=1, i=19, data=data@entry=0x0) at ../wayland-1.18.0/src/wayland-util.c:247
#5 0x00007f38d5bb0811 in proxy_destroy (proxy=0x55c8c7400990) at ../wayland-1.18.0/src/wayland-client.c:503
#6 wl_proxy_destroy (proxy=0x55c8c7400990) at ../wayland-1.18.0/src/wayland-client.c:534
#7 0x00007f38d6b77346 in KWayland::Client::PlasmaVirtualDesktop::release() () from /usr/lib/libKF5WaylandClient.so.5
#8 0x00007f38d6b7736e in KWayland::Client::PlasmaVirtualDesktop::~PlasmaVirtualDesktop() () from /usr/lib/libKF5WaylandClient.so.5
#9 0x00007f38d6b773da in KWayland::Client::PlasmaVirtualDesktop::~PlasmaVirtualDesktop() () from /usr/lib/libKF5WaylandClient.so.5
#10 0x00007f38d7e1f10e in QObjectPrivate::deleteChildren() () from /usr/lib/libQt5Core.so.5
#11 0x00007f38d7e29f75 in QObject::~QObject() () from /usr/lib/libQt5Core.so.5
#12 0x00007f38d6b770ba in KWayland::Client::PlasmaVirtualDesktopManagement::~PlasmaVirtualDesktopManagement() () from /usr/lib/libKF5WaylandClient.so.5
#13 0x00007f38d7e1f10e in QObjectPrivate::deleteChildren() () from /usr/lib/libQt5Core.so.5
#14 0x00007f38d7e29f75 in QObject::~QObject() () from /usr/lib/libQt5Core.so.5
#15 0x00007f38d926a446 in ?? () from /usr/lib/libtaskmanager.so.6
#16 0x00007f38d92693ad in TaskManager::VirtualDesktopInfo::~VirtualDesktopInfo() () from /usr/lib/libtaskmanager.so.6
#17 0x00007f38d92693da in TaskManager::VirtualDesktopInfo::~VirtualDesktopInfo() () from /usr/lib/libtaskmanager.so.6
#18 0x00007f38d7e1f10e in QObjectPrivate::deleteChildren() () from /usr/lib/libQt5Core.so.5
#19 0x00007f38d7e29f75 in QObject::~QObject() () from /usr/lib/libQt5Core.so.5
#20 0x00007f38d926b9ba in TaskManager::WaylandTasksModel::~WaylandTasksModel() () from /usr/lib/libtaskmanager.so.6
#21 0x00007f38d926f98a in TaskManager::WindowTasksModel::~WindowTasksModel() () from /usr/lib/libtaskmanager.so.6
#22 0x00007f38d926fa2a in TaskManager::WindowTasksModel::~WindowTasksModel() () from /usr/lib/libtaskmanager.so.6
#23 0x00007f38d7e1f10e in QObjectPrivate::deleteChildren() () from /usr/lib/libQt5Core.so.5
#24 0x00007f38d7e29f75 in QObject::~QObject() () from /usr/lib/libQt5Core.so.5
#25 0x00007f38d77d8db7 in __run_exit_handlers () from /usr/lib/libc.so.6
#26 0x00007f38d77d8f5e in exit () from /usr/lib/libc.so.6
#27 0x00007f38d77c1159 in __libc_start_main () from /usr/lib/libc.so.6
#28 0x000055c8c5c62a6e in _start ()
In wl_map_insert_at
, variable map
contains the following:
(gdb) print *map
$8 = {client_entries = {size = 168, alloc = 256, data = 0x4}, server_entries = {size = 0, alloc = 0, data = 0x4}, side = 1, free_list = 0}
In proxy_destroy
, variables proxy
and proxy->display
are as follows:
(gdb) print *proxy
$10 = {
object = {
interface = 0x7f38d6bd8c60 < org_kde_plasma_virtual_desktop_interface > ,
implementation = 0x7f38d6bd6f80,
id = 19
},
display = 0x55c8c733eb20,
queue = 0x55c8c733ebf0,
flags =
0,
refcount = 1,
user_data = 0x55c8c74474a0,
dispatcher = 0x0,
version = 2,
tag = 0x0
}
(gdb) print *proxy->display
$11 = {
proxy = {
object = {
interface = 0x55cd9bb10f4e,
implementation = 0x55c8c7310010,
id = 1
},
display = 0x55c8c733eb20,
queue = 0x55c8c733ebf0,
flags = 0,
refcount = 1,
user_data = 0x55c8
c733eb20,
dispatcher = 0x0,
version = 0,
tag = 0x0
},
connection = 0x55c8c73412c0,
last_error = 0,
protocol_error = {
code = 0,
interface = 0x0,
id = 0
},
fd = 3,
objects = {
client_entries = {
size = 168,
alloc = 256,
data = 0x4
},
server_entries = {
size = 0,
alloc = 0,
data = 0x4
},
side = 1,
free_list = 0
},
display_queue = {
event_list = {
prev = 0x55c8c733ebd8,
next = 0x55c8c733eb
d8
},
display = 0x55c8c733eb20
},
default_queue = {
event_list = {
prev = 0x55c8c733ebf0,
next = 0x55c8c733ebf0
},
display = 0x55c8c733eb20
},
mutex = {
__data = {
__lock = 0,
__count = 0,
__owner = 0,
__nusers = 0,
__kind = -1,
__spins = 0,
__elision = 0,
__list = { __prev = 0x0, __next = 0x0 }
},
__size = '\000' < repeats 16 times > ,
"\377\377\377\377",
'\000' < repeats 19 times > ,
__alig
n = 0
},
reader_count = 0,
read_serial = 58,
reader_cond = {
__data = {
{ __wseq = 0, __wseq32 = { __low = 0, __high = 0 } },
{ __g1_start = 0, __g1_start32 = { __low = 0, __high = 0 } },
__g_refs = { 0, 0 },
__g_size = { 0, 0 },
__g1_orig_size = 0,
__wrefs = 4,
__g_signals = { 0, 0 }
},
__size = '\000' < repeats 36 times > ,
"\004\000\000\000\000\000\000\000\000\000\000",
__align = 0
}
}
The data = 0x4
fields in client_entries
and server_entries
look suspicious.
Cheers.
EDIT:
WAYLAND_DEBUG=1 log of plasma-browser-integration-host
[1530380,884] -> wl_display@1.get_registry(new id wl_registry@2)
[1530380,991] -> wl_display@1.sync(new id wl_callback@3)
[1530386,826] wl_display@1.delete_id(3)
[1530386,846] wl_registry@2.global(1, "wl_compositor", 4)
[1530386,854] -> wl_registry@2.bind(1, "wl_compositor", 3, new id [unknown]@4)
[1530386,865] wl_registry@2.global(2, "xdg_wm_base", 2)
[1530386,871] wl_registry@2.global(3, "zxdg_decoration_manager_v1", 1)
[1530386,877] wl_registry@2.global(4, "wl_shm", 1)
[1530386,883] -> wl_registry@2.bind(4, "wl_shm", 1, new id [unknown]@5)
[1530386,889] wl_registry@2.global(5, "wl_seat", 5)
[1530386,895] -> wl_registry@2.bind(5, "wl_seat", 5, new id [unknown]@6)
[1530386,902] wl_registry@2.global(6, "zwp_pointer_gestures_v1", 1)
[1530386,908] wl_registry@2.global(7, "zwp_pointer_constraints_v1", 1)
[1530386,913] wl_registry@2.global(8, "wl_data_device_manager", 3)
[1530386,918] -> wl_registry@2.bind(8, "wl_data_device_manager", 1, new id [unknown]@7)
[1530386,925] -> wl_data_device_manager@7.get_data_device(new id wl_data_device@8, wl_seat@6)
[1530386,930] wl_registry@2.global(9, "org_kde_kwin_idle", 1)
[1530386,935] wl_registry@2.global(10, "zwp_idle_inhibit_manager_v1", 1)
[1530386,940] wl_registry@2.global(11, "org_kde_plasma_shell", 6)
[1530386,945] wl_registry@2.global(12, "org_kde_kwin_appmenu_manager", 1)
[1530386,949] wl_registry@2.global(13, "org_kde_kwin_server_decoration_palette_manager", 1)
[1530386,954] wl_registry@2.global(15, "org_kde_plasma_virtual_desktop_management", 2)
[1530386,959] wl_registry@2.global(16, "org_kde_kwin_shadow_manager", 2)
[1530386,964] wl_registry@2.global(17, "org_kde_kwin_dpms_manager", 1)
[1530386,969] wl_registry@2.global(18, "zkwinft_output_management_v1", 1)
[1530386,974] wl_registry@2.global(19, "wl_subcompositor", 1)
[1530386,979] -> wl_registry@2.bind(19, "wl_subcompositor", 1, new id [unknown]@9)
[1530386,986] wl_registry@2.global(20, "zxdg_exporter_v2", 1)
[1530386,991] wl_registry@2.global(21, "zxdg_importer_v2", 1)
[1530386,996] wl_registry@2.global(23, "wp_viewporter", 1)
[1530387,001] wl_registry@2.global(24, "zwp_relative_pointer_manager_v1", 1)
[1530387,006] wl_registry@2.global(25, "zkwinft_output_device_v1", 1)
[1530387,010] wl_registry@2.global(26, "zxdg_output_manager_v1", 3)
[1530387,017] -> wl_registry@2.bind(26, "zxdg_output_manager_v1", 3, new id [unknown]@10)
[1530387,023] -> wl_display@1.sync(new id wl_callback@11)
[1530387,027] wl_registry@2.global(27, "wl_output", 3)
[1530387,033] -> wl_registry@2.bind(27, "wl_output", 2, new id [unknown]@12)
[1530387,042] -> zxdg_output_manager_v1@10.get_xdg_output(new id zxdg_output_v1@13, wl_output@12)
[1530387,047] wl_registry@2.global(28, "wp_presentation", 1)
[1530387,052] wl_registry@2.global(29, "wl_drm", 2)
[1530387,058] wl_registry@2.global(30, "zwp_linux_dmabuf_v1", 3)
[1530387,065] wl_registry@2.global(32, "org_kde_kwin_slide_manager", 1)
[1530387,072] wl_callback@3.done(10457)
[1530387,288] wl_display@1.delete_id(11)
[1530387,295] wl_shm@5.format(0)
[1530387,299] wl_shm@5.format(1)
[1530387,302] wl_seat@6.capabilities(3)
[1530387,312] -> wl_seat@6.get_keyboard(new id wl_keyboard@3)
[1530387,317] -> wl_seat@6.get_pointer(new id wl_pointer@14)
[1530387,322] wl_seat@6.name("")
[1530387,325] wl_callback@11.done(10457)
[1530387,329] wl_output@12.geometry(0, 0, 480, 270, 0, "Philips Consumer Electronics Company", "PHL 223V5", 0)
[1530387,342] wl_output@12.mode(0, 1920, 1080, 60000)
[1530387,350] wl_output@12.mode(0, 1920, 1080, 59940)
[1530387,357] wl_output@12.mode(0, 1920, 1080, 50000)
[1530387,364] wl_output@12.mode(0, 1680, 1050, 59883)
[1530387,371] wl_output@12.mode(0, 1280, 1024, 75025)
[1530387,378] wl_output@12.mode(0, 1280, 1024, 60020)
[1530387,385] wl_output@12.mode(0, 1440, 900, 74984)
[1530387,392] wl_output@12.mode(0, 1440, 900, 59901)
[1530387,398] wl_output@12.mode(0, 1280, 800, 60000)
[1530387,405] wl_output@12.mode(0, 1280, 720, 60000)
[1530387,412] wl_output@12.mode(0, 1280, 720, 60000)
[1530387,419] wl_output@12.mode(0, 1280, 720, 59940)
[1530387,426] wl_output@12.mode(0, 1280, 720, 50000)
[1530387,438] wl_output@12.mode(0, 1024, 768, 75029)
[1530387,445] wl_output@12.mode(0, 1024, 768, 60004)
[1530387,452] wl_output@12.mode(0, 800, 600, 75000)
[1530387,459] wl_output@12.mode(0, 800, 600, 60317)
[1530387,465] wl_output@12.mode(0, 720, 576, 50000)
[1530387,472] wl_output@12.mode(0, 720, 576, 50000)
[1530387,479] wl_output@12.mode(0, 720, 576, 50000)
[1530387,486] wl_output@12.mode(0, 720, 480, 60000)
[1530387,493] wl_output@12.mode(0, 720, 480, 60000)
[1530387,500] wl_output@12.mode(0, 720, 480, 59940)
[1530387,507] wl_output@12.mode(0, 720, 480, 59940)
[1530387,513] wl_output@12.mode(0, 720, 480, 59940)
[1530387,520] wl_output@12.mode(0, 640, 480, 75000)
[1530387,527] wl_output@12.mode(0, 640, 480, 72809)
[1530387,534] wl_output@12.mode(0, 640, 480, 66667)
[1530387,541] wl_output@12.mode(0, 640, 480, 60000)
[1530387,548] wl_output@12.mode(0, 640, 480, 59940)
[1530387,554] wl_output@12.mode(0, 640, 480, 59940)
[1530387,561] wl_output@12.mode(0, 720, 400, 70082)
[1530387,568] wl_output@12.mode(3, 1920, 1080, 60000)
[1530387,575] wl_output@12.scale(1)
[1530387,578] wl_output@12.done()
[1530387,589] zxdg_output_v1@13.logical_position(0, 0)
[1530387,594] zxdg_output_v1@13.logical_size(1920, 1080)
[1530387,599] zxdg_output_v1@13.name("HDMI-A-1")
[1530387,602] zxdg_output_v1@13.description("Philips Consumer Electronics Company PHL 223V5 (HDMI-A-1)")
[1530387,606] wl_output@12.done()
[1530423,545] -> wl_display@1.get_registry(new id wl_registry@11)
[1530423,561] -> wl_display@1.sync(new id wl_callback@15)
[1530423,571] -> wl_display@1.sync(new id wl_callback@16)
[1530423,711] wl_display@1.delete_id(15)
[1530423,715] wl_display@1.delete_id(16)
[1530423,717] wl_keyboard@3.repeat_info(25, 600)
[1530423,721] wl_keyboard@3.keymap(1, fd 4, 49135)
[1530425,068] wl_registry@11.global(1, "wl_compositor", 4)
[1530425,090] wl_registry@11.global(2, "xdg_wm_base", 2)
[1530425,096] wl_registry@11.global(3, "zxdg_decoration_manager_v1", 1)
[1530425,101] wl_registry@11.global(4, "wl_shm", 1)
[1530425,106] wl_registry@11.global(5, "wl_seat", 5)
[1530425,110] wl_registry@11.global(6, "zwp_pointer_gestures_v1", 1)
[1530425,114] wl_registry@11.global(7, "zwp_pointer_constraints_v1", 1)
[1530425,119] wl_registry@11.global(8, "wl_data_device_manager", 3)
[1530425,123] wl_registry@11.global(9, "org_kde_kwin_idle", 1)
[1530425,127] wl_registry@11.global(10, "zwp_idle_inhibit_manager_v1", 1)
[1530425,132] wl_registry@11.global(11, "org_kde_plasma_shell", 6)
[1530425,136] wl_registry@11.global(12, "org_kde_kwin_appmenu_manager", 1)
[1530425,141] wl_registry@11.global(13, "org_kde_kwin_server_decoration_palette_manager", 1)
[1530425,145] wl_registry@11.global(15, "org_kde_plasma_virtual_desktop_management", 2)
[1530425,150] wl_registry@11.global(16, "org_kde_kwin_shadow_manager", 2)
[1530425,156] wl_registry@11.global(17, "org_kde_kwin_dpms_manager", 1)
[1530425,160] wl_registry@11.global(18, "zkwinft_output_management_v1", 1)
[1530425,165] wl_registry@11.global(19, "wl_subcompositor", 1)
[1530425,169] wl_registry@11.global(20, "zxdg_exporter_v2", 1)
[1530425,173] wl_registry@11.global(21, "zxdg_importer_v2", 1)
[1530425,177] wl_registry@11.global(23, "wp_viewporter", 1)
[1530425,182] wl_registry@11.global(24, "zwp_relative_pointer_manager_v1", 1)
[1530425,186] wl_registry@11.global(25, "zkwinft_output_device_v1", 1)
[1530425,190] wl_registry@11.global(26, "zxdg_output_manager_v1", 3)
[1530425,194] wl_registry@11.global(27, "wl_output", 3)
[1530425,198] wl_registry@11.global(28, "wp_presentation", 1)
[1530425,202] wl_registry@11.global(29, "wl_drm", 2)
[1530425,207] wl_registry@11.global(30, "zwp_linux_dmabuf_v1", 3)
[1530425,211] wl_registry@11.global(32, "org_kde_kwin_slide_manager", 1)
[1530425,215] wl_callback@15.done(10457)
[1530425,226] -> wl_registry@11.bind(12, "org_kde_kwin_appmenu_manager", 1, new id [unknown]@17)
[1530425,234] wl_callback@16.done(10457)
[1530434,254] -> wl_display@1.get_registry(new id wl_registry@16)
[1530434,269] -> wl_display@1.sync(new id wl_callback@15)
[1530434,279] -> wl_display@1.get_registry(new id wl_registry@18)
[1530434,291] -> wl_display@1.sync(new id wl_callback@19)
[1530441,531] wl_display@1.delete_id(15)
[1530441,548] wl_display@1.delete_id(19)
[1530441,551] wl_registry@16.global(1, "wl_compositor", 4)
[1530441,559] wl_registry@16.global(2, "xdg_wm_base", 2)
[1530441,566] wl_registry@16.global(3, "zxdg_decoration_manager_v1", 1)
[1530441,572] wl_registry@16.global(4, "wl_shm", 1)
[1530441,578] wl_registry@16.global(5, "wl_seat", 5)
[1530441,583] wl_registry@16.global(6, "zwp_pointer_gestures_v1", 1)
[1530441,588] wl_registry@16.global(7, "zwp_pointer_constraints_v1", 1)
[1530441,594] wl_registry@16.global(8, "wl_data_device_manager", 3)
[1530441,599] wl_registry@16.global(9, "org_kde_kwin_idle", 1)
[1530441,604] wl_registry@16.global(10, "zwp_idle_inhibit_manager_v1", 1)
[1530441,610] wl_registry@16.global(11, "org_kde_plasma_shell", 6)
[1530441,615] wl_registry@16.global(12, "org_kde_kwin_appmenu_manager", 1)
[1530441,621] wl_registry@16.global(13, "org_kde_kwin_server_decoration_palette_manager", 1)
[1530441,626] wl_registry@16.global(15, "org_kde_plasma_virtual_desktop_management", 2)
[1530441,639] -> wl_registry@16.bind(15, "org_kde_plasma_virtual_desktop_management", 2, new id [unknown]@20)
[1530441,662] wl_registry@16.global(16, "org_kde_kwin_shadow_manager", 2)
[1530441,668] wl_registry@16.global(17, "org_kde_kwin_dpms_manager", 1)
[1530441,673] wl_registry@16.global(18, "zkwinft_output_management_v1", 1)
[1530441,679] wl_registry@16.global(19, "wl_subcompositor", 1)
[1530441,684] wl_registry@16.global(20, "zxdg_exporter_v2", 1)
[1530441,689] wl_registry@16.global(21, "zxdg_importer_v2", 1)
[1530441,694] wl_registry@16.global(23, "wp_viewporter", 1)
[1530441,700] wl_registry@16.global(24, "zwp_relative_pointer_manager_v1", 1)
[1530441,705] wl_registry@16.global(25, "zkwinft_output_device_v1", 1)
[1530441,710] wl_registry@16.global(26, "zxdg_output_manager_v1", 3)
[1530441,716] wl_registry@16.global(27, "wl_output", 3)
[1530441,721] wl_registry@16.global(28, "wp_presentation", 1)
[1530441,726] wl_registry@16.global(29, "wl_drm", 2)
[1530441,732] wl_registry@16.global(30, "zwp_linux_dmabuf_v1", 3)
[1530441,737] wl_registry@16.global(32, "org_kde_kwin_slide_manager", 1)
[1530441,743] wl_callback@15.done(10457)
[1530441,746] wl_registry@18.global(1, "wl_compositor", 4)
[1530441,751] wl_registry@18.global(2, "xdg_wm_base", 2)
[1530441,756] wl_registry@18.global(3, "zxdg_decoration_manager_v1", 1)
[1530441,762] wl_registry@18.global(4, "wl_shm", 1)
[1530441,767] wl_registry@18.global(5, "wl_seat", 5)
[1530441,772] wl_registry@18.global(6, "zwp_pointer_gestures_v1", 1)
[1530441,777] wl_registry@18.global(7, "zwp_pointer_constraints_v1", 1)
[1530441,783] wl_registry@18.global(8, "wl_data_device_manager", 3)
[1530441,788] wl_registry@18.global(9, "org_kde_kwin_idle", 1)
[1530441,793] wl_registry@18.global(10, "zwp_idle_inhibit_manager_v1", 1)
[1530441,798] wl_registry@18.global(11, "org_kde_plasma_shell", 6)
[1530441,803] wl_registry@18.global(12, "org_kde_kwin_appmenu_manager", 1)
[1530441,809] wl_registry@18.global(13, "org_kde_kwin_server_decoration_palette_manager", 1)
[1530441,814] wl_registry@18.global(15, "org_kde_plasma_virtual_desktop_management", 2)
[1530441,820] wl_registry@18.global(16, "org_kde_kwin_shadow_manager", 2)
[1530441,825] wl_registry@18.global(17, "org_kde_kwin_dpms_manager", 1)
[1530441,830] wl_registry@18.global(18, "zkwinft_output_management_v1", 1)
[1530441,836] wl_registry@18.global(19, "wl_subcompositor", 1)
[1530441,841] wl_registry@18.global(20, "zxdg_exporter_v2", 1)
[1530441,846] wl_registry@18.global(21, "zxdg_importer_v2", 1)
[1530441,851] wl_registry@18.global(23, "wp_viewporter", 1)
[1530441,857] wl_registry@18.global(24, "zwp_relative_pointer_manager_v1", 1)
[1530441,862] wl_registry@18.global(25, "zkwinft_output_device_v1", 1)
[1530441,867] wl_registry@18.global(26, "zxdg_output_manager_v1", 3)
[1530441,872] wl_registry@18.global(27, "wl_output", 3)
[1530441,877] wl_registry@18.global(28, "wp_presentation", 1)
[1530441,883] wl_registry@18.global(29, "wl_drm", 2)
[1530441,892] wl_registry@18.global(30, "zwp_linux_dmabuf_v1", 3)
[1530441,898] wl_registry@18.global(32, "org_kde_kwin_slide_manager", 1)
[1530441,903] wl_callback@19.done(10457)
[1530441,987] org_kde_plasma_virtual_desktop_management@20.desktop_created("6cc26b0c-1658-4b9b-9661-7ed4165e778c", 0)
[1530441,995] -> org_kde_plasma_virtual_desktop_management@20.get_virtual_desktop(new id org_kde_plasma_virtual_desktop@19, "6cc26b0c-1658-4b9b-9661-7ed4165e778c")
[1530442,005] org_kde_plasma_virtual_desktop_management@20.desktop_created("ee2a5bda-fe8e-418b-9b51-41d4cdb25dd5", 1)
[1530442,009] -> org_kde_plasma_virtual_desktop_management@20.get_virtual_desktop(new id org_kde_plasma_virtual_desktop@15, "ee2a5bda-fe8e-418b-9b51-41d4cdb25dd5")
[1530442,015] org_kde_plasma_virtual_desktop_management@20.rows(2)
[1530442,019] org_kde_plasma_virtual_desktop_management@20.done()
[1530442,520] -> wl_pointer@14.release()
[1530442,535] -> wl_keyboard@3.release()
[1530442,567] -> zxdg_output_v1@13.destroy()