This is the mail archive of the glibc-bugs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug libc/20853] raise in catch_segfault supresses kernel messages for segfaults under libSegFault.so in Linux


https://sourceware.org/bugzilla/show_bug.cgi?id=20853

--- Comment #4 from George J Carrette <gjc at alum dot mit.edu> ---
I dug into kernel sources a bit to explain the current behavior.

A test like this: bash -c 'kill -SEGV $$'
Ends up going through a codepath in kernel/signal.c
You can get a message from that using
sysctl kernel.print-fatal-signals=1
which is off by default and a bit verbose.

But the nice kernel segfault messages (and related messages)
come from the architecture-specific code  modules in the kernel
and you don't reach those code paths using the raise() (i.e. kill)
api.

So that explains why we want to avoid the call to raise() inside
the libSegFault.so if we want to be able to transparently
insert it via LD_PRELOAD without changing what info we
get in the kernel syslog.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]