aboutsummaryrefslogtreecommitdiffstats
path: root/fs/fs-writeback.c
diff options
context:
space:
mode:
authorJan Kara <jack@suse.cz>2025-09-12 12:38:38 +0200
committerChristian Brauner <brauner@kernel.org>2025-09-19 13:11:06 +0200
commit0cee64c547e3c9cda646af3e075a64f445ee8148 (patch)
tree8ef299818292d567a88da80cf69905a7956a9712 /fs/fs-writeback.c
parentwriteback: Avoid excessively long inode switching times (diff)
downloadlinux-0cee64c547e3c9cda646af3e075a64f445ee8148.tar.gz
linux-0cee64c547e3c9cda646af3e075a64f445ee8148.zip
writeback: Add tracepoint to track pending inode switches
Add trace_inode_switch_wbs_queue tracepoint to allow insight into how many inodes are queued to switch their bdi_writeback structure. Acked-by: Tejun Heo <tj@kernel.org> Signed-off-by: Jan Kara <jack@suse.cz> Signed-off-by: Christian Brauner <brauner@kernel.org>
Diffstat (limited to 'fs/fs-writeback.c')
-rw-r--r--fs/fs-writeback.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/fs-writeback.c b/fs/fs-writeback.c
index af5f396449f1..52129267e3bd 100644
--- a/fs/fs-writeback.c
+++ b/fs/fs-writeback.c
@@ -667,6 +667,7 @@ static void inode_switch_wbs(struct inode *inode, int new_wb_id)
isw->inodes[0] = inode;
+ trace_inode_switch_wbs_queue(inode->i_wb, new_wb, 1);
wb_queue_isw(new_wb, isw);
return;
@@ -752,6 +753,7 @@ bool cleanup_offline_cgwb(struct bdi_writeback *wb)
return restart;
}
+ trace_inode_switch_wbs_queue(wb, new_wb, nr);
wb_queue_isw(new_wb, isw);
return restart;