Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754176AbaGKPTs (ORCPT ); Fri, 11 Jul 2014 11:19:48 -0400 Received: from mail-wi0-f181.google.com ([209.85.212.181]:64542 "EHLO mail-wi0-f181.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753150AbaGKPTr (ORCPT ); Fri, 11 Jul 2014 11:19:47 -0400 Date: Fri, 11 Jul 2014 17:19:37 +0200 From: Frederic Weisbecker To: Christoph Lameter Cc: akpm@linux-foundation.org, Gilad Ben-Yossef , Thomas Gleixner , Tejun Heo , John Stultz , Mike Frysinger , Minchan Kim , Hakan Akkan , Max Krasnyansky , "Paul E. McKenney" , linux-kernel@vger.kernel.org, linux-mm@kvack.org, hughd@google.com, viresh.kumar@linaro.org, hpa@zytor.com, mingo@kernel.org, peterz@infradead.org Subject: Re: vmstat: On demand vmstat workers V8 Message-ID: <20140711151935.GE26045@localhost.localdomain> References: <20140711132032.GB26045@localhost.localdomain> <20140711135854.GD26045@localhost.localdomain> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Jul 11, 2014 at 10:17:41AM -0500, Christoph Lameter wrote: > 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 Thanks :) Maybe just merge both? The whole looks good. > > 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@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/