Hello. I am on commit f2b794e1e90c1163e21d69dbc63101df8276eaa6. All userland is built for version 1300133. I use sway and alacritty. When I exit alacritty, it crashes. Dumps are always different, but memory is always corrupted with 5a pattern. Any ideas? vasily@vonbraun:~ % lldb (lldb) target create /usr/local/bin/alacritty --core alacritty.core Core file '/home/vasily/alacritty.core' (x86_64) was loaded. (lldb) bt * thread #1, name = 'smithay-clipboard', stop reason = signal SIGBUS * frame #0: 0x0000000801d00d4b libwayland-client.so`wl_list_insert(list=0x5a5a5a5a5a5a5a5a, elm=0x00000\ 0080f184d38) at wayland-util.c:47:20 frame #1: 0x0000000801cfc7de libwayland-client.so`queue_event(display=0x0000000802041000, len=180) at\ wayland-client.c:1406:2 frame #2: 0x0000000801cfb7bb libwayland-client.so`read_events(display=0x0000000802041000) at wayland-\ client.c:1484:11 frame #3: 0x0000000801cfb663 libwayland-client.so`wl_display_read_events(display=0x0000000802041000) \ at wayland-client.c:1567:8 frame #4: 0x0000000801cfb56c libwayland-client.so`wl_display_dispatch_queue(display=0x000000080204100\ 0, queue=0x0000000810e00020) at wayland-client.c:1806:6 frame #5: 0x0000000801cfb1f0 libwayland-client.so`wl_display_roundtrip_queue(display=0x00000008020410\ 00, queue=0x0000000810e00020) at wayland-client.c:1251:9 frame #6: 0x00000000014223db alacritty`___lldb_unnamed_symbol3551$$alacritty + 22187 frame #7: 0x00000000014063a3 alacritty`___lldb_unnamed_symbol3417$$alacritty + 35 frame #8: 0x00000000014006ee alacritty`___lldb_unnamed_symbol3370$$alacritty + 206 frame #9: 0x0000000001454c1d alacritty`___lldb_unnamed_symbol3879$$alacritty + 45 frame #10: 0x0000000801b4e77b libthr.so.3`thread_start(curthread=0x000000080f4b4100) at thr_create.c:\ 292:16 (lldb) frame select 1 frame #1: 0x0000000801cfc7de libwayland-client.so`queue_event(display=0x0000000802041000, len=180) at way\ land-client.c:1406:2 1403 else 1404 queue = proxy->queue; 1405 -> 1406 wl_list_insert(queue->event_list.prev, &closure->link); 1407 1408 return size; 1409 } (lldb) p *queue (wl_event_queue) $0 = { event_list = { prev = 0x5a5a5a5a5a5a5a5a next = 0x5a5a5a5a5a5a5a5a } display = 0x5a5a5a5a5a5a5a5a } (lldb) Software versions: alacritty: 0.7.1 wayland: 1.18.0_4 sway: 1.5.1_1 wlroots: 0.12.0
Can you reproduce with MALLOC_CONF=junk:false per malloc(3) or WITH_MALLOC_PRODUCTION=yes per src.conf(5)? 0x5a is a value assigned to deallocated memory likely to catch use-after-free. Bisecting led to alacritty v0.5.0 (since ports r543906) via https://github.com/alacritty/alacritty/commit/04f0bcaf54ed.
Yes, with MALLOC_CONF=junk:false all is OK. Should I report it to alacritty developers then?
(In reply to shamaz.mazum from comment #2) > Should I report it to alacritty developers then? Yep as upstream may provide additional ideas. However, if it's not reproducible on Linux you'd need to debug further. There're many differences to account: - FreeBSD -CURRENT enables debugging (like junk:true) by default - jemalloc maybe more unforgiving to use-after-free than glibc malloc - epoll-shim (as used by libwayland) may behave slightly different than native epoll - Tests from wayland-rs (wayland-client crate) fail to build on FreeBSD - Other wayland-rs consumers like ion-shell or veloren don't crash
Can you test the patch at https://github.com/Smithay/smithay-clipboard/issues/32 ? (taken from https://github.com/alacritty/alacritty/issues/4702)
comment #4, no this does not help. Must be unrelated problem.
Can you reproduce after 0.7.2 aka ports r566130?
Nevermind, "env MALLOC_CONF=junk:true alacritty" still crashes here.
> ports r566130 Typo: should be ports r566128
(In reply to Jan Beich from comment #8) I can't reproduce this, but I have a different environment (poudriere log with my make.conf can be seen in 254009).