NULL VFS: store PFS mount points for later use
authorFrancois Tigeot <ftigeot@wolfpond.org>
Wed, 24 Aug 2011 20:00:28 +0000 (22:00 +0200)
committerFrançois Tigeot <ftigeot@wolfpond.org>
Wed, 14 Dec 2011 13:14:30 +0000 (14:14 +0100)
commitf423d507245621c25de023241e139e13540633ce
tree80da8c99770d39b8963a0145a1cffd49586d0ac3
parent77ef6007a392b6e3a1be00d8a05acccbf10137d9
NULL VFS: store PFS mount points for later use

* This is a hack to obtain the pfs mount point in vop_write()

* PFSes use nullfs mounts. Unfortunately, the nullfs implementation
  does not respect the traditional vfs/vnode layers and its vnodes
  may belong to many mount point at once.

* What's worse, the mount point passed to VFS functions is the one
  of the underlying non-PFS filesystem.

* We use the namecache layer to put the upper mount point of the
  PFS in a new vnode field to work around this limitation.
sys/kern/vfs_cache.c
sys/kern/vfs_vopops.c
sys/sys/vnode.h