summaryrefslogtreecommitdiff
path: root/fs/f2fs/data.c
diff options
context:
space:
mode:
authorJaegeuk Kim <jaegeuk@kernel.org>2019-12-03 15:53:16 -0800
committerJaegeuk Kim <jaegeuk@kernel.org>2019-12-10 16:03:55 -0800
commitbdf03299248916640a835a05d32841bb3d31912d (patch)
treeae48044fd4f26bacb39dd91a4949b40334f6a260 /fs/f2fs/data.c
parent47501f87c61ad2aa234add63e1ae231521dbc3f5 (diff)
downloadlwn-bdf03299248916640a835a05d32841bb3d31912d.tar.gz
lwn-bdf03299248916640a835a05d32841bb3d31912d.zip
f2fs: call f2fs_balance_fs outside of locked page
Otherwise, we can hit deadlock by waiting for the locked page in move_data_block in GC. Thread A Thread B - do_page_mkwrite - f2fs_vm_page_mkwrite - lock_page - f2fs_balance_fs - mutex_lock(gc_mutex) - f2fs_gc - do_garbage_collect - ra_data_block - grab_cache_page - f2fs_balance_fs - mutex_lock(gc_mutex) Fixes: 39a8695824510 ("f2fs: refactor ->page_mkwrite() flow") Reviewed-by: Chao Yu <yuchao0@huawei.com> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
Diffstat (limited to 'fs/f2fs/data.c')
0 files changed, 0 insertions, 0 deletions