Re: [PATCH] Print which shared library/executable faulted in segfaultetc. messages v3

From: Jan Engelhardt
Date: Thu Jan 17 2008 - 13:52:46 EST



On Jan 17 2008 00:15, Andi Kleen wrote:
>
>The previously posted version was missing all the 64bit hunks. Fix
>that. Please use over previous version.
>
>They now look like
>
>hal-resmgr[13791]: segfault at 3c rip 2b9c8caec182 rsp 7fff1e825d30
>error 4 in libacl.so.1.1.0[2b9c8caea000+6000]

Can this also be done for executables?

>This makes it easier to pinpoint bugs to specific libraries.

[But it may very well mean improper usage (e.g. passing NULL where
NULL is definitely not expected) on behalf of the library user ;-)]

>And printing the offset into a mapping also always allows to find
>the correct fault point in a library even with randomized mappings.
>Previously there was no way to actually find the correct code
>address inside the randomized mapping.

Previously, one had to ptrace the process, wait for the crash to
happen, then inspect /proc/XXX/maps and calculate the address. It's
not like developers were left in the dark with random mappings.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/