I built an X server with this patch and tested it. However, apport does not seem to be called at all. The X.org log says "re-raising 11", and in strace I see:
7363 --- SIGSEGV (Segmentation fault) @ 0 (0) --- 7363 rt_sigaction(SIGSEGV, {SIG_IGN}, {0x80b4ce0, [SEGV], SA_RESTART}, 8) = 0 [...] 7363 write(2, " ddxSigGiveUp: re-raising 11\n", 29) = 29 7363 tgkill(7363, 7363, SIGSEGV) = 0 7363 exit_group(1) = ? This looks a little weird, since tgkill() expects a "thread id". I am not actually sure what this means, and whether it is actually identical to the process ID. If I do strace -f sh -c 'kill -SEGV $$' I get kill(7022, SIGSEGV) = 0 --- SIGSEGV (Segmentation fault) @ 0 (0) --- +++ killed by SIGSEGV (core dumped) +++ NB the "core dumped", which I do *not* see for the X process. (and thus apport is never called). raise(3) indicates that in a multi-threaded program, raise() is not equivalent to kill(), but to pthread_kill(pthread_self(), sig); I guess this eventually leads to calling tgkill(). So at this point I'm lost. It might be a kernel bug that it doesn't dump core for tgkill(), or something weird about signal handling in multi- threaded programs which I don't understand. -- Xorg crashes do not work with apport https://bugs.launchpad.net/bugs/226668 You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs