freebsd-dev/libexec/rtld-elf
Matthew Dillon fa7dd9c5bc Change the way ELF coredumps are handled. Instead of unconditionally
skipping read-only pages, which can result in valuable non-text-related
data not getting dumped, the ELF loader and the dynamic loader now mark
read-only text pages NOCORE and the coredump code only checks (primarily) for
complete inaccessibility of the page or NOCORE being set.

Certain applications which map large amounts of read-only data will
produce much larger cores.  A new sysctl has been added,
debug.elf_legacy_coredump, which will revert to the old behavior.

This commit represents collaborative work by all parties involved.
The PR contains a program demonstrating the problem.

PR:		kern/45994
Submitted by:	"Peter Edwards" <pmedwards@eircom.net>, Archie Cobbs <archie@dellroad.org>
Reviewed by:	jdp, dillon
MFC after:	7 days
2002-12-16 19:24:43 +00:00
..
alpha Fix the handling of high PLT entries (> 32764) on sparc64. This requires 2002-11-18 22:08:50 +00:00
amd64 Fix the handling of high PLT entries (> 32764) on sparc64. This requires 2002-11-18 22:08:50 +00:00
i386 Fix the handling of high PLT entries (> 32764) on sparc64. This requires 2002-11-18 22:08:50 +00:00
ia64 Fix the handling of high PLT entries (> 32764) on sparc64. This requires 2002-11-18 22:08:50 +00:00
powerpc rtld support for PowerPC. Mostly obtained from NetBSD, with mods 2002-12-04 07:32:20 +00:00
sparc64 Fix rtld to handle SPARC_R_UA{16,64} relocations correctly. 2002-12-05 16:58:31 +00:00
debug.c $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
debug.h Use STD{ERR,IN,OUT}_FILENO instead of their numeric values. The 2001-07-26 11:02:39 +00:00
Makefile Dillon's recent commits to the dynamic linker without running them 2002-06-10 21:51:16 +00:00
malloc.c Include stddef.h for NULL definition, rather than rolling our own here. 2002-08-21 19:03:26 +00:00
map_object.c Change the way ELF coredumps are handled. Instead of unconditionally 2002-12-16 19:24:43 +00:00
rtld.1 Uniformly refer to a file system as "file system". 2002-12-12 17:26:04 +00:00
rtld.c Put back a test for binaries with no PT_LOAD entries I over-jealosly 2002-11-29 16:41:31 +00:00
rtld.h Update rtld for the "new" ia64 ABI. In the old toolchain, the 2001-10-29 10:10:10 +00:00
xmalloc.c $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00