On which mailling list was this change discussed? Joerg
On Tue, Dec 20, 2011 at 03:39:36PM +0000, Reinoud Zandijk wrote: > 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. >