]> Zhao Yanbai Git Server - minix.git/commit
VFS: make m_in job local
authorThomas Veerman <thomas@minix3.org>
Fri, 13 Apr 2012 12:50:38 +0000 (12:50 +0000)
committerThomas Veerman <thomas@minix3.org>
Fri, 13 Apr 2012 12:50:38 +0000 (12:50 +0000)
commit8f5576761954ce92b44c15284309baf45a27a4d6
tree3e5ae1baf02bd36b72194ce68e7a1865e1c47eb1
parent99866db8cddf4f611d20ad17c9dd4b1b1bab394c
VFS: make m_in job local

By making m_in job local (i.e., each job has its own copy of m_in instead
of refering to the global m_in) we don't have to store and restore m_in
on every thread yield. This reduces overhead. Moreover, remove the
assumption that m_in is preserved. Do_XXX functions have to copy the
system call parameters as soon as possible and only pass those copies to
other functions.

Furthermore, this patch cleans up some code and uses better types in a lot
of places.
28 files changed:
servers/vfs/Makefile
servers/vfs/comm.c
servers/vfs/device.c
servers/vfs/dmap.c
servers/vfs/exec.c
servers/vfs/filedes.c
servers/vfs/fs.h
servers/vfs/fscall.c
servers/vfs/gcov.c
servers/vfs/glo.h
servers/vfs/link.c
servers/vfs/main.c
servers/vfs/misc.c
servers/vfs/mount.c
servers/vfs/open.c
servers/vfs/path.c
servers/vfs/pipe.c
servers/vfs/protect.c
servers/vfs/proto.h
servers/vfs/read.c
servers/vfs/request.c
servers/vfs/select.c
servers/vfs/stadir.c
servers/vfs/time.c
servers/vfs/utility.c
servers/vfs/vmnt.c
servers/vfs/vnode.c
servers/vfs/worker.c