Subject: Segmentation fault in nxagent

From: Orion Poplawski <[email-masked]>
Date: Sun, 12 Oct 2014 08:13:25 -0600

Package: nx-libs
Version: 3.5.0.27

Saw this crash on attempted resume of session:

Oct 10 16:52:30 kolea systemd-logind: New session 1452 of user leka.
Oct 10 16:52:30 kolea systemd: Starting Session 1452 of user leka.
Oct 10 16:52:30 kolea systemd: Started Session 1452 of user leka.
Oct 10 16:52:32 kolea /usr/bin/x2goresume-session: x2goresume-session 
called with options: leka-50-1412399182_stDKDE_dp24 800x600 adsl 
16m-jpeg-9 us pc105/us 1
Oct 10 16:52:33 kolea /usr/bin/x2gofeature: x2gofeature called with 
options: X2GO_RUN_EXTENSIONS
Oct 10 16:52:33 kolea 
/usr/share/x2go/x2gofeature.d/x2goserver-extensions.features: 
x2goserver-extensions.features called with options: X2GO_RUN_EXTENSIONS
Oct 10 16:52:33 kolea /usr/bin/x2goserver-run-extensions: 
x2goserver-run-extensions called with options: 
leka-50-1412399182_stDKDE_dp24 pre-resume
Oct 10 16:52:34 kolea su: (to leka) root on none
Oct 10 16:52:34 kolea systemd: Starting Session c51 of user leka.
Oct 10 16:52:34 kolea systemd: Started Session c51 of user leka.
Oct 10 16:52:34 kolea /usr/bin/x2goresume-session: client 10.10.10.1 has 
successfully resumed session with ID leka-50-1412399182_stDKDE_dp24
Oct 10 16:52:34 kolea su: (to leka) root on none
Oct 10 16:52:34 kolea systemd: Starting Session c52 of user leka.
Oct 10 16:52:34 kolea systemd: Started Session c52 of user leka.
Oct 10 16:52:34 kolea /usr/bin/x2gofeature: x2gofeature called with 
options: X2GO_DESKTOPSHARING
Oct 10 16:52:35 kolea 
/usr/share/x2go/x2gofeature.d/x2goserver-extensions.features: 
x2goserver-extensions.features called with options: X2GO_DESKTOPSHARING
Oct 10 16:52:35 kolea /usr/bin/x2gosuspend-session: x2gosuspend-session 
called with options: leka-50-1412399182_stDKDE_dp24
Oct 10 16:52:35 kolea /usr/share/x2go/x2gofeature.d/x2goserver.features: 
x2goserver.features called with options: X2GO_DESKTOPSHARING
Oct 10 16:52:35 kolea 
/usr/share/x2go/x2gofeature.d/x2goserver-fmbindings.features: 
x2goserver-fmbindings.features called with options: X2GO_DESKTOPSHARING
Oct 10 16:52:35 kolea 
/usr/share/x2go/x2gofeature.d/x2goserver-xsession.features: 
x2goserver-xsession.features called with options: X2GO_DESKTOPSHARING
Oct 10 16:52:35 kolea /usr/bin/x2gofeature: x2gofeature called with 
options: X2GO_RUN_EXTENSIONS
Oct 10 16:52:35 kolea 
/usr/share/x2go/x2gofeature.d/x2goserver-extensions.features: 
x2goserver-extensions.features called with options: X2GO_RUN_EXTENSIONS
Oct 10 16:52:36 kolea /usr/bin/x2gofeature: x2gofeature called with 
options: X2GO_DESKTOPSHARING
Oct 10 16:52:36 kolea /usr/bin/x2goserver-run-extensions: 
x2goserver-run-extensions called with options: 
leka-50-1412399182_stDKDE_dp24 post-resume
Oct 10 16:52:36 kolea 
/usr/share/x2go/x2gofeature.d/x2goserver-extensions.features: 
x2goserver-extensions.features called with options: X2GO_DESKTOPSHARING
Oct 10 16:52:36 kolea /usr/share/x2go/x2gofeature.d/x2goserver.features: 
x2goserver.features called with options: X2GO_DESKTOPSHARING
Oct 10 16:52:36 kolea 
/usr/share/x2go/x2gofeature.d/x2goserver-fmbindings.features: 
x2goserver-fmbindings.features called with options: X2GO_DESKTOPSHARING
Oct 10 16:52:36 kolea 
/usr/share/x2go/x2gofeature.d/x2goserver-xsession.features: 
x2goserver-xsession.features called with options: X2GO_DESKTOPSHARING
Oct 10 16:52:36 kolea /usr/bin/x2gofeature: x2gofeature called with 
options: X2GO_RUN_EXTENSIONS
Oct 10 16:52:36 kolea 
/usr/share/x2go/x2gofeature.d/x2goserver-extensions.features: 
x2goserver-extensions.features called with options: X2GO_RUN_EXTENSIONS
Oct 10 16:52:36 kolea /usr/bin/x2goserver-run-extensions: 
x2goserver-run-extensions called with options: 
leka-50-1412399182_stDKDE_dp24 pre-suspend
Oct 10 16:52:36 kolea /usr/bin/x2goumount-session[25504]: 
x2goumount-session has been called with options: 
leka-50-1412399182_stDKDE_dp24
Oct 10 16:52:37 kolea /usr/bin/x2gosuspend-session: session with ID 
leka-50-1412399182_stDKDE_dp24 has been suspended successfully
Oct 10 16:52:37 kolea /usr/bin/x2gofeature: x2gofeature called with 
options: X2GO_RUN_EXTENSIONS
Oct 10 16:52:37 kolea 
/usr/share/x2go/x2gofeature.d/x2goserver-extensions.features: 
x2goserver-extensions.features called with options: X2GO_RUN_EXTENSIONS
Oct 10 16:52:37 kolea /usr/bin/x2goserver-run-extensions: 
x2goserver-run-extensions called with options: 
leka-50-1412399182_stDKDE_dp24 post-suspend
Oct 10 16:52:38 kolea kernel: [628115.748811] x2goagent[4472]: segfault 
at 0 ip 00007fbb3daa9e6d sp 00007ffffe069638 error 4 in 
libc-2.18.so[7fbb3da16000+1b4000]
Oct 10 16:52:38 kolea kernel: x2goagent[4472]: segfault at 0 ip 
00007fbb3daa9e6d sp 00007ffffe069638 error 4 in 
libc-2.18.so[7fbb3da16000+1b4000]

Looks like we're trying to write out a null pointer:

Core was generated by `/usr/lib64/nx/../x2go/bin/x2goagent -extension 
XFIXES -nolisten tcp -nolisten t'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  0x00007fbb3daa9e6d in __memcpy_sse2_unaligned () from /lib64/libc.so.6
Missing separate debuginfos, use: debuginfo-install 
glibc-2.18-16.fc20.x86_64 libX11-1.6.1-1.fc20.x86_64 
libXau-1.0.8-2.fc20.x86_64 libXcursor-devel-1.1.14-2.fc20.x86_64 
libXfixes-5.0.1-2.fc20.x86_64 libXrender-0.9.8-2.fc20.x86_64 
libgcc-4.8.3-7.fc20.x86_64 libjpeg-turbo-1.3.1-2.fc20.x86_64 
libpng-1.6.6-3.fc20.x86_64 libstdc++-4.8.3-7.fc20.x86_64 
libxcb-1.9.1-3.fc20.x86_64 libxml2-2.9.1-2.fc20.x86_64 
sssd-client-1.11.7-2.fc20.x86_64 xz-libs-5.1.2-12alpha.fc20.x86_64 
zlib-1.2.8-3.fc20.x86_64
(gdb) bt
#0  0x00007fbb3daa9e6d in __memcpy_sse2_unaligned () from /lib64/libc.so.6
#1  0x00007fbb3d3261d0 in std::basic_streambuf<char, 
std::char_traits<char> >::xsputn(char const*, long) () from 
/lib64/libstdc++.so.6
#2  0x00007fbb3d31c9f2 in std::ostream::write(char const*, long) () from 
/lib64/libstdc++.so.6
#3  0x00007fbb3f5ddb23 in PutData (fs=fs@entry=0x346e780, 
buffer=<optimized out>, size=size@entry=16) at Misc.cpp:633
#4  0x00007fbb3f5fa3e2 in MessageStore::saveStore (this=0x6bd7b00, 
cachefs=cachefs@entry=0x346e780, 
md5StateStream=md5StateStream@entry=0x52d2740,
     md5StateClient=md5StateClient@entry=0x774c1e0, 
checksumAction=checksumAction@entry=use_checksum, 
dataAction=dataAction@entry=discard_data, bigEndian=0)
     at Message.cpp:1782
#5  0x00007fbb3f601422 in ClientStore::saveRequestStores 
(this=0x15fc000, cachefs=cachefs@entry=0x346e780, 
md5StateStream=md5StateStream@entry=0x52d2740,
     md5StateClient=md5StateClient@entry=0x774c1e0, 
checksumAction=checksumAction@entry=use_checksum, 
dataAction=dataAction@entry=discard_data) at ClientStore.cpp:166
#6  0x00007fbb3f5ff108 in ClientProxy::handleSaveAllStores 
(this=0x2fffd30, cachefs=0x346e780, md5StateStream=0x52d2740, 
md5StateClient=0x774c1e0)
     at ClientProxy.cpp:500
#7  0x00007fbb3f5f07bc in Proxy::handleSaveAllStores 
(this=this@entry=0x2fffd30, savePath=<optimized out>) at Proxy.cpp:5193
#8  0x00007fbb3f5f0d4f in Proxy::handleSaveStores 
(this=this@entry=0x2fffd30) at Proxy.cpp:4232
#9  0x00007fbb3f5ffafc in ClientProxy::handleSave (this=0x2fffd30) at 
ClientProxy.cpp:412
#10 0x00007fbb3f5ce653 in NXTransExecute (resultFDs=0x7ffffe069b7c, 
errorFDs=<optimized out>, setFDs=<optimized out>, 
readSet=0x7ffffe069b90, writeSet=0x7ffffe069c10,
     selectTs=<optimized out>) at Loop.cpp:14818
#11 0x00007fbb3f5d7d5a in NXTransContinue 
(selectTs=selectTs@entry=0x7ffffe069ce0) at Loop.cpp:1650
#12 0x00007fbb3f5d7ebd in WaitCleanup () at Loop.cpp:4729
#13 NXTransDestroy (fd=fd@entry=-1) at Loop.cpp:1581
#14 0x000000000048e8f7 in nxagentWaitDisplay () at Display.c:2767
#15 0x00000000004b8249 in nxagentDisconnectSession () at Reconnect.c:362
#16 0x00000000004b8a8c in nxagentHandleConnectionChanges () at 
Reconnect.c:820
#17 0x00000000004b8c60 in nxagentHandleConnectionStates () at 
Reconnect.c:218
#18 0x000000000049b905 in nxagentWakeupHandler (data=<optimized out>, 
count=-1, mask=0xacb760 <LastSelectMask>) at Handlers.c:589
#19 0x000000000046a33b in WakeupHandler (result=result@entry=-1, 
pReadmask=pReadmask@entry=0xacb760 <LastSelectMask>) at dixutils.c:472
#20 0x0000000000473ca2 in WaitForSomething 
(pClientsReady=pClientsReady@entry=0x7ffffe06a040) at WaitFor.c:389
#21 0x0000000000445c1a in Dispatch () at X/NXdispatch.c:619
#22 0x0000000000429455 in main (argc=15, argv=0x7ffffe06a668, 
envp=<optimized out>) at main.c:450
(gdb) up 3
#3  0x00007fbb3f5ddb23 in PutData (fs=fs@entry=0x346e780, 
buffer=<optimized out>, size=size@entry=16) at Misc.cpp:633
633       fs -> write((char *) buffer, size);
(gdb) up
#4  0x00007fbb3f5fa3e2 in MessageStore::saveStore (this=0x6bd7b00, 
cachefs=cachefs@entry=0x346e780, 
md5StateStream=md5StateStream@entry=0x52d2740,
     md5StateClient=md5StateClient@entry=0x774c1e0, 
checksumAction=checksumAction@entry=use_checksum, 
dataAction=dataAction@entry=discard_data, bigEndian=0)
     at Message.cpp:1782
1782            if (PutData(cachefs, message -> md5_digest_, MD5_LENGTH) 
< 0)
(gdb) print message
$1 = (Message *) 0x367a5b0
(gdb) print message->md5_digest
There is no member or method named md5_digest.
(gdb) print message->md5_digest_
$2 = (md5_byte_t *) 0x0

-- 
Orion Poplawski
Technical Manager                     303-415-9701 x222
NWRA/CoRA Division                    FAX: 303-415-9702
3380 Mitchell Lane                  [email-masked]
Boulder, CO 80301              http://www.cora.nwra.com