Package: ristretto Version: 0.8.3-1 Severity: important Dear Maintainer,
When I run «ristretto» under Openbox, there is a 25s delay before the window opens. That doesn't happen under XFCE. - I tried to run ristretto with and without command-line arguments. That did not affect the outcome. At the time, the current working directory contained one *.png file (sized 1.2MB) and nothing else. - I timed the delay with a wallclock. It was approximately 25 seconds. - I ran «strace ristretto» (without any other arguments). A delay occurs at this point: openat(AT_FDCWD, "/etc/localtime", O_RDONLY|O_CLOEXEC) = 10 fstat(10, {st_mode=S_IFREG|0644, st_size=127, ...}) = 0 fstat(10, {st_mode=S_IFREG|0644, st_size=127, ...}) = 0 read(10, "TZif2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\0\0\0\1\0\0\0\0"..., 4096) = 127 lseek(10, -71, SEEK_CUR) = 56 read(10, "TZif2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\0\0\0\1\0\0\0\0"..., 4096) = 71 close(10) = 0 brk(0x55fccb38d000) = 0x55fccb38d000 brk(0x55fccb38c000) = 0x55fccb38c000 write(8, "\1\0\0\0\0\0\0\0", 8) = 8 futex(0x55fccb313320, FUTEX_WAKE_PRIVATE, 1) = 1 futex(0x55fccb3130b0, FUTEX_WAKE_PRIVATE, 1) = 1 futex(0x55fccb30a048, FUTEX_WAKE_PRIVATE, 1) = 1 write(8, "\1\0\0\0\0\0\0\0", 8) = 8 futex(0x55fccb3130b0, FUTEX_WAKE_PRIVATE, 1) = 1 write(8, "\1\0\0\0\0\0\0\0", 8) = 8 futex(0x55fccb30a048, FUTEX_WAKE_PRIVATE, 1) = 1 eventfd2(0, EFD_CLOEXEC|EFD_NONBLOCK) = 10 write(10, "\1\0\0\0\0\0\0\0", 8) = 8 write(8, "\1\0\0\0\0\0\0\0", 8) = 8 futex(0x55fccb313320, FUTEX_WAKE_PRIVATE, 1) = 1 futex(0x55fccb3130b0, FUTEX_WAKE_PRIVATE, 1) = 1 futex(0x55fccb30a048, FUTEX_WAKE_PRIVATE, 1) = 1 poll([{fd=10, events=POLLIN}], 1, 25000) = 1 ([{fd=10, revents=POLLIN}]) read(10, "\1\0\0\0\0\0\0\0", 16) = 8 poll([{fd=10, events=POLLIN}], 1, 25000^Cstrace: Process 4556 detached <detached ...> I captured a backtrace (from a different ristretto run, because lldb failed to attached to the strace'd run): * thread #1, name = 'ristretto', stop reason = signal SIGSTOP * frame #0: 0x00007ffff6ba0819 libc.so.6`__GI___poll(fds=0x0000555555648720, nfds=1, timeout=25000) at poll.c:29 frame #1: 0x00007ffff762b136 libglib-2.0.so.0`___lldb_unnamed_symbol193$$libglib-2.0.so.0 + 374 frame #2: 0x00007ffff762b4c2 libglib-2.0.so.0`g_main_loop_run + 178 frame #3: 0x00007ffff78a1b53 libgio-2.0.so.0`___lldb_unnamed_symbol2705$$libgio-2.0.so.0 + 243 frame #4: 0x00007ffff78118c2 libgio-2.0.so.0`g_initable_new_valist + 146 frame #5: 0x00007ffff7811979 libgio-2.0.so.0`g_initable_new + 153 frame #6: 0x00007ffff78a34fc libgio-2.0.so.0`g_dbus_proxy_new_for_bus_sync + 236 frame #7: 0x0000555555575ef5 ristretto`rstto_main_window_init(window=0x00005555555d9260) at main_window.c:809 frame #8: 0x00007ffff7730107 libgobject-2.0.so.0`g_type_create_instance + 775 frame #9: 0x00007ffff7712548 libgobject-2.0.so.0`___lldb_unnamed_symbol123$$libgobject-2.0.so.0 + 744 frame #10: 0x00007ffff7713cc5 libgobject-2.0.so.0`g_object_new_with_properties + 757 frame #11: 0x00007ffff7714731 libgobject-2.0.so.0`g_object_new + 193 frame #12: 0x0000555555578f5a ristretto`rstto_main_window_new(image_list=0x00005555555a95a0, fullscreen=0) at main_window.c:1263 frame #13: 0x0000555555566c74 ristretto`main(argc=<unavailable>, argv=<unavailable>) at main.c:134 frame #14: 0x00007ffff6ad609b libc.so.6`__libc_start_main(main=(ristretto`main at main.c:86), argc=1, argv=0x00007fffffffe6e8, init=<unavailable>, fini=<unavailable>, rtld_fini=<unavailable>, stack_end=0x00007fffffffe6d8) at libc-start.c:308 frame #15: 0x0000555555566e0a ristretto`_start + 42 - The delay occurs when I run ristretto under Openbox (using «startx openbox» after logging in on a Ctrl+Alt+F<digit> tty, without a login manager), but does not occur when I run ristretto under XFCE. - This used to work fine. I don't remember when it last worked, but that may well have been on stretch. (I'm currently on buster.) - I have not tested 0.10.0-1, since I do not have a testing or sid headful VM. However, I did check the bug trackers and changelogs, both Debian's and upstream's, and found no relevant matches. It would seem that the last poll(2) call times out while reading from the eventfd2() fd. I would be grateful for a workaround for getting rid of the delay. Cheers, Daniel -- System Information: Debian Release: 10.3 APT prefers stable-debug APT policy: (500, 'stable-debug'), (500, 'stable') Architecture: amd64 (x86_64) Kernel: Linux 4.19.0-8-amd64 (SMP w/4 CPU cores) Locale: LANG=C.UTF-8, LC_CTYPE=C.UTF-8 (charmap=UTF-8), LANGUAGE=C.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages ristretto depends on: ii libc6 2.28-10 ii libcairo2 1.16.0-4 ii libexif12 0.6.21-5.1+deb10u1 ii libgdk-pixbuf2.0-0 2.38.1+dfsg-1 ii libglib2.0-0 2.58.3-2+deb10u2 ii libgtk2.0-0 2.24.32-3 ii libmagic1 1:5.35-4+deb10u1 ii libpango-1.0-0 1.42.4-7~deb10u1 ii libpangocairo-1.0-0 1.42.4-7~deb10u1 ii libx11-6 2:1.6.7-1 ii libxfce4ui-1-0 4.12.1-3 ii libxfce4util7 4.12.1-3 ii libxfconf-0-2 4.12.1-1 Versions of packages ristretto recommends: ii tumbler 0.2.3-1 ristretto suggests no packages. -- no debconf information