git: kernel -- vm_object locking Part 1: Primitives

看板DFBSD_commit作者時間15年前 (2011/03/04 15:32), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
commit e1c14c82961b940b20c922f9eda5ad5af13848a4 Author: Venkatesh Srinivas <me@endeavour.zapto.org> Date: Thu Mar 3 23:07:47 2011 -0800 kernel -- vm_object locking Part 1: Primitives * Create per-vm_object 'hold count'; the hold count ensures that a vm_object is not deallocated or collapsed till it transitions 1->0. Hold count is waited for in vm_object_terminate and _collapse. * Convert vm_object_lock/_unlock to use pool tokens; pool tokens do not share storage with the vm_object, simplifying lifetime. Cleanups: * Remove first attempts at vm_object locking; it just wasn't clear what each token was protecting earlier. * Eliminate vestigial fields from vm_object structure. * Clean vm_object_pip_wakeup (just call _wakeupn) * Remove vm_page_(un)lock for now Discussed-with: dillon@ Summary of changes: sys/vm/vm_kern.c | 2 - sys/vm/vm_map.c | 2 - sys/vm/vm_object.c | 89 ++++++++++++++++++++++++++++++++++++++-------------- sys/vm/vm_object.h | 25 +++++---------- sys/vm/vm_page.c | 13 ------- sys/vm/vm_page.h | 2 - 6 files changed, 73 insertions(+), 60 deletions(-) http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/e1c14c82961b940b20c922f9eda5ad5af13848a4 -- DragonFly BSD source repository
文章代碼(AID): #1DS9Lu7R (DFBSD_commit)