summaryrefslogtreecommitdiffstats
path: root/libexec
diff options
context:
space:
mode:
authortjr <tjr@FreeBSD.org>2003-06-17 08:52:45 +0000
committertjr <tjr@FreeBSD.org>2003-06-17 08:52:45 +0000
commit35c71928a03800d369738a09947e6bcb26d29b1a (patch)
tree2f94c3b734394e185413381cd31727106309db45 /libexec
parentb73ccc7a1b62b75d6ab333fb0e8454d4f940cbda (diff)
downloadFreeBSD-src-35c71928a03800d369738a09947e6bcb26d29b1a.zip
FreeBSD-src-35c71928a03800d369738a09947e6bcb26d29b1a.tar.gz
MFp4: Fix two bugs causing possible deadlocks or panics, and one nit:
- Emulate lock draining (LK_DRAIN) in null_lock() to avoid deadlocks when the vnode is being recycled. - Don't allow null_nodeget() to return a nullfs vnode from the wrong mount when multiple nullfs's are mounted. It's unclear why these checks were removed in null_subr.c 1.35, but they are definitely necessary. Without the checks, trying to unmount a nullfs mount will erroneously return EBUSY, and forcibly unmounting with -f will cause a panic. - Bump LOG2_SIZEVNODE up to 8, since vnodes are >256 bytes now. The old value (7) didn't cause any problems, but made the hash algorithm suboptimal. These changes fix nullfs enough that a parallel buildworld succeeds. Submitted by: tegge (partially; LK_DRAIN) Tested by: kris
Diffstat (limited to 'libexec')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud