xfce4-session crash
Benedikt Meurer
benedikt.meurer at unix-ag.uni-siegen.de
Tue Jun 22 19:44:14 CEST 2004
Brian J. Tarricone wrote:
>>Ok, finally, thanks to Jens, we found the cause for the problem on Linux.
>>Linux sends SIGPIPE "randomly" instead of just telling me that the socket peer
>>disconnected, for which the default action is "Terminate current process".
>>Problem should be finally fixed now, please verify.
>
> it occurs to me.... if this is occurring asynchronously, not much you
> can do aside from your fix. but if it's happening on a send() or recv()
> on the socket, passing MSG_NOSIGNAL in the 'flags' parameter will also
> cause this behaviour to stop. that may just be for send(), i think,
> actually. of course, just ignoring sigpipe entirely is much easier ^_~.
>
> (you might also be able to use ioctl() or fcntl() on the socket
> descriptor to disable this; i don't recall offhand.)
MSG_NOSIGNAL (and most probably the other ways you describe as well) are linux
extensions, so non-standard and useless, since the send() is done in libX11
and libICE. The problem is that SIGPIPE should not have been raised at all in
the simple xterm stress test since the xterms should either don't
start/connect at all due to resource shortage or connect and disconnect
correctly (the sm receives an error and closes the socket w/o negotiating).
All in all very easy and 100% reproducible for me on BSD and Solaris, no
SIGPIPE, no other weird behaviour. So, take this as my personal rant on Linux
for its stupidity and all the headcaches it caused hunting non-existing
software-bugs in 100% working software, where the problem was solely caused by
Linux and/or other broken GNU software (I'd also like to mention GNU/Hurd here
for its stupid philosophy on practical programming). Thanks for your interest
in this rant.
best regards,
Benedikt
--
NetBSD Operating system: http://www.NetBSD.org/
pkgsrc "Work in progress": http://pkgsrc-wip.sf.net/
XFce desktop environment: http://www.xfce.org/
German Unix-AG Association: http://www.unix-ag.org/
os-cillation: http://www.os-cillation.de/
OpenPGP Key: http://www.home.unix-ag.org/bmeurer/#gpg
More information about the Xfce4-dev
mailing list