Hi, all, I like simple fixes, so is this acceptable (based on an early version from Koichiro Den)? --- mm/vmstat.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/mm/vmstat.c b/mm/vmstat.c index 0889b75cef14..1badc24a21ff 100644 --- a/mm/vmstat.c +++ b/mm/vmstat.c @@ -2122,10 +2122,15 @@ static void __init start_shepherd_timer(void) { int cpu; - for_each_possible_cpu(cpu) + for_each_possible_cpu(cpu) { INIT_DEFERRABLE_WORK(per_cpu_ptr(&vmstat_work, cpu), vmstat_update); + /* Will be enabled on vmstat_cpu_online() */ + if (!cpu_online(cpu)) + disable_delayed_work_sync(&per_cpu(vmstat_work, cpu)); + } + schedule_delayed_work(&shepherd, round_jiffies_relative(sysctl_stat_interval)); } -- 2.43.5