summaryrefslogtreecommitdiffstats
path: root/sys/vm/vm_mmap.c
diff options
context:
space:
mode:
authorps <ps@FreeBSD.org>2000-02-28 04:10:35 +0000
committerps <ps@FreeBSD.org>2000-02-28 04:10:35 +0000
commitc3800346ab46195181630945b2f40e1fee7853d0 (patch)
treec1fe153aebcc58e892bd5d2eea0b026feb20e562 /sys/vm/vm_mmap.c
parent1e4770cd942238b5157e2b25cd92594590c69b9d (diff)
downloadFreeBSD-src-c3800346ab46195181630945b2f40e1fee7853d0.zip
FreeBSD-src-c3800346ab46195181630945b2f40e1fee7853d0.tar.gz
Add MAP_NOCORE to mmap(2), and MADV_NOCORE and MADV_CORE to madvise(2).
This This feature allows you to specify if mmap'd data is included in an application's corefile. Change the type of eflags in struct vm_map_entry from u_char to vm_eflags_t (an unsigned int). Reviewed by: dillon,jdp,alfred Approved by: jkh
Diffstat (limited to 'sys/vm/vm_mmap.c')
-rw-r--r--sys/vm/vm_mmap.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/sys/vm/vm_mmap.c b/sys/vm/vm_mmap.c
index b42239c..53462f4 100644
--- a/sys/vm/vm_mmap.c
+++ b/sys/vm/vm_mmap.c
@@ -664,7 +664,7 @@ madvise(p, uap)
/*
* Check for illegal behavior
*/
- if (uap->behav < 0 || uap->behav > MADV_AUTOSYNC)
+ if (uap->behav < 0 || uap->behav > MADV_CORE)
return (EINVAL);
/*
* Check for illegal addresses. Watch out for address wrap... Note
@@ -1095,6 +1095,8 @@ vm_mmap(vm_map_t map, vm_offset_t *addr, vm_size_t size, vm_prot_t prot,
docow |= MAP_COPY_ON_WRITE;
if (flags & MAP_NOSYNC)
docow |= MAP_DISABLE_SYNCER;
+ if (flags & MAP_NOCORE)
+ docow |= MAP_DISABLE_COREDUMP;
#if defined(VM_PROT_READ_IS_EXEC)
if (prot & VM_PROT_READ)
OpenPOWER on IntegriCloud