#2 0x000055c236293ca6 in ProcXkbLatchLockState (client=0x55c2372372d0) at xkb.c:560
-> Proc* is always a call from outside to an extension, in this case the XKB extension.
So do you have some setxkbmap call in your shell startup files? What are they doing? Does this also happen with other session types (not MATE)?
Uli
On Tue, Mar 26, 2019 at 2:48 PM Robert Kudyba <rkudyba@fordham.edu> wrote:
Perhaps these logs and core dump GDB backtrace will help? Notice that nx-libs is now nx-libs-3.5.99.19-0.0build1.0.git20190325.3293.heuler.fc29.x86_64
Mar 26 09:22:17 ourwokstation /usr/bin/x2gostartagent[16213]: successfully started X2Go Agent session with ID agw-58-1553606535_stDMATE_dp32 Mar 26 09:22:19 ourwokstation /usr/bin/x2goruncommand[16676]: launching session with Xsession-x2go mechanism, using STARTUP="mate-session" Mar 26 09:22:19 ourwokstation /usr/bin/x2goruncommand[16677]: dbus wrapper available as /usr/bin/dbus-run-session Mar 26 09:22:24 ourwokstation gnome-keyring-daemon[16915]: couldn't access control socket: /run/user/1201/keyring/control: No such file or directory Mar 26 09:22:24 ourwokstation mate-session[16692]: WARNING: keycode1 not existent Mar 26 09:22:24 ourwokstation mate-session[16692]: WARNING: keycode2 not existent Mar 26 09:22:30 ourwokstation mate-session[16692]: WARNING: Could not launch application 'dropbox.desktop': Unable to start application: Failed to execute child process “dropbox” (No such file or directory) Mar 26 09:22:32 ourwokstation gnome-keyring-daemon[16915]: The SSH agent was already initialized Mar 26 09:22:33 ourwokstation gnome-keyring-daemon[16915]: The PKCS#11 component was already initialized Mar 26 09:22:33 ourwokstation pulseaudio[30825]: Invalid MIT-MAGIC-COOKIE-1 keyE: [pulseaudio] x11wrap.c: XOpenDisplay() failed Mar 26 09:22:33 ourwokstation pulseaudio[30825]: E: [pulseaudio] module.c: Failed to load module "module-x11-publish" (argument: "display=:58"): initialization failed. Mar 26 09:22:33 ourwokstation gnome-keyring-daemon[16915]: The Secret Service was already initialized Mar 26 09:22:34 ourwokstation kernel: traps: x2goagent[16202] trap divide error ip:55c23629da1c sp:7ffe0df096e0 error:0 in nxagent[55c2361af000+319000] Mar 26 09:22:34 ourwokstation systemd[1]: Started Process Core Dump (PID 17060/UID 0). Mar 26 09:22:36 ourwokstation spice-vdagent[17111]: Cannot access vdagent virtio channel /dev/virtio-ports/com.redhat.spice.0 Mar 26 09:22:38 ourwokstation systemd-coredump[17061]: Process 16202 (x2goagent) of user 1201 dumped core. #012#012Stack trace of thread 16202:#012#0 0x000055c23629da1c XkbAdjustGroup (nxagent) #012#1 0x000055c23629daf5 XkbComputeDerivedState (nxagent) #012#2 0x000055c236293ca6 ProcXkbLatchLockState (nxagent) #012#3 0x000055c2361cfd18 Dispatch (nxagent) #012#4 0x000055c2361b3821 main (nxagent) #012#5 0x00007f64fdece413 __libc_start_main (libc.so.6)#012#6 0x000055c2361b3b5e _start (nxagent) Mar 26 09:22:40 ourwokstation python3[17121]: detected unhandled Python exception in '/usr/bin/dnfdragora-updater' Mar 26 09:22:41 ourwokstation systemd-logind[11665]: Session 25456 logged out. Waiting for processes to exit. Mar 26 09:22:45 ourwokstation abrt-server[17301]: Package 'nxagent' isn't signed with proper key Mar 26 09:22:46 ourwokstation abrt-server[17301]: 'post-create' on '/var/spool/abrt/ccpp-2019-03-26-09:22:39.879918-16202' exited with 1 Mar 26 09:22:46 ourwokstation abrt-server[17301]: Deleting problem directory '/var/spool/abrt/ccpp-2019-03-26-09:22:39.879918-16202' Mar 26 09:22:46 ourwokstation abrt-server[17234]: Deleting problem directory Python3-2019-03-26-09:22:41-17121 (dup of Python3-2019-02-18-12:04:02-13003) Mar 26 09:22:47 ourwokstation abrt-notification[17366]: Process 13003 (dnfdragora-updater) of user 1201 encountered an uncaught gi.repository.GLib.GError exception
Core was generated by `x2goagent -nolisten tcp -nolisten tcp -dpi 96 -D -auth /u/ourwokstation/agw/.Xauthori'. Program terminated with signal SIGFPE, Arithmetic exception. #0 0x000055c23629da1c in XkbAdjustGroup (group=<error reading variable: Division by zero>, ctrls=ctrls@entry=0x55c236e90810) at xkbUtils.c:688 688 xkbUtils.c: No such file or directory. (gdb) bt full #0 0x000055c23629da1c in XkbAdjustGroup (group=<error reading variable: Division by zero>, ctrls=ctrls@entry=0x55c236e90810) at xkbUtils.c:688 act = 0 #1 0x000055c23629daf5 in XkbComputeDerivedState (xkbi=0x55c236ea5c10) at xkbUtils.c:714 state = 0x55c236ea5c22 ctrls = 0x55c236e90810 grp = <optimized out> #2 0x000055c236293ca6 in ProcXkbLatchLockState (client=0x55c2372372d0) at xkb.c:560 status = <optimized out> dev = 0x55c236e6f6b0 oldState = {group = 0 '\000', locked_group = 0 '\000', base_group = 0, latched_group = 0, mods = 0 '\000', base_mods = 0 '\000', latched_mods = 0 '\000', locked_mods = 0 '\000', compat_state = 0 '\000', grab_mods = 0 '\000', compat_grab_mods = 0 '\000', lookup_mods = 0 '\000', compat_lookup_mods = 0 '\000', ptr_buttons = 0} newState = 0x55c236ea5c22 changed = <optimized out> stuff = <optimized out> #3 0x000055c2361cfd18 in Dispatch () at NXdispatch.c:482 clientReady = 0x55c236e8b060 result = <optimized out> client = 0x55c2372372d0 nready = <optimized out> icheck = 0x55c2365fe6d0 <checkForInput> start_tick = 0 currentDispatch = <optimized out> #4 0x000055c2361b3821 in main (argc=15, argv=0x7ffe0df09938, envp=<optimized out>) at main.c:353 i = <optimized out> xauthfile = <optimized out> alwaysCheckForInput = {0, 1}
Core dump uploaded to: https://storm.cis.fordham.edu/~rkudyba/core.x2goagent.1201.e138540091ef4dfe9...
rpm -q nx-libs nx-libs-3.5.99.19-0.0build1.0.git20190325.3293.heuler.fc29.x86_64
rpm -q x2goserver x2goserver-4.1.0.4-0.0x2go1.0.git20190114.1758.heuler.fc29.x86_64
On Mar 26, 2019, at 5:13 AM, Mihai Moldovan <ionic@ionic.de> wrote:
- On 3/25/19 2:10 PM, Ulrich Sibiller wrote:
For testing you could try without ssh-agent or with the one of the current openssh.
Sure, that's the quickest workaround... I just switched to no-agent auth for testing.
Naturally, though, I wasn't able to reproduce the problem with the current master version. Everything was working fine as far as the keyboard was concerned.
It might be related to that commit, but I don't know. ctrl->num_groups is obviously zero in XkbAdjustGroup()/xkbUtils.c, but I have no idea what that actually means. The code in question does look a bit shady (for instance, it checks for group >= ctrls->num_groups and later might set group %= ctrls->num_groups, which obviously is a bad idea if both group and ctrls->num_groups is zero, but I have the suspicion that that should never have been the case in the first place.
I don't know what "groups" are in this context neither.
I somehow doubt that commit caused the problem, though. If the clone mechanism works fine, that change shouldn't cause any problems. There's probably no harm in cloning the config, even though we later sync up using xmodmap (other than a race condition, i.e., there MIGHT be a problem if we first sync up using xmodmap and then nxagent changes the whole keyboard settings again).
Seems to be yet another weird problem that can only be reproduced with user accounts from NIS, but I have no idea why that might be. As far as I remember, Roberts home directories are not even coming via NFS so the home dir should be available at the time nxagent/x2goagent starts and - in that case - tries to block keyboard file creation by making a directory. However, nx-libs-3.5.99.18-0.0build1.0.git20190208.3237.heuler.fc29.x86_64 is quite old and I recently synced the master branch up with Arctica Project's master branch again, which means that it has 3.5.99.19 + the last two commits on top of it. Maybe it's worthwhile to retest with that.
I'm wary of releasing 3.5.99.19 to X2Go land, though, since I did notice a different problem in my test of an XFCE session on a Devuan Unstable machine: for some reason I didn't have xfce4-terminal installed and the default terminal application was set to qterminal. That started up, but only worked for a few seconds, after which it froze up. x2goagent/nxagent used 100 % of one CPU thread at that point and even after killing qterminal it continued to do so for a few minutes, after which it settled down with occasional 100 % CPU spikes (but it does that without having ever started qterminal, too, so I won't worry about it. My machine's test CPU is a pretty bad one - Intel Atom 1.8 GHs).
Hopefully that's not a general problem with Qt5 applications?
Mihai