git: kernel - Attempt to workaround low memory deadlock

看板DFBSD_commit作者時間14年前 (2011/11/10 10:33), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
commit a639987cfd9a73c6bd718cb16c704e11d0e7ae42 Author: Matthew Dillon <dillon@apollo.backplane.com> Date: Fri Nov 4 10:52:33 2011 -0700 kernel - Attempt to workaround low memory deadlock * Mark the hammer flusher threads as system threads and call vm_wait_nominal() in the inode flush loop prior to acquiring an inode lock. * This attempts to work around an issue where the pageout daemon has to do a BMAP indirectly via vnode_pager_put_pages(), which requires a dive into hammer deep enough to need the inode lock. The pageout daemon checks the vnode lock but has no visibility into the inode lock. Only the hammer backend (theoretically) can acquire the inode lock without holding the vnode lock. Hopefully this will improve the issue. Reported-by: Antonio Huete Jimenez <tuxillo@quantumachine.net> Summary of changes: sys/vfs/hammer/hammer_flusher.c | 5 +++-- 1 files changed, 3 insertions(+), 2 deletions(-) http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/a639987cfd9a73c6bd718cb16c704e11d0e7ae42 -- DragonFly BSD source repository
文章代碼(AID): #1EkpVTwg (DFBSD_commit)