[<prev] [next>] [day] [month] [year] [list]
Message-ID: <20090401104846.GI27084@kryten>
Date: Wed, 1 Apr 2009 21:48:46 +1100
From: Anton Blanchard <anton@...ba.org>
To: linux-kernel@...r.kernel.org
Cc: arjan@...radead.org, akpm@...l.org
Subject: [PATCH] Align vmstat_work
Even though vmstat_work is marked deferrable, there are still benefits to
aligning it. For certain applications we want to keep OS jitter as low as
possible and aligning timers and work so they occur together can reduce their
overall impact.
Signed-off-by: Anton Blanchard <anton@...ba.org>
---
diff --git a/mm/vmstat.c b/mm/vmstat.c
index 9114974..493c89d 100644
--- a/mm/vmstat.c
+++ b/mm/vmstat.c
@@ -898,7 +898,7 @@ static void vmstat_update(struct work_struct *w)
{
refresh_cpu_vm_stats(smp_processor_id());
schedule_delayed_work(&__get_cpu_var(vmstat_work),
- sysctl_stat_interval);
+ round_jiffies_relative(sysctl_stat_interval));
}
static void __cpuinit start_cpu_timer(int cpu)
@@ -906,7 +906,8 @@ static void __cpuinit start_cpu_timer(int cpu)
struct delayed_work *vmstat_work = &per_cpu(vmstat_work, cpu);
INIT_DELAYED_WORK_DEFERRABLE(vmstat_work, vmstat_update);
- schedule_delayed_work_on(cpu, vmstat_work, HZ + cpu);
+ schedule_delayed_work_on(cpu, vmstat_work,
+ __round_jiffies_relative(HZ, cpu));
}
/*
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists