git: kernel - sysref - Fix vnode interlock for 1->0 transition

看板DFBSD_commit作者時間16年前 (2010/02/12 05:01), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
commit e654922c869be2609aefdb087a028c991681b1fa Author: Matthew Dillon <dillon@apollo.backplane.com> Date: Thu Feb 11 12:38:10 2010 -0800 kernel - sysref - Fix vnode interlock for 1->0 transition * When the vnode refcount drops to 0 vnode_terminate() is called. This function previously acquired the vx_lock() after the 1->0 transition. Instead integrate the acquisition of the vx_lock() into the 1->0 transition to close a small MP race. Summary of changes: sys/kern/kern_sysref.c | 4 +- sys/kern/vfs_lock.c | 120 +++++++++++++++++++++---------------------- sys/sys/sysref.h | 4 ++ sys/vfs/devfs/devfs_core.c | 19 +++++++- sys/vm/vm_map.c | 16 ++++++- 5 files changed, 99 insertions(+), 64 deletions(-) http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/e654922c869be2609aefdb087a028c991681b1fa -- DragonFly BSD source repository
文章代碼(AID): #1BT70LHc (DFBSD_commit)