Module Name: src Committed By: reinoud Date: Tue Dec 20 15:39:36 UTC 2011
Modified Files: src/lib/libc/sys: mmap.2 src/sys/sys: mman.h proc.h src/sys/uvm: uvm_extern.h uvm_map.c uvm_mmap.c Log Message: Add a MAP_NOSYSCALLS flag to mmap. This flag prohibits executing of system calls from the mapped region. This can be used for emulation perposed or for extra security in the case of generated code. Its implemented by adding mapping-attributes to each uvm_map_entry. These can then be queried when needed. Currently the MAP_NOSYSCALLS is only implemented for x86 but other architectures are easy to adapt; see the sys/arch/x86/x86/syscall.c patch. Port maintainers are encouraged to add them for their processor ports too. When this feature is not yet implemented for an architecture the MAP_NOSYSCALLS is simply ignored with virtually no cpu cost.. To generate a diff of this commit: cvs rdiff -u -r1.44 -r1.45 src/lib/libc/sys/mmap.2 cvs rdiff -u -r1.42 -r1.43 src/sys/sys/mman.h cvs rdiff -u -r1.311 -r1.312 src/sys/sys/proc.h cvs rdiff -u -r1.176 -r1.177 src/sys/uvm/uvm_extern.h cvs rdiff -u -r1.307 -r1.308 src/sys/uvm/uvm_map.c cvs rdiff -u -r1.139 -r1.140 src/sys/uvm/uvm_mmap.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.