diff options
author | Andreas Gruenbacher <agruenba@redhat.com> | 2020-11-30 16:07:25 +0100 |
---|---|---|
committer | Andreas Gruenbacher <agruenba@redhat.com> | 2020-12-01 00:21:10 +0100 |
commit | dd0ecf544125639e54056d851e4887dbb94b6d2f (patch) | |
tree | ccf085761b50314f2c65aa68e1af0db5c4ac07d6 /fs/f2fs | |
parent | 82e938bd5382b322ce81e6cb8fd030987f2da022 (diff) |
gfs2: Fix deadlock between gfs2_{create_inode,inode_lookup} and delete_work_func
In gfs2_create_inode and gfs2_inode_lookup, make sure to cancel any pending
delete work before taking the inode glock. Otherwise, gfs2_cancel_delete_work
may block waiting for delete_work_func to complete, and delete_work_func may
block trying to acquire the inode glock in gfs2_inode_lookup.
Reported-by: Alexander Aring <aahringo@redhat.com>
Fixes: a0e3cc65fa29 ("gfs2: Turn gl_delete into a delayed work")
Cc: stable@vger.kernel.org # v5.8+
Signed-off-by: Andreas Gruenbacher <agruenba@redhat.com>
Diffstat (limited to 'fs/f2fs')
0 files changed, 0 insertions, 0 deletions