aboutsummaryrefslogtreecommitdiff
path: root/fs/jbd2/commit.c
diff options
context:
space:
mode:
authorChao Yu <[email protected]>2015-07-16 18:19:02 +0800
committerJaegeuk Kim <[email protected]>2015-08-05 08:08:09 -0700
commit55f57d2c4259a9a4048cf4629a2c6ba53729188d (patch)
tree00308a663bd758c81f7c9bcc90d66b8dc7f52f0d /fs/jbd2/commit.c
parentecbaa4068f88f96a8ffde37d532e618508394b53 (diff)
f2fs: fix double lock in handle_failed_inode
In handle_failed_inode, there is a potential deadlock which can happen in below call path: - f2fs_create - f2fs_lock_op down_read(cp_rwsem) - f2fs_add_link - __f2fs_add_link - init_inode_metadata - f2fs_init_security failed - truncate_blocks failed - handle_failed_inode - f2fs_truncate - truncate_blocks(..,true) - write_checkpoint - block_operations - f2fs_lock_all down_write(cp_rwsem) - f2fs_lock_op down_read(cp_rwsem) So in this path, we pass parameter to f2fs_truncate to make sure cp_rwsem in truncate_blocks will not be locked again. Signed-off-by: Chao Yu <[email protected]> Signed-off-by: Jaegeuk Kim <[email protected]>
Diffstat (limited to 'fs/jbd2/commit.c')
0 files changed, 0 insertions, 0 deletions