freebsd-skq/sys/compat/svr4
kib abd1094f17 Fix misuse of the kernel map in miscellaneous image activators.
Vnode-backed mappings cannot be put into the kernel map, since it is a
system map.

Use exec_map for transient mappings, and remove the mappings with
kmem_free_wakeup() to notify the waiters on available map space.

Do not map the whole executable into KVA at all to copy it out into
usermode.  Directly use vn_rdwr() for the case of not page aligned
binary.

There is one place left where the potentially unbounded amount of data
is mapped into exec_map, namely, in the COFF image activator
enumeration of the needed shared libraries.

Reviewed by:   alc
MFC after:     2 weeks
2012-02-17 23:47:16 +00:00
..
imgact_svr4.c Fix misuse of the kernel map in miscellaneous image activators. 2012-02-17 23:47:16 +00:00
Makefile
svr4_acl.h
svr4_dirent.h
svr4_errno.h
svr4_exec.h
svr4_fcntl.c Improve *access*() parameter name consistency. 2011-11-19 06:35:15 +00:00
svr4_fcntl.h
svr4_filio.c
svr4_filio.h
svr4_fuser.h
svr4_hrt.h
svr4_ioctl.c
svr4_ioctl.h
svr4_ipc.c
svr4_ipc.h
svr4_misc.c
svr4_mman.h
svr4_proto.h Regenerate system call tables. 2011-11-19 06:36:11 +00:00
svr4_resource.c
svr4_resource.h
svr4_siginfo.h
svr4_signal.c
svr4_signal.h
svr4_socket.c
svr4_socket.h
svr4_sockio.c
svr4_sockio.h
svr4_sockmod.h
svr4_stat.c
svr4_stat.h
svr4_statvfs.h
svr4_stream.c
svr4_stropts.h
svr4_syscall.h Regenerate system call tables. 2011-11-19 06:36:11 +00:00
svr4_syscallnames.c Regenerate system call tables. 2011-11-19 06:36:11 +00:00
svr4_sysconfig.h
svr4_sysent.c Regenerate system call tables. 2011-11-19 06:36:11 +00:00
svr4_systeminfo.h
svr4_sysvec.c
svr4_termios.c
svr4_termios.h
svr4_time.h
svr4_timod.h
svr4_types.h
svr4_ucontext.h
svr4_ulimit.h
svr4_ustat.h
svr4_util.h
svr4_utsname.h
svr4_wait.h
svr4.h
syscalls.conf
syscalls.master Improve *access*() parameter name consistency. 2011-11-19 06:35:15 +00:00