Recursive nullfs mounts and r224655

Kostik Belousov kostikbel at
Sat Aug 6 14:43:29 UTC 2011

On Sat, Aug 06, 2011 at 04:44:25AM -0400, b. f. wrote:
> Recent changes to the kernel (sys/kern/vfs_mount.c, in r224655?)
> between r224550 and r224655 have broken my tinderbox setup.  It had a
> tmpfs filesystem mounted at /T and a UFS filesystem mounted at /U,
> and, when setting up the tinderbox, performed:
> mkdir /U/u1
> mkdir /U/u2
> mkdir /T/t1
> mount -t nullfs /T/t1 /U/u1
> mkdir-p /U/u1/u3/u4
> mount -t nullfs /U/u2 /U/u1/u3/u4
> ...
> This worked at r224550 and before.  It now fails at the second nullfs
> mount, with ENOENT("mount_nullfs: No such file or directory").
r224615 and r224655 must be reverted.

The reason for your trouble is that nullfs cannot cache any vnodes,
thus reclaiming anything that get reference count of 0. This interacts
badly with VOP_VNTOCNP() which has to operate on the vnodes with
zero refcount, since we cannot decrement refcount under the namecache

Trying to update vptocnp(9) interface is too intrusive change for freeze
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 196 bytes
Desc: not available
Url :

More information about the freebsd-current mailing list