freebsd-skq/sys
dillon be3db49c80 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 MFi386 revisions 1.375 and 1.376 2002-12-14 22:25:35 +00:00
amd64 Add the trm(4) driver. 2002-12-16 18:47:37 +00:00
arm Add standards visibility conditionals. Change any uses of sigset_t to 2002-10-13 00:31:46 +00:00
boot Remove unneeded casts. Add others to make WARNS=5 happy. 2002-12-15 02:15:19 +00:00
cam The HP DAT 40 tape drive should be able to handle variable block sizes. 2002-12-16 17:40:17 +00:00
coda Back our kernel support for reliable signal queues. 2002-10-01 17:15:53 +00:00
compat Regen: swapoff 2002-12-16 00:49:36 +00:00
conf Move the amd(4) driver to it's own directory in preparation for it growing 2002-12-13 22:59:18 +00:00
contrib Resolve conflicts arising from the ACPI CA 20021118 import. 2002-11-27 18:09:20 +00:00
crypto Make this compilable from userland as well. 2002-11-01 08:56:39 +00:00
ddb - Rename the DDB specific %z printf format to %y. 2002-10-25 19:41:32 +00:00
dev Ignore IEEE1284 descriptors when looking for bidirectional mode. We don't 2002-12-16 14:22:59 +00:00
fs Remove redundant check for negative or zero v_usecount; vrele() already 2002-12-15 04:32:41 +00:00
geom Add a couple of KASSERTS, just in case. 2002-12-13 22:04:45 +00:00
gnu MFufs 1.33: 2002-10-18 21:41:41 +00:00
i4b network interface and link layer changes: 2002-11-15 00:00:15 +00:00
i386 Add the trm(4) driver. 2002-12-16 18:47:37 +00:00
ia64 Regen: swapoff 2002-12-16 00:49:36 +00:00
isa Use the correct value when writing the Day Of Week byte in the CMOS. 2002-12-04 13:46:49 +00:00
isofs/cd9660 Unbreak MNT_UPDATE when running with cd as root. Detect mountroot by 2002-11-02 20:16:55 +00:00
kern Change the way ELF coredumps are handled. Instead of unconditionally 2002-12-16 19:24:43 +00:00
libkern Fix instances of macros with improperly parenthasized arguments. 2002-11-09 12:55:07 +00:00
modules libmchain no longer exports m_fixhdr(); remove it from EXPORT_SYMS. 2002-12-14 00:01:51 +00:00
net MFS: recognize gre packets used in the WCCP protocol. 2002-12-07 14:22:05 +00:00
netatalk Add more ethernet types and move AppleTalk types into proper location. 2002-09-06 17:02:29 +00:00
netatm - Change the ATM stack functions to use intptr_t instead of int for opaque 2002-11-08 18:27:30 +00:00
netgraph Fix two bugs: 2002-12-14 00:56:07 +00:00
netinet o Trim EOL whitespaces. 2002-12-15 10:24:36 +00:00
netinet6 fixed a bug that IPv6 multicast packet is not forwarded if its packet size is equal to the outgoing interface's MTU 2002-12-16 01:41:07 +00:00
netipsec FAST_IPSEC fixups: 2002-11-08 23:37:50 +00:00
netipx Fix a sizeof(int) != sizeof(void *) warning. 2002-11-08 21:16:27 +00:00
netkey
netnatm Be consistent about functions being static. 2002-10-16 09:19:17 +00:00
netncp - Change mb_copy_t to take a size_t as the length argument instead of an 2002-11-08 21:26:32 +00:00
netns Use m_length() instead of home-rolled versions. 2002-09-18 19:44:14 +00:00
netsmb Remove the hto(be|le)[slq] and (be|le)toh[slq] macros defined in 2002-12-16 16:20:06 +00:00
nfs Change iov_base's type from char *' to the standard void *'. All 2002-10-11 14:58:34 +00:00
nfsclient reapply 1.26 through 1.28. 2002-11-20 15:21:06 +00:00
nfsserver In the NFSv3 `fsinfo' procedure reply, don't claim that we support 2002-12-05 16:58:11 +00:00
opencrypto correct minor # in make_dev call 2002-11-08 23:07:41 +00:00
pc98 unifdef -DPC98 -U__alpha__ 2002-12-15 22:15:20 +00:00
pccard MFp4: 2002-11-27 06:04:49 +00:00
pci Move the amd(4) driver to it's own directory in preparation for it growing 2002-12-13 22:59:18 +00:00
posix4 Rework the sysconf(3) interaction with aio: 2002-11-17 04:15:34 +00:00
powerpc Unbreak the KSE code. Keep track of zobie threads using the Per-CPU storage 2002-12-10 02:33:45 +00:00
rpc
security SCARGS removal take II. 2002-12-14 01:56:26 +00:00
sparc64 Unbreak the KSE code. Keep track of zobie threads using the Per-CPU storage 2002-12-10 02:33:45 +00:00
sys Remove the hto(be|le)[slq] and (be|le)toh[slq] macros defined in 2002-12-16 16:20:06 +00:00
tools - Move ASSERT_VOP_*LOCK* functionality into functions in vfs_subr.c 2002-09-26 04:48:44 +00:00
ufs Update to previous change (1.54) to use an approperly wide inode field 2002-12-15 19:25:59 +00:00
vm Change the way ELF coredumps are handled. Instead of unconditionally 2002-12-16 19:24:43 +00:00
Makefile