git: tmpfs - remove most mp->mnt_token cases, kqueue filterops are MPSAFE
Matthew Dillon
dillon at crater.dragonflybsd.org
Wed Oct 23 00:34:34 PDT 2013
commit ff837cd5d97df9cfc8d66fc9ebc73557657d023e
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date: Wed Oct 23 00:32:16 2013 -0700
tmpfs - remove most mp->mnt_token cases, kqueue filterops are MPSAFE
* tmpfs's kqueue filterops are MPSAFE, set appropriate flag.
* tmpfs's vnops frontend universally obtained the tmpfs mnt_token, but
most of tmpfs's underlying code was already sub-locked by node.
Remove most mnt_token use cases and make the portions that were not
safe, safe. This was primarily the directory lookup and scanning
code and code to create, delete, and rename files.
* Should greatly improve tmpfs concurrency.
Summary of changes:
sys/vfs/tmpfs/tmpfs.h | 3 +-
sys/vfs/tmpfs/tmpfs_subr.c | 49 ++++-----
sys/vfs/tmpfs/tmpfs_vfsops.c | 16 ++-
sys/vfs/tmpfs/tmpfs_vnops.c | 232 ++++++++++++++++++-------------------------
4 files changed, 131 insertions(+), 169 deletions(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/ff837cd5d97df9cfc8d66fc9ebc73557657d023e
--
DragonFly BSD source repository
More information about the Commits
mailing list