This is a note to let you know that I've just added the patch titled gfs2: Partially revert gfs2_inode_lookup change to the 6.1-stable tree which can be found at: http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary The filename of the patch is: gfs2-partially-revert-gfs2_inode_lookup-change.patch and it can be found in the queue-6.1 subdirectory. If you, or anyone else, feels it should not be added to the stable tree, please let <stable@xxxxxxxxxxxxxxx> know about it. commit c9f01ef5218d567db41ff743acfc630ca8644dee Author: Andreas Gruenbacher <agruenba@xxxxxxxxxx> Date: Mon Dec 5 22:27:28 2022 +0100 gfs2: Partially revert gfs2_inode_lookup change [ Upstream commit 88f4a9f813c549f6b8a6fbf12030949b48a4d5a4 ] Commit c412a97cf6c5 changed delete_work_func() to always perform an inode lookup when gfs2_try_evict() fails. This doesn't make sense as a gfs2_try_evict() failure indicates that the inode is likely still in use. Revert that change. Fixes: c412a97cf6c5 ("gfs2: Use TRY lock in gfs2_inode_lookup for UNLINKED inodes") Signed-off-by: Andreas Gruenbacher <agruenba@xxxxxxxxxx> Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx> diff --git a/fs/gfs2/glock.c b/fs/gfs2/glock.c index df335c258eb0..235a0948f6cc 100644 --- a/fs/gfs2/glock.c +++ b/fs/gfs2/glock.c @@ -1039,6 +1039,7 @@ static void delete_work_func(struct work_struct *work) if (gfs2_queue_delete_work(gl, 5 * HZ)) return; } + goto out; } inode = gfs2_lookup_by_inum(sdp, no_addr, gl->gl_no_formal_ino, @@ -1051,6 +1052,7 @@ static void delete_work_func(struct work_struct *work) d_prune_aliases(inode); iput(inode); } +out: gfs2_glock_put(gl); }