]> Zhao Yanbai Git Server - minix.git/commit
vfs: mmap support 43/543/15
authorBen Gras <ben@minix3.org>
Tue, 7 May 2013 12:41:07 +0000 (12:41 +0000)
committerBen Gras <ben@minix3.org>
Fri, 31 May 2013 15:42:00 +0000 (15:42 +0000)
commit33a7ac7557f90652c7a96ae97d911ef129677240
treee49ec703681968d09bf468a549b6004c54e6dba3
parent924eb295652b85c25209f2461e3574cd6c433753
vfs: mmap support

. libc: add vfs_mmap, a way for vfs to initiate mmap()s.
  This is a good special case to have as vfs is a slightly
  different client from regular user processes. It doesn't do it
  for itself, and has the dev & inode info already so the callback
  to VFS for the lookup isn't necessary. So it has different info
  to have to give to VM.
. libc: also add minix_mmap64() that accepts a 64-bit offset, even
  though our off_t is still 32 bit now.
. On exec() time, try to mmap() in the executable if available.
  (It is not yet available in this commit.)
. To support mmap(), add do_vm_call that allows VM to lookup
  (to ino+dev), do i/o from and close FD's on behalf of other
  processes.

Change-Id: I831551e45a6781c74313c450eb9c967a68505932
19 files changed:
commands/service/parse.c
etc/system.conf
include/minix/callnr.h
include/minix/com.h
include/minix/vm.h
lib/libc/sys-minix/mmap.c
lib/libexec/exec_elf.c
servers/pm/table.c
servers/vfs/coredump.c
servers/vfs/exec.c
servers/vfs/filedes.c
servers/vfs/misc.c
servers/vfs/open.c
servers/vfs/pipe.c
servers/vfs/proto.h
servers/vfs/read.c
servers/vfs/table.c
servers/vfs/utility.c
sys/sys/mman.h