Skip to content

Commit e93b31d

Browse files
Zhao Mengmengbrauner
authored andcommitted
writeback: use round_jiffies_relative for dirtytime_work
The dirtytime_work is a background housekeeping task that flushes dirty inodes, using round_jiffies_relative() will allow kernel to batch this work with other aligned system tasks, reducing power consumption. Signed-off-by: Zhao Mengmeng <zhaomengmeng@kylinos.cn> Link: https://patch.msgid.link/20260113082614.231580-1-zhaomzhao@126.com Reviewed-by: Jan Kara <jack@suse.cz> Signed-off-by: Christian Brauner <brauner@kernel.org>
1 parent 561940a commit e93b31d

1 file changed

Lines changed: 4 additions & 2 deletions

File tree

fs/fs-writeback.c

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2493,7 +2493,8 @@ static void wakeup_dirtytime_writeback(struct work_struct *w)
24932493
}
24942494
rcu_read_unlock();
24952495
if (dirtytime_expire_interval)
2496-
schedule_delayed_work(&dirtytime_work, dirtytime_expire_interval * HZ);
2496+
schedule_delayed_work(&dirtytime_work,
2497+
round_jiffies_relative(dirtytime_expire_interval * HZ));
24972498
}
24982499

24992500
static int dirtytime_interval_handler(const struct ctl_table *table, int write,
@@ -2525,7 +2526,8 @@ static const struct ctl_table vm_fs_writeback_table[] = {
25252526
static int __init start_dirtytime_writeback(void)
25262527
{
25272528
if (dirtytime_expire_interval)
2528-
schedule_delayed_work(&dirtytime_work, dirtytime_expire_interval * HZ);
2529+
schedule_delayed_work(&dirtytime_work,
2530+
round_jiffies_relative(dirtytime_expire_interval * HZ));
25292531
register_sysctl_init("vm", vm_fs_writeback_table);
25302532
return 0;
25312533
}

0 commit comments

Comments
 (0)