tmpfs - Fix minor deadlock, refactor tn_links
authorMatthew Dillon <dillon@apollo.backplane.com>
Wed, 4 Mar 2020 17:10:37 +0000 (09:10 -0800)
committerMatthew Dillon <dillon@apollo.backplane.com>
Wed, 4 Mar 2020 17:10:37 +0000 (09:10 -0800)
commit4d22d8eea66a458433415da5cfe2e4b3b50f63a9
tree43db459742b8824398297a8fa39d206e9ea529b3
parenta9f40f57fdf396515f52a3739cba5e3bde80362e
tmpfs - Fix minor deadlock, refactor tn_links

* Fix a minor deadlock.  tmpfs_alloc_vp() can rarely race a vnode
  and leave a dangling lock, causing a later umount to deadlock.

* Refactor tn_links to use atomic ops, mainly to clean-up an
  almost impossible race that can happen at umount time.
sys/vfs/tmpfs/tmpfs.h
sys/vfs/tmpfs/tmpfs_subr.c
sys/vfs/tmpfs/tmpfs_vfsops.c