aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorAndreas Gruenbacher <agruenba@redhat.com>2025-02-04 13:16:03 +0100
committerAndreas Gruenbacher <agruenba@redhat.com>2025-03-10 18:15:38 +0100
commitf83f897614ab4036e76d34f389aee685f6ddb61c (patch)
tree393afc51f41a7fbf927ed2b508897d0f434c24de
parentgfs2: Add GLF_PENDING_REPLY flag (diff)
downloadwireguard-linux-f83f897614ab4036e76d34f389aee685f6ddb61c.tar.xz
wireguard-linux-f83f897614ab4036e76d34f389aee685f6ddb61c.zip
gfs2: glock holder GL_NOPID fix
Glocks are always actively acquired by processes, but as indicated by the GL_NOPID holder flag, some of them are then associated with objects like cached inodes rather than the process that acquired them. As such, for those glock holders, it makes little sense to dump which processes originally acquired them. Therefore, gfs2 is trying to hide the identity of the processes that acquired those glocks. The code for doing that is incorrect though, so fix it. Signed-off-by: Andreas Gruenbacher <agruenba@redhat.com>
-rw-r--r--fs/gfs2/glock.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/fs/gfs2/glock.c b/fs/gfs2/glock.c
index f6cf5cb8c022..d6e2ca69663e 100644
--- a/fs/gfs2/glock.c
+++ b/fs/gfs2/glock.c
@@ -1464,9 +1464,7 @@ static inline bool pid_is_meaningful(const struct gfs2_holder *gh)
{
if (!(gh->gh_flags & GL_NOPID))
return true;
- if (gh->gh_state == LM_ST_UNLOCKED)
- return true;
- return false;
+ return !test_bit(HIF_HOLDER, &gh->gh_iflags);
}
/**