summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeff Layton <jlayton@kernel.org>2026-04-28 10:09:45 +0300
committerChristian Brauner <brauner@kernel.org>2026-05-15 20:24:32 +0300
commit89330d3a60f7ddb9cf42873bb5249d6a736a0eab (patch)
treeda03804e46fb09943f973ad2b81a4d8c75890fda
parent254f49634ee16a731174d2ae34bc50bd5f45e731 (diff)
downloadlinux-89330d3a60f7ddb9cf42873bb5249d6a736a0eab.tar.xz
filelock: pass current blocking lease to trace_break_lease_block() rather than "new_fl"
The break_lease_block tracepoint currently just shows the type of "new_fl", which we can predict from the "flags" value. Switch it to display info about "fl" instead, as that's the file_lease on which the code is blocking. For trace_break_lease_unblock(), pass it a NULL pointer. "fl" may have been freed by that point, and passing it the info in new_fl is deceptive. Signed-off-by: Jeff Layton <jlayton@kernel.org> Link: https://patch.msgid.link/20260428-dir-deleg-v3-1-5a0780ba9def@kernel.org Acked-by: Chuck Lever <chuck.lever@oracle.com> Signed-off-by: Christian Brauner <brauner@kernel.org>
-rw-r--r--fs/locks.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/locks.c b/fs/locks.c
index fead53474c30..3306892900c4 100644
--- a/fs/locks.c
+++ b/fs/locks.c
@@ -1691,7 +1691,7 @@ restart:
} else
break_time++;
locks_insert_block(&fl->c, &new_fl->c, leases_conflict);
- trace_break_lease_block(inode, new_fl);
+ trace_break_lease_block(inode, fl);
spin_unlock(&ctx->flc_lock);
percpu_up_read(&file_rwsem);
@@ -1702,7 +1702,7 @@ restart:
percpu_down_read(&file_rwsem);
spin_lock(&ctx->flc_lock);
- trace_break_lease_unblock(inode, new_fl);
+ trace_break_lease_unblock(inode, NULL);
__locks_delete_block(&new_fl->c);
if (error >= 0) {
/*