You are not logged in.
Hello,
Right after logging into my user account, `thunar` and `evolution` fail to start and report the following errors:
$ thunar
(thunar:1693): Gdk-WARNING **: 11:24:03.311: The program 'thunar' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadMatch (invalid parameter attributes)'.
(Details: serial 219 error_code 8 request_code 138 (XFIXES) minor_code 2)
(Note to programmers: normally, X errors are reported asynchronously;
that is, you will receive the error a while after causing it.
To debug your program, run it with the GDK_SYNCHRONIZE environment
variable to change this behavior. You can then get a meaningful
backtrace from your debugger if you break on the gdk_x_error() function.)
$ evolution
(evolution:1748): Gtk-WARNING **: 11:24:07.682: Creating a portal monitor failed: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.portal.Inhibit” on object at path /org/freedesktop/portal/desktop
(evolution:1748): Gdk-WARNING **: 11:24:07.704: The program 'evolution' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadMatch (invalid parameter attributes)'.
(Details: serial 159 error_code 8 request_code 138 (XFIXES) minor_code 2)
(Note to programmers: normally, X errors are reported asynchronously;
that is, you will receive the error a while after causing it.
To debug your program, run it with the GDK_SYNCHRONIZE environment
variable to change this behavior. You can then get a meaningful
backtrace from your debugger if you break on the gdk_x_error() function.)The strange thing is that this issue disappears on its own (!) after 2min - 30min. Both applications then start cleanly and without reporting any issues. However, if I log out and log back in again, the problem reappears. If I log into multiple users in parallel, the issue appears for each user independently (I have to wait everywhere).
I tried to debug it, but that didn't work either:
GDK_SYNCHRONIZE=1 gdb thunar
(gdb) break gdk_x_error
Function "gdk_x_error" not defined. There are suggestions on the internet to set various environment variables, like `WEBKIT_DISABLE_COMPOSITING_MODE=1` and `XLIB_SKIP_ARGB_VISUALS=1`, but these didn't help. The only thing that helps is waiting.
I made a full system upgrade today, but the issue still persists.
Any ideas what might be going on here?
Last edited by PurpleViolin75 (2024-08-09 19:29:51)
Offline
loginctl session-status
hostnamectlOffline
Sure!
$ hostnamectl
Static hostname: home-pc
Icon name: computer-laptop
Chassis: laptop ?
Machine ID: 8b34583920cb4632ae21bb1b19116732
Boot ID: 9dd9133b970d474b816048e45adf6029
Operating System: Arch Linux
Kernel: Linux 6.10.2-arch1-2
Architecture: x86-64
Hardware Vendor: Lenovo
Hardware Model: ThinkPad P16v Gen 1
Firmware Version: N3UET19W (1.06 )
Firmware Date: Mon 2023-07-03
Firmware Age: 1y 1month 3dWhen it doesn't work (right after logging in):
$ loginctl session-status
3 - myuser (1000)
Since: Mon 2024-08-05 17:24:52 CEST; 13s ago
State: active
Leader: 3395 (login)
Seat: seat0; vc1
TTY: tty1
Remote: no
Service: login
Type: x11
Class: user
Idle: no
Unit: session-3.scope
├─3395 "login -- myuser"
├─3414 -zsh
├─3421 /bin/sh /usr/bin/startx
├─3436 xinit /home/myuser/.xinitrc -- /home/myuser/.xserverrc :0 vt1 -keeptty -auth /tmp/serverauth.Oq3M7TVL8V
├─3437 /usr/lib/Xorg -nolisten tcp :0 vt1 -keeptty -auth /tmp/serverauth.Oq3M7TVL8V vt1 -ardelay 200 -arinterval 30
├─3446 /home/myuser/.xmonad/xmonad-x86_64-linux
├─3451 xcompmgr
├─3456 urxvtd
├─3457 dunst
├─3479 xbindkeys
├─3485 xfce4-panel --disable-wm-check
├─3486 nm-applet --no-agent
├─3487 megasync
├─3488 /usr/bin/python /usr/bin/blueman-applet
├─3489 xbanish -i mod1
├─3499 xmobar
├─3548 /usr/lib/xfce4/panel/wrapper-2.0 /usr/lib/xfce4/panel/plugins/libsystray.so 6 10485767 systray "Status Tray Plugin" "Provides status notifier items (application indicators) and legacy systray items"
├─3554 /usr/lib/xfce4/panel/wrapper-2.0 /usr/lib/xfce4/panel/plugins/libpulseaudio-plugin.so 20 10485768 pulseaudio "PulseAudio Plugin" "Adjust the audio volume of the PulseAudio sound system"
├─3557 /usr/lib/xfce4/panel/wrapper-2.0 /usr/lib/xfce4/panel/plugins/libxfce4powermanager.so 15 10485769 power-manager-plugin "Power Manager Plugin" "Display the battery levels of your devices and control the brightness of your display"
├─3589 /usr/bin/python /usr/bin/blueman-tray
├─3602 zsh
└─3636 loginctl session-statusWhen it works (after a few minutes):
$ loginctl session-status
2 - myuser (1000)
Since: Mon 2024-08-05 12:24:02 CEST; 4h 59min ago
State: active
Leader: 1030 (login)
Seat: seat0; vc1
TTY: tty1
Remote: no
Service: login
Type: x11
Class: user
Idle: no
Unit: session-2.scope
├─1030 "login -- myuser"
├─1153 -zsh
├─1163 /bin/sh /usr/bin/startx
├─1178 xinit /home/myuser/.xinitrc -- /home/myuser/.xserverrc :0 vt1 -keeptty -auth /tmp/serverauth.4HFUgpbWOh
├─1179 /usr/lib/Xorg -nolisten tcp :0 vt1 -keeptty -auth /tmp/serverauth.4HFUgpbWOh vt1 -ardelay 200 -arinterval 30
├─1187 /home/myuser/.xmonad/xmonad-x86_64-linux
├─1193 xcompmgr
├─1198 urxvtd
├─1199 dunst
├─1221 xbindkeys
├─1227 xfce4-panel --disable-wm-check
├─1228 nm-applet --no-agent
├─1229 megasync
├─1230 /usr/bin/python /usr/bin/blueman-applet
├─1231 xbanish -i mod1
├─1348 /usr/lib/xfce4/panel/wrapper-2.0 /usr/lib/xfce4/panel/plugins/libsystray.so 6 10485767 systray "Status Tray Plugin" "Provides status notifier items (application indicators) and legacy systray items"
├─1354 /usr/lib/xfce4/panel/wrapper-2.0 /usr/lib/xfce4/panel/plugins/libpulseaudio-plugin.so 20 10485768 pulseaudio "PulseAudio Plugin" "Adjust the audio volume of the PulseAudio sound system"
├─1355 /usr/lib/xfce4/panel/wrapper-2.0 /usr/lib/xfce4/panel/plugins/libxfce4powermanager.so 15 10485769 power-manager-plugin "Power Manager Plugin" "Display the battery levels of your devices and control the brightness of your display"
├─1398 /usr/bin/python /usr/bin/blueman-tray
├─1403 xmobar
├─2730 /usr/lib/firefox/firefox
├─2803 /usr/lib/firefox/firefox -contentproc -parentBuildID 20240726092541 -prefsLen 34675 -prefMapSize 251271 -appDir /usr/lib/firefox/browser {9e6b54fb-4439-40e3-ba68-854139b291d1} 2730 true socket
├─2821 /usr/lib/firefox/firefox -contentproc -childID 1 -isForBrowser -prefsLen 34816 -prefMapSize 251271 -jsInitLen 234780 -parentBuildID 20240726092541 -greomni /usr/lib/firefox/omni.ja -appomni /usr/lib/firefox/browser/omni.ja -appDir /usr/lib/firefox/browser {54000e0c-0c53-41c5-a2cc-893bb84ec899} 2730 true tab
├─2881 /usr/lib/firefox/firefox -contentproc -childID 2 -isForBrowser -prefsLen 40536 -prefMapSize 251271 -jsInitLen 234780 -parentBuildID 20240726092541 -greomni /usr/lib/firefox/omni.ja -appomni /usr/lib/firefox/browser/omni.ja -appDir /usr/lib/firefox/browser {157aacf8-368d-4c8f-92b5-928bc0264077} 2730 true tab
├─2944 /usr/lib/firefox/firefox -contentproc -parentBuildID 20240726092541 -sandboxingKind 0 -prefsLen 40523 -prefMapSize 251271 -appDir /usr/lib/firefox/browser {147e8e79-aab2-41f7-b09f-ee800ec9bc75} 2730 true utility
├─2970 /usr/lib/firefox/firefox -contentproc -childID 3 -isForBrowser -prefsLen 33472 -prefMapSize 251271 -jsInitLen 234780 -parentBuildID 20240726092541 -greomni /usr/lib/firefox/omni.ja -appomni /usr/lib/firefox/browser/omni.ja -appDir /usr/lib/firefox/browser {bbc6a2f9-fe45-4bd9-9f78-d700382ef752} 2730 true tab
├─2977 /usr/lib/firefox/firefox -contentproc -childID 5 -isForBrowser -prefsLen 33472 -prefMapSize 251271 -jsInitLen 234780 -parentBuildID 20240726092541 -greomni /usr/lib/firefox/omni.ja -appomni /usr/lib/firefox/browser/omni.ja -appDir /usr/lib/firefox/browser {9b91a3a9-570a-44aa-943a-6d09c43815a5} 2730 true tab
├─3085 /usr/lib/firefox/firefox -contentproc -childID 6 -isForBrowser -prefsLen 33553 -prefMapSize 251271 -jsInitLen 234780 -parentBuildID 20240726092541 -greomni /usr/lib/firefox/omni.ja -appomni /usr/lib/firefox/browser/omni.ja -appDir /usr/lib/firefox/browser {1494d7da-08be-4950-bdaf-03ed1a66c3da} 2730 true tab
├─3088 /usr/lib/firefox/firefox -contentproc -childID 7 -isForBrowser -prefsLen 33553 -prefMapSize 251271 -jsInitLen 234780 -parentBuildID 20240726092541 -greomni /usr/lib/firefox/omni.ja -appomni /usr/lib/firefox/browser/omni.ja -appDir /usr/lib/firefox/browser {dd4b81f3-fbf5-4e71-aae4-7db5de4964ff} 2730 true tab
├─3147 zsh
├─3185 zsh
├─3273 zsh
├─3277 vim notes.md
└─3294 loginctl session-statusLast edited by PurpleViolin75 (2024-08-05 15:35:42)
Offline
Make sure to see the last link below (2nd blue note about what to include at least) but I don't think that's the cause and neither is a transient hostname…
Since xfixes seems a constant and it mostly deals w/ cursors and embedding windows - do affected clients add a systray?
Is this a multihead setup?
Do you use the adwaita cursor theme? Try https://archlinux.org/packages/extra/an … la-dmz-aa/ instead (it's visually the same but not intentionally broken)
Offline
Make sure to see the last link below (2nd blue note about what to include at least)
Not sure what you mean here. This post? I don't see that list there.
Since xfixes seems a constant and it mostly deals w/ cursors and embedding windows - do affected clients add a systray?
Yes, they all do. I use the Status Tray Plugin from the XFCE4 Panel.
Is this a multihead setup?
Not a multihead -- I only use my laptop's monitor.
Do you use the adwaita cursor theme?
I don't think so, but I'm not quite sure. I think that I'm using some default X cursors, but it may be that XFCE is interfering here.
My regular setup:
gnome-icon-theme from AUR (needed it for dunst icons)
adwaita-icon-theme (as dependency)
adwaita-cursors (as dependency)
xfce4-appearance-settings are set to the Adwaita theme
In my `.xinitrc`, the only cursor-related command is `xsetroot -cursor_name left_ptr`
What I tested:
Tried to remove gnome-icon-theme. No changes.
Tried to set appearance settings to High Contrast. No changes.
I can't uninstall adwaita-icon-theme or adwaita-cursors, since these are required by gtk3; then, I wouldn't be able to test gtk3 apps.
----
I tried to start with a minimal .xinitrc
if [ -d /etc/X11/xinit/xinitrc.d ]; then
for f in /etc/X11/xinit/xinitrc.d/*; do
[ -x "$f" ] && . "$f"
done
unset f
fi
# urxvt daemon
urxvtd &
# start xmonad
exec xmonadThe issue still appeared!
----
Maybe it would help to properly debug the gtk apps, as suggested in the error message. I'm not sure what breakpoint to set, though.
----
What is some config that's related to X, but that changes some time after logging into the user? As I mentioned, the weird thing is that it consistently starts working after a while.
Offline
Not sure what you mean here
http://wiki.archlinux.org/title/Xinit#xinitrc - but you have the relevant segment in your minimal script (and I didn't really think it could be the issue here anyway)
You don't have to set any breakpoints, just run the client in gdb, let it crash and draw a backtrace. But
Yes, they all do. I use the Status Tray Plugin from the XFCE4 Panel.
is a HUGE red flag, can you disable the systray icon for any of the clients and see whether the issue remains?
Does https://archlinux.org/packages/extra/x86_64/sbxkb/ work?
I could imagine issues w/ 24 ./. 32 drawables, but that doesn't fit the "goes away after a while" part.
What happens if you remove the systray from the panel?
Offline
I ran `pacman -R xfce4{,-goodies}; pacman -S thunar evolution xfce4-panel` just to be absolutely sure that xfce doesn't interfere. Same result though.
I also removed the Status Tray Plugin through the settings of the Panel. Same result.
After uninstalling and reinstalling the xfce4 packages, the panel itself started to crash: When I try to open the Panel Preferences, it crashes with a similar error. This crashing behavior also goes away after a while (together with the other two).
Here are all three errors for reference:
$ thunar
(thunar:1324): Gdk-WARNING **: 14:18:31.541: The program 'thunar' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadMatch (invalid parameter attributes)'.
(Details: serial 219 error_code 8 request_code 138 (XFIXES) minor_code 2)
(Note to programmers: normally, X errors are reported asynchronously;
that is, you will receive the error a while after causing it.
To debug your program, run it with the GDK_SYNCHRONIZE environment
variable to change this behavior. You can then get a meaningful
backtrace from your debugger if you break on the gdk_x_error() function.)
$ evolution
(evolution:1377): Gtk-WARNING **: 14:18:36.968: Creating a portal monitor failed: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.portal.Inhibit” on object at path /org/freedesktop/portal/desktop
(evolution:1377): Gdk-WARNING **: 14:18:36.994: The program 'evolution' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadMatch (invalid parameter attributes)'.
(Details: serial 156 error_code 8 request_code 138 (XFIXES) minor_code 2)
(Note to programmers: normally, X errors are reported asynchronously;
that is, you will receive the error a while after causing it.
To debug your program, run it with the GDK_SYNCHRONIZE environment
variable to change this behavior. You can then get a meaningful
backtrace from your debugger if you break on the gdk_x_error() function.)
$ xfce4-panel --disable-wm-check
xfce4-panel: Failed to connect to session manager: Failed to connect to the session manager: SESSION_MANAGER environment variable not defined
(xfce4-panel:1496): Gdk-WARNING **: 14:18:56.581: The program 'xfce4-panel' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadMatch (invalid parameter attributes)'.
(Details: serial 1187 error_code 8 request_code 138 (XFIXES) minor_code 2)
(Note to programmers: normally, X errors are reported asynchronously;
that is, you will receive the error a while after causing it.
To debug your program, run it with the GDK_SYNCHRONIZE environment
variable to change this behavior. You can then get a meaningful
backtrace from your debugger if you break on the gdk_x_error() function.)It's always `serial $n error_code 8 request_code 138 (XFIXES) minor_code 2`
I installed `sbxkb` and started it. It showed up in my systray and I could click on it to change the keyboard layout. Zero issues.
Don't start `megasync` on startup. No difference.
Disabled the GTK3 config (`.config/gtk-3.0`). No changes.
Another system upgrade. No changes.
Tried to debug it. It says "no stack". Probably because it's just a process without debug info. Here's the log:
$ GDK_SYNCHRONIZE=1 gdb thunar
GNU gdb (GDB) 15.1
Copyright (C) 2024 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-pc-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<https://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from thunar...
This GDB supports auto-downloading debuginfo from the following URLs:
<https://debuginfod.archlinux.org>
Enable debuginfod for this session? (y or [n]) n
Debuginfod has been disabled.
To make this setting permanent, add 'set debuginfod enabled off' to .gdbinit.
(No debugging symbols found in thunar)
(gdb) run
Starting program: /usr/bin/thunar
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/usr/lib/libthread_db.so.1".
[New Thread 0x7ffff32006c0 (LWP 17059)]
[New Thread 0x7ffff28006c0 (LWP 17060)]
[New Thread 0x7ffff1e006c0 (LWP 17061)]
[New Thread 0x7ffff14006c0 (LWP 17062)]
[New Thread 0x7ffff0a006c0 (LWP 17063)]
[New Thread 0x7fffebe006c0 (LWP 17064)]
(thunar:17056): Gdk-WARNING **: 14:08:51.900: The program 'thunar' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadMatch (invalid parameter attributes)'.
(Details: serial 435 error_code 8 request_code 138 (XFIXES) minor_code 2)
(Note to programmers: normally, X errors are reported asynchronously;
that is, you will receive the error a while after causing it.
To debug your program, run it with the GDK_SYNCHRONIZE environment
variable to change this behavior. You can then get a meaningful
backtrace from your debugger if you break on the gdk_x_error() function.)
[Thread 0x7fffebe006c0 (LWP 17064) exited]
[Thread 0x7ffff14006c0 (LWP 17062) exited]
[Thread 0x7ffff0a006c0 (LWP 17063) exited]
[Thread 0x7ffff1e006c0 (LWP 17061) exited]
[Thread 0x7ffff28006c0 (LWP 17060) exited]
[Thread 0x7ffff5a5b640 (LWP 17056) exited]
[Thread 0x7ffff32006c0 (LWP 17059) exited]
[New process 17056]
[Inferior 1 (process 17056) exited with code 01]
(gdb) backtrace
No stack.I checked out the source code here: https://gitlab.gnome.org/GNOME/gtk. The error seems to come from `gdk/x11/gdkdisplay-x11.c`, namely
void
_gdk_x11_display_error_event (GdkDisplay *display,
XErrorEvent *error)But when trying to set a breakpoint at this function, it says
(gdb) break _gdk_x11_display_error_event
No symbol table is loaded. Use the "file" command.
Make breakpoint pending on future shared library load? (y or [n]) QuitHopefully I can avoid compiling that thing myself -- the README looks quite involved.
Offline
Is gtk3-demo affected?
GDK_SYNCHRONIZE=1 gdb gtk3-demo
…
(gdb) break gdk_x_error
Function "gdk_x_error" not defined.
Make breakpoint pending on future shared library load? (y or [n]) y
Breakpoint 1 (gdk_x_error) pending.
(gdb) run
… wait for the crash
btOffline
I installed this from the `gtk3-demos` package
This happens when I try to run it:
$ gtk3-demo
(gtk3-demo:5693): Gdk-WARNING **: 16:53:48.916: The program 'gtk3-demo' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadMatch (invalid parameter attributes)'.
(Details: serial 347 error_code 8 request_code 138 (XFIXES) minor_code 2)
(Note to programmers: normally, X errors are reported asynchronously;
that is, you will receive the error a while after causing it.
To debug your program, run it with the GDK_SYNCHRONIZE environment
variable to change this behavior. You can then get a meaningful
backtrace from your debugger if you break on the gdk_x_error() function.)Then, the debugging:
$ GDK_SYNCHRONIZE=1 gdb gtk3-demo
GNU gdb (GDB) 15.1
Copyright (C) 2024 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-pc-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<https://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from gtk3-demo...
This GDB supports auto-downloading debuginfo from the following URLs:
<https://debuginfod.archlinux.org>
Enable debuginfod for this session? (y or [n]) y
Debuginfod has been enabled.
To make this setting permanent, add 'set debuginfod enabled on' to .gdbinit.
Downloading separate debug info for /usr/bin/gtk3-demo
Reading symbols from /home/user/.cache/debuginfod_client/85763703866c70004df5dfcfe3c93eda8ad19dcf/debuginfo...
(gdb) break gdk_x_error
Function "gdk_x_error" not defined.
Make breakpoint pending on future shared library load? (y or [n]) y
Breakpoint 1 (gdk_x_error) pending.
(gdb) run
Starting program: /usr/bin/gtk3-demo
Downloading separate debug info for system-supplied DSO at 0x7ffff7fc5000
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/usr/lib/libthread_db.so.1".
Downloading separate debug info for /usr/lib/libvorbisfile.so.3
Downloading separate debug info for /usr/lib/libvorbis.so.0
[New Thread 0x7ffff34006c0 (LWP 9149)]
[New Thread 0x7ffff2a006c0 (LWP 9150)]
[New Thread 0x7ffff20006c0 (LWP 9151)]
Thread 1 "gtk3-demo" hit Breakpoint 1.1, gdk_x_error (xdisplay=0x55555575a880, error=0x7fffffffda20)
at ../gtk/gdk/x11/gdkmain-x11.c:260
260 {
(gdb) bt
#0 gdk_x_error (xdisplay=0x55555575a880, error=0x7fffffffda20) at ../gtk/gdk/x11/gdkmain-x11.c:260
#1 0x00007ffff6aa2b27 in _XError (dpy=0x55555575a880,
dpy@entry=<error reading variable: Cannot access memory at address 0x7fffffffdaf8>,
rep=rep@entry=0x555555776940) at /usr/src/debug/libx11/libX11-1.8.10/src/XlibInt.c:1494
#2 0x00007ffff6aa2c40 in handle_error (
dpy=<error reading variable: Cannot access memory at address 0x7fffffffdaf8>, err=0x555555776940,
in_XReply=<optimized out>) at /usr/src/debug/libx11/libX11-1.8.10/src/xcb_io.c:211
Backtrace stopped: Cannot access memory at address 0x7fffffffdb58About the debuginfo: gdb seems to load this automatically (failed to read it properly, my bad lol)
After the `New Thread` messages, the whole X session freezes. No mouse and keyboard interaction, even my clock freezes. I had to kill the `gtk3-demo` process via another VC. At least a bt is still produced.
This is the old gtk2 demo. Also doesn't work:
$ gtk-demo // same with gtk-demo --sync
The program 'gtk-demo' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadMatch (invalid parameter attributes)'.
(Details: serial 207 error_code 8 request_code 138 minor_code 2)
(Note to programmers: normally, X errors are reported asynchronously;
that is, you will receive the error a while after causing it.
To debug your program, run it with the --sync command line
option to change this behavior. You can then get a meaningful
backtrace from your debugger if you break on the gdk_x_error() function.)However, whenever I run it in debug mode, it does work. I tried 4-5 times, I never got it not to work so that I could debug it. Just a fluke?
After it runs in debug mode, it also runs when started regularly AND all of the other programs also start running. I now at least have a really weird workaround if I really need to check my email...
$ gdb --args gtk-demo --sync
GNU gdb (GDB) 15.1
Copyright (C) 2024 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-pc-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<https://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from gtk-demo...
This GDB supports auto-downloading debuginfo from the following URLs:
<https://debuginfod.archlinux.org>
Enable debuginfod for this session? (y or [n]) y
Debuginfod has been enabled.
To make this setting permanent, add 'set debuginfod enabled on' to .gdbinit.
Reading symbols from /home/user/.cache/debuginfod_client/c1ec90eb78e1df45f915b7c2cbd4ce01040f357c/debuginfo...
(gdb) break gdk_x_error
Function "gdk_x_error" not defined.
Make breakpoint pending on future shared library load? (y or [n]) y
Breakpoint 1 (gdk_x_error) pending.
(gdb) run
Starting program: /usr/bin/gtk-demo --sync
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/usr/lib/libthread_db.so.1".
[New Thread 0x7ffff62006c0 (LWP 7977)]
[New Thread 0x7ffff4a006c0 (LWP 7979)]$ GDK_SYNCHRONIZE=1 gdb thunar
GNU gdb (GDB) 15.1
Copyright (C) 2024 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-pc-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<https://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from thunar...
This GDB supports auto-downloading debuginfo from the following URLs:
<https://debuginfod.archlinux.org>
Enable debuginfod for this session? (y or [n]) y
Debuginfod has been enabled.
To make this setting permanent, add 'set debuginfod enabled on' to .gdbinit.
Reading symbols from /home/user/.cache/debuginfod_client/b2650105f0d6bc6c1d9b09deee24ca57a60a1705/debuginfo...
(gdb) break gdk_x_error
Function "gdk_x_error" not defined.
Make breakpoint pending on future shared library load? (y or [n]) y
Breakpoint 1 (gdk_x_error) pending.
(gdb) run
Starting program: /usr/bin/thunar
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/usr/lib/libthread_db.so.1".
[New Thread 0x7ffff32006c0 (LWP 9583)]
[New Thread 0x7ffff28006c0 (LWP 9584)]
[New Thread 0x7ffff1e006c0 (LWP 9585)]
[New Thread 0x7ffff14006c0 (LWP 9586)]
[New Thread 0x7ffff0a006c0 (LWP 9587)]
Thread 1 "thunar" hit Breakpoint 1.1, gdk_x_error (xdisplay=0x555555680600, error=0x7fffffffdb90) at ../gtk/gdk/x11/gdkmain-x11.c:260
260 {
(gdb) bt
#0 gdk_x_error (xdisplay=0x555555680600, error=0x7fffffffdb90) at ../gtk/gdk/x11/gdkmain-x11.c:260
#1 0x00007ffff6c48b27 in _XError (dpy=0x555555680600, dpy@entry=<error reading variable: Cannot access memory at address 0x7fffffffdc68>,
rep=<error reading variable: Cannot access memory at address 0x7fffffffdc70>) at /usr/src/debug/libx11/libX11-1.8.10/src/XlibInt.c:1494
#2 0x00007ffff6c48c40 in handle_error (dpy=<error reading variable: Cannot access memory at address 0x7fffffffdc68>,
err=<error reading variable: Cannot access memory at address 0x7fffffffdc70>, in_XReply=<optimized out>) at /usr/src/debug/libx11/libX11-1.8.10/src/xcb_io.c:211
Backtrace stopped: Cannot access memory at address 0x7fffffffdcc8Same story as gtk3-demo: After running it, the whole X session froze (right after the `New Thread` messages). Mouse doesn't move, keyboard doesn't work. I then killed the process with SIGKILL via another VC. Fortunately, the backtrace still worked.
Still need to look into the source files.
Offline
ldd /usr/bin/gtk3-demo
pacman -Qikk libxfixes libx11 libxcb xorgproto
pacman -QmDid you run any partial updates?
Offline
This seems relevant, especially the comments:
static int handle_error(Display *dpy, xError *err, Bool in_XReply)
{
_XExtension *ext;
int ret_code;
/* Oddly, Xlib only allows extensions to suppress errors when
* those errors were seen by _XReply. */
if(in_XReply)
/*
* we better see if there is an extension who may
* want to suppress the error.
*/
for(ext = dpy->ext_procs; ext; ext = ext->next)
if(ext->error && (*ext->error)(dpy, err, &ext->codes, &ret_code))
return ret_code;
_XError(dpy, err);
return 0;
}From the X11 source, `src/xcb_io.c:197`
Offline
No partial updates that I'm aware of. I did a full system upgrade just today again.
$ ldd /usr/bin/gtk3-demo
linux-vdso.so.1 (0x000074517a170000)
libgtk-3.so.0 => /usr/lib/libgtk-3.so.0 (0x0000745179600000)
libgdk-3.so.0 => /usr/lib/libgdk-3.so.0 (0x0000745179e8f000)
libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0x00007451794b2000)
libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0x0000745179e30000)
libgio-2.0.so.0 => /usr/lib/libgio-2.0.so.0 (0x00007451792e5000)
libpangocairo-1.0.so.0 => /usr/lib/libpangocairo-1.0.so.0 (0x0000745179e20000)
libpango-1.0.so.0 => /usr/lib/libpango-1.0.so.0 (0x0000745179db5000)
libharfbuzz.so.0 => /usr/lib/libharfbuzz.so.0 (0x00007451791cb000)
libcairo.so.2 => /usr/lib/libcairo.so.2 (0x0000745179098000)
libgdk_pixbuf-2.0.so.0 => /usr/lib/libgdk_pixbuf-2.0.so.0 (0x0000745179054000)
libepoxy.so.0 => /usr/lib/libepoxy.so.0 (0x0000745178f47000)
libm.so.6 => /usr/lib/libm.so.6 (0x0000745178e58000)
libc.so.6 => /usr/lib/libc.so.6 (0x0000745178c65000)
libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0 (0x0000745178c5e000)
libpangoft2-1.0.so.0 => /usr/lib/libpangoft2-1.0.so.0 (0x0000745178c42000)
libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0x0000745178bf2000)
libfribidi.so.0 => /usr/lib/libfribidi.so.0 (0x0000745178bd2000)
libcairo-gobject.so.2 => /usr/lib/libcairo-gobject.so.2 (0x0000745178bc9000)
libatk-1.0.so.0 => /usr/lib/libatk-1.0.so.0 (0x0000745178ba0000)
libXi.so.6 => /usr/lib/libXi.so.6 (0x0000745178b8d000)
libX11.so.6 => /usr/lib/libX11.so.6 (0x0000745178a4c000)
libatk-bridge-2.0.so.0 => /usr/lib/libatk-bridge-2.0.so.0 (0x0000745178a10000)
libcloudproviders.so.0 => /usr/lib/libcloudproviders.so.0 (0x00007451789f7000)
libtracker-sparql-3.0.so.0 => /usr/lib/libtracker-sparql-3.0.so.0 (0x0000745178920000)
libXfixes.so.3 => /usr/lib/libXfixes.so.3 (0x0000745178916000)
libxkbcommon.so.0 => /usr/lib/libxkbcommon.so.0 (0x00007451788ce000)
libwayland-client.so.0 => /usr/lib/libwayland-client.so.0 (0x00007451788bf000)
libwayland-cursor.so.0 => /usr/lib/libwayland-cursor.so.0 (0x00007451788b5000)
libwayland-egl.so.1 => /usr/lib/libwayland-egl.so.1 (0x00007451788b0000)
libXext.so.6 => /usr/lib/libXext.so.6 (0x0000745178899000)
libXcursor.so.1 => /usr/lib/libXcursor.so.1 (0x000074517888d000)
libXdamage.so.1 => /usr/lib/libXdamage.so.1 (0x0000745178888000)
libXcomposite.so.1 => /usr/lib/libXcomposite.so.1 (0x0000745178883000)
libXrandr.so.2 => /usr/lib/libXrandr.so.2 (0x0000745178876000)
libXinerama.so.1 => /usr/lib/libXinerama.so.1 (0x0000745178871000)
libpcre2-8.so.0 => /usr/lib/libpcre2-8.so.0 (0x00007451787d0000)
libffi.so.8 => /usr/lib/libffi.so.8 (0x00007451787c5000)
libz.so.1 => /usr/lib/libz.so.1 (0x00007451787ac000)
libmount.so.1 => /usr/lib/libmount.so.1 (0x000074517875d000)
libthai.so.0 => /usr/lib/libthai.so.0 (0x0000745178752000)
libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0x0000745178687000)
libgraphite2.so.3 => /usr/lib/libgraphite2.so.3 (0x0000745178665000)
libpng16.so.16 => /usr/lib/libpng16.so.16 (0x000074517862b000)
libXrender.so.1 => /usr/lib/libXrender.so.1 (0x000074517861f000)
libxcb.so.1 => /usr/lib/libxcb.so.1 (0x00007451785f4000)
libxcb-render.so.0 => /usr/lib/libxcb-render.so.0 (0x00007451785e5000)
libxcb-shm.so.0 => /usr/lib/libxcb-shm.so.0 (0x00007451785de000)
libpixman-1.so.0 => /usr/lib/libpixman-1.so.0 (0x0000745178534000)
libjpeg.so.8 => /usr/lib/libjpeg.so.8 (0x0000745178498000)
libtiff.so.6 => /usr/lib/libtiff.so.6 (0x000074517840d000)
/lib64/ld-linux-x86-64.so.2 => /usr/lib64/ld-linux-x86-64.so.2 (0x000074517a172000)
libexpat.so.1 => /usr/lib/libexpat.so.1 (0x00007451783e4000)
libatspi.so.0 => /usr/lib/libatspi.so.0 (0x00007451783ac000)
libdbus-1.so.3 => /usr/lib/libdbus-1.so.3 (0x000074517835b000)
libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x000074517832d000)
libjson-glib-1.0.so.0 => /usr/lib/libjson-glib-1.0.so.0 (0x0000745178303000)
libxml2.so.2 => /usr/lib/libxml2.so.2 (0x00007451781b7000)
libsqlite3.so.0 => /usr/lib/libsqlite3.so.0 (0x000074517804d000)
libblkid.so.1 => /usr/lib/libblkid.so.1 (0x0000745178014000)
libdatrie.so.1 => /usr/lib/libdatrie.so.1 (0x000074517800b000)
libbz2.so.1.0 => /usr/lib/libbz2.so.1.0 (0x0000745177ff8000)
libbrotlidec.so.1 => /usr/lib/libbrotlidec.so.1 (0x0000745177fe9000)
libXau.so.6 => /usr/lib/libXau.so.6 (0x0000745177fe2000)
libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x0000745177fda000)
libzstd.so.1 => /usr/lib/libzstd.so.1 (0x0000745177efb000)
liblzma.so.5 => /usr/lib/liblzma.so.5 (0x0000745177ec8000)
libjbig.so.2.1 => /usr/lib/libjbig.so.2.1 (0x0000745177eba000)
libsystemd.so.0 => /usr/lib/libsystemd.so.0 (0x0000745177dc4000)
libicuuc.so.75 => /usr/lib/libicuuc.so.75 (0x0000745177bca000)
libbrotlicommon.so.1 => /usr/lib/libbrotlicommon.so.1 (0x0000745177ba7000)
libcap.so.2 => /usr/lib/libcap.so.2 (0x0000745177b9b000)
libicudata.so.75 => /usr/lib/libicudata.so.75 (0x0000745175e00000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x0000745175a00000)$ pacman -Qikk libxfixes libx11 libxcb xorgproto
Name : libxfixes
Version : 6.0.1-2
Description : X11 miscellaneous 'fixes' extension library
Architecture : x86_64
URL : https://xorg.freedesktop.org/
Licenses : MIT HPND-sell-variant
Groups : None
Provides : None
Depends On : libx11 xorgproto glibc
Optional Deps : None
Required By : firefox gst-plugins-good gtk2 gtk3 gtk4 kwindowsystem lib32-libxfixes libva libxcomposite libxcursor libxdamage libxi libxpresent mesa qt6-webengine scrot xbanish
Optional For : brltty
Conflicts With : None
Replaces : None
Installed Size : 37.18 KiB
Packager : Andreas Radke <andyrtr@archlinux.org>
Build Date : Wed 03 Jul 2024 08:40:39 PM CEST
Install Date : Sat 06 Jul 2024 04:48:50 PM CEST
Install Reason : Installed as a dependency for another package
Install Script : No
Validated By : Signature
libxfixes: 18 total files, 0 altered files
Name : libx11
Version : 1.8.10-1
Description : X11 client-side library
Architecture : x86_64
URL : https://gitlab.freedesktop.org/xorg/lib/libx11
Licenses : MIT AND X11
Groups : None
Provides : None
Depends On : libxcb glibc xorgproto
Optional Deps : None
Required By : aalib at-spi2-core cairo dmenu ffmpeg ffmpeg4.4 firefox freeglut gdk-pixbuf-xlib ghostscript gjs gst-plugins-bad-libs gst-plugins-base gst-plugins-base-libs gst-plugins-good gtk2 gtk3 gtk4 haskell-x11 inkscape kcrash kguiaddons kwindowsystem lib32-libx11 libcaca libepoxy libreoffice-fresh libva libxaw libxcomposite libxcursor libxdamage libxext libxfixes libxft libxi libxinerama libxkbfile libxklavier libxmu libxpm libxpresent libxrandr libxrender libxres libxss libxt libxtst libxv libxvmc libxxf86vm lirc mesa mesa-utils mplayer mpv pango qemu-ui-gtk qemu-ui-sdl qt6-base qt6-multimedia-ffmpeg qt6-webengine redshift rhythmbox sdl2 stalonetray startup-notification vlc vulkan-intel webkit2gtk-4.1 wmname xbindkeys xorg-xauth xorg-xclock xorg-xhost xorg-xinit xorg-xkbcomp xorg-xlsfonts xorg-xmodmap xorg-xprop xorg-xrandr xorg-xrdb xorg-xsetroot
Optional For : brltty mtools
Conflicts With : None
Replaces : None
Installed Size : 9.78 MiB
Packager : Andreas Radke <andyrtr@archlinux.org>
Build Date : Sun 04 Aug 2024 11:43:26 AM CEST
Install Date : Fri 09 Aug 2024 01:58:51 PM CEST
Install Reason : Installed as a dependency for another package
Install Script : No
Validated By : Signature
libx11: 1252 total files, 0 altered files
Name : libxcb
Version : 1.17.0-1
Description : X11 client-side library
Architecture : x86_64
URL : https://gitlab.freedesktop.org/xorg/lib/libxcb
Licenses : X11
Groups : None
Provides : None
Depends On : xcb-proto libxdmcp libxau glibc
Optional Deps : None
Required By : cairo ffmpeg ffmpeg4.4 firefox gst-plugins-bad-libs gst-plugins-base-libs kwindowsystem lib32-libxcb libpulse libx11 libxkbcommon-x11 mesa mesa-utils python-pillow qt6-base qt6-webengine redshift startup-notification vlc vulkan-intel vulkan-mesa-layers xcb-util xcb-util-cursor xcb-util-image xcb-util-keysyms xcb-util-renderutil xcb-util-wm
Optional For : None
Conflicts With : None
Replaces : None
Installed Size : 3.87 MiB
Packager : Andreas Radke <andyrtr@archlinux.org>
Build Date : Mon 15 Apr 2024 09:12:32 PM CEST
Install Date : Sun 26 May 2024 05:04:43 PM CEST
Install Reason : Installed as a dependency for another package
Install Script : No
Validated By : Signature
libxcb: 2460 total files, 0 altered files
Name : xorgproto-git
Version : 2024.1.1.r2766.g68de489-1
Description : combined X.Org X11 Protocol headers (git version)
Architecture : any
URL : https://xorg.freedesktop.org/
Licenses : custom
Groups : None
Provides : xorgproto
Depends On : None
Optional Deps : None
Required By : libice libsm libx11 libxau libxaw libxcomposite libxcursor libxdamage libxdmcp libxext libxfixes libxfont2 libxft libxi libxinerama libxkbfile libxmu libxpresent libxrender libxres libxss libxt libxtst libxv libxvmc libxxf86vm
Optional For : None
Conflicts With : xorgproto
Replaces : None
Installed Size : 1491.40 KiB
Packager : Unknown Packager
Build Date : Fri 12 Jul 2024 03:26:00 PM CEST
Install Date : Fri 12 Jul 2024 03:26:14 PM CEST
Install Reason : Installed as a dependency for another package
Install Script : No
Validated By : None
xorgproto-git: 211 total files, 0 altered files$ pacman -Qm
gnome-icon-theme 3.12.0-7
gnome-icon-theme-symbolic 3.12.0-6
gstreamer0.10 0.10.36-20
icu74 74.2-6
icu74-debug 74.2-6
khtml 5.115.0-1
kjs 5.115.0-1
python38 3.8.18-2
ttf-ms-fonts 2.0-12
ttf-vista-fonts 1-11
vdhcoapp-bin 2.0.19-1
virtualbox-unattended-templates 7.0.12-1
visual-studio-code-bin 1.84.2-1
xbanish 1.8-1
xbanish-debug 1.8-1
xorg-server-common-git 21.1.99.1.r1134.g720362617-1
xorg-server-git 21.1.99.1.r1134.g720362617-1
xorg-server-git-debug 21.1.99.1.r1134.g720362617-1
xorgproto-git 2024.1.1.r2766.g68de489-1
yay-git 12.3.5.r13.g53c9d0ef-1
yay-git-debug 12.3.5.r13.g53c9d0ef-1Offline
gtk commits suicide on X11 "errors", that's dumb but normal - the question is why you're getting an error from xfixes itfp and the corrupted stack is worrysome.
Edit:
xorg-server-common-git 21.1.99.1.r1134.g720362617-1
xorg-server-git 21.1.99.1.r1134.g720362617-1
xorg-server-git-debug 21.1.99.1.r1134.g720362617-1
xorgproto-git 2024.1.1.r2766.g68de489-1I bet your left and right arm that's the problem…
Last edited by seth (2024-08-09 15:52:10)
Offline
HELL YES! This is the cause!
`pacman -R xorg-server-git; pacman -S xorg-server` fixes it.
The problem now: The reason I installed the git version is because of massive tearing that I experience with `xorg-server` (to the point where your eyes hurt when scrolling through long text like this thread). I tried to switch from the iGPU to my Nvidia card, but this came with a bunch of other issues. After multiple days, this was the only really acceptable solution to my graphics problem...
Is there some kind of workaround to this? Basically, find a way to get to the "everything works" state right after logging in.
Offline
Nevermind, I found a "workaround": just install the newest damn version!
I ran `yay -S xorg-server-git` and asked it to cleanBuild it. Now, I have no tearing and all of my applications start immediately. Wonderful!
Lesson learned: full system upgrade also includes the AUR...
On a personal note, that was some fantastic help, seth. I wouldn't have figured it without you. Kudos!
Offline