4018955334
An initial tidyup of the mount() syscall and VFS mount code. This code replaces the earlier work done by jlemon in an attempt to make linux_mount() work. * the guts of the mount work has been moved into vfs_mount(). * move `type', `path' and `flags' from being userland variables into being kernel variables in vfs_mount(). `data' remains a pointer into userspace. * Attempt to verify the `type' and `path' strings passed to vfs_mount() aren't too long. * rework mount() and linux_mount() to take the userland parameters (besides data, as mentioned) and pass kernel variables to vfs_mount(). (linux_mount() already did this, I've just tidied it up a little more.) * remove the copyin*() stuff for `path'. `data' still requires copyin*() since its a pointer into userland. * set `mount->mnt_statf_mntonname' in vfs_mount() rather than in each filesystem. This variable is generally initialised with `path', and each filesystem can override it if they want to. * NOTE: f_mntonname is intiailised with "/" in the case of a root mount. |
||
---|---|---|
.. | ||
COPYRIGHT.INFO | ||
ext2_alloc.c | ||
ext2_balloc.c | ||
ext2_bmap.c | ||
ext2_extern.h | ||
ext2_fs_sb.h | ||
ext2_fs.h | ||
ext2_inode_cnv.c | ||
ext2_inode.c | ||
ext2_linux_balloc.c | ||
ext2_linux_ialloc.c | ||
ext2_lookup.c | ||
ext2_mount.h | ||
ext2_readwrite.c | ||
ext2_subr.c | ||
ext2_vfsops.c | ||
ext2_vnops.c | ||
fs.h | ||
i386-bitops.h | ||
inode.h |