Re: vmstat: On demand vmstat workers V8

From: Christoph Lameter
Date: Fri Jul 11 2014 - 11:17:49 EST


On Fri, 11 Jul 2014, Frederic Weisbecker wrote:

> > Converted what? We still need to keep a cpumask around that tells us which
> > processor have vmstat running and which do not.
> >
>
> Converted to cpumask_var_t.
>
> I mean we spent dozens emails on that...


Oh there is this outstanding fix, right.


Subject: on demand vmstat: Do not open code alloc_cpumask_var

Signed-off-by: Christoph Lameter <cl@xxxxxxxxx>

Index: linux/mm/vmstat.c
===================================================================
--- linux.orig/mm/vmstat.c 2014-07-11 10:15:55.356856916 -0500
+++ linux/mm/vmstat.c 2014-07-11 10:15:55.352856994 -0500
@@ -1244,7 +1244,7 @@
#ifdef CONFIG_SMP
static DEFINE_PER_CPU(struct delayed_work, vmstat_work);
int sysctl_stat_interval __read_mostly = HZ;
-struct cpumask *cpu_stat_off;
+cpumask_var_t cpu_stat_off;

static void vmstat_update(struct work_struct *w)
{
@@ -1338,7 +1338,8 @@
INIT_DEFERRABLE_WORK(per_cpu_ptr(&vmstat_work, cpu),
vmstat_update);

- cpu_stat_off = kmalloc(cpumask_size(), GFP_KERNEL);
+ if (!alloc_cpumask_var(&cpu_stat_off, GFP_KERNEL))
+ BUG();
cpumask_copy(cpu_stat_off, cpu_online_mask);

schedule_delayed_work(&shepherd,
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/