git: kernel - Rename desiredvnodes to maxvnodes, fix deadlock
Matthew Dillon
dillon at crater.dragonflybsd.org
Sun Oct 16 14:23:11 PDT 2016
commit 9629eb3587b2cd563eccbd1eab0984b652f5dad5
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date: Sun Oct 16 14:13:39 2016 -0700
kernel - Rename desiredvnodes to maxvnodes, fix deadlock
* Rename the kernel variable 'desiredvnodes' to 'maxvnodes' to match
the sysctl name (which has always been 'maxvnodes'), and to make the
code more readable.
* Probable fix to a rare mount/umount deadlock which can occur in two
situations (1) When a large number of mounts and unmounts are running
concurrently, and (2) During a umount -a, shutdown, or reboot.
* Considered minor, normal use cases will not reproduce this bug. Only
synth or poudriere can generate the mount/umount traffic necessary to
reproduce this bug.
* Also fixes a minor kernel memory leak of the mount structure which can
occur when a 'df' or filesystem sync races a umount. Also minor.
Reported-by: marino (mount race)
Summary of changes:
sys/gnu/vfs/ext2fs/ext2_ihash.c | 2 +-
sys/gnu/vfs/ext2fs/ext2_quota.c | 6 ++++--
sys/kern/vfs_cache.c | 6 +++---
sys/kern/vfs_lock.c | 8 ++++----
sys/kern/vfs_mount.c | 33 ++++++++++++++++++++++++++++-----
sys/kern/vfs_subr.c | 24 +++++++++++++++---------
sys/kern/vfs_syscalls.c | 6 +++---
sys/sys/mount.h | 3 +++
sys/sys/vnode.h | 2 +-
sys/vfs/hammer/hammer_vfsops.c | 2 +-
sys/vfs/hammer2/hammer2_vfsops.c | 2 +-
sys/vfs/hpfs/hpfs_hash.c | 4 ++--
sys/vfs/isofs/cd9660/cd9660_node.c | 2 +-
sys/vfs/msdosfs/msdosfs_denode.c | 7 ++++---
sys/vfs/nfs/nfs_node.c | 2 +-
sys/vfs/ntfs/ntfs_ihash.c | 2 +-
sys/vfs/smbfs/smbfs_vfsops.c | 2 +-
sys/vfs/ufs/ffs_softdep.c | 7 +++----
sys/vfs/ufs/ufs_ihash.c | 5 +++--
sys/vfs/ufs/ufs_quota.c | 7 +++++--
usr.bin/systat/systat.1 | 2 +-
usr.bin/systat/vmstat.c | 6 +++---
22 files changed, 89 insertions(+), 51 deletions(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/9629eb3587b2cd563eccbd1eab0984b652f5dad5
--
DragonFly BSD source repository
More information about the Commits
mailing list