git: DragonFly_RELEASE_4_6 kernel - Fix namecache race & panic
Matthew Dillon
dillon at crater.dragonflybsd.org
Tue Jul 26 17:21:43 PDT 2016
commit 4d65990f79d76e7e9b8ddea86f04d8a19549527a
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date: Tue Jul 26 13:01:27 2016 -0700
kernel - Fix namecache race & panic
* Properly lock and re-check the parent association when iterating its
children, fixing a bug in a code path associated with unmounting
filesystems.
The code improperly assumed that there could be no races because there
are were no accessors left. In fact, under heavy loads, the namecache
scan in this routine can race against the negative-name-cache management
code.
* Generally speaking can only happen when lots of mounts and unmounts are
done under heavy loads (for example, tmpfs mounts during a poudriere or
synth run).
Summary of changes:
sys/kern/vfs_cache.c | 80 +++++++++++++++++++++++++++++++++++++++++---------
sys/kern/vfs_nlookup.c | 7 +++--
2 files changed, 71 insertions(+), 16 deletions(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/4d65990f79d76e7e9b8ddea86f04d8a19549527a
--
DragonFly BSD source repository
More information about the Commits
mailing list