freebsd-nq/sys/isofs/cd9660
Adrian Chadd f3a90da995 Reviewed by: jlemon
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.
2001-03-01 21:00:17 +00:00
..
cd9660_bmap.c $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
cd9660_lookup.c Make cd9660 filesystem PDIRUNLOCK aware. Now it can be used in vnode stacks 2000-10-03 04:39:50 +00:00
cd9660_mount.h Add $FreeBSD$ 2000-05-01 20:32:07 +00:00
cd9660_node.c Change and clean the mutex lock interface. 2001-02-09 06:11:45 +00:00
cd9660_node.h Make cd9660 filesystem PDIRUNLOCK aware. Now it can be used in vnode stacks 2000-10-03 04:39:50 +00:00
cd9660_rrip.c Separate the struct bio related stuff out of <sys/buf.h> into 2000-05-05 09:59:14 +00:00
cd9660_rrip.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
cd9660_util.c Add a hook for loading of a Unicode -> char conversion routine as a kld at a 2001-02-13 11:48:31 +00:00
cd9660_vfsops.c Reviewed by: jlemon 2001-03-01 21:00:17 +00:00
cd9660_vnops.c o Restructure vaccess() so as to check for DAC permission to modify the 2000-08-29 14:45:49 +00:00
iso_rrip.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
iso.h Fix memory leakage on module unload. 2000-06-29 01:19:12 +00:00
TODO $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
TODO.hibler Fix typo: seperate -> separate. 2001-02-06 11:21:58 +00:00