From: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
To: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"Ingo Molnar" <mingo@elte.hu>,
laijs@cn.fujitsu.com, dipankar@in.ibm.com,
"Andrew Morton" <akpm@linux-foundation.org>,
"Mathieu Desnoyers" <mathieu.desnoyers@polymtl.ca>,
josh@joshtriplett.org, niv@us.ibm.com,
"Thomas Gleixner" <tglx@linutronix.de>,
"Peter Zijlstra" <peterz@infradead.org>,
"Steven Rostedt" <rostedt@goodmis.org>,
"David Howells" <dhowells@redhat.com>,
edumazet@google.com, darren@dvhart.com,
"Frédéric Weisbecker" <fweisbec@gmail.com>,
sbw@mit.edu, Linux-Arch <linux-arch@vger.kernel.org>,
linux-kbuild <linux-kbuild@vger.kernel.org>
Subject: Re: [PATCH tip/core/rcu 8/9] nohz_full: Add full-system-idle state machine
Date: Fri, 6 Sep 2013 12:32:05 -0700 [thread overview]
Message-ID: <20130906193205.GW3966@linux.vnet.ibm.com> (raw)
In-Reply-To: <CAMuHMdVS4jGFOuysknJ_4BcdWRrYU=7KVfO8o_gxf-pVg=5gKA@mail.gmail.com>
On Fri, Sep 06, 2013 at 08:50:41PM +0200, Geert Uytterhoeven wrote:
> On Fri, Sep 6, 2013 at 7:30 PM, Paul E. McKenney
> <paulmck@linux.vnet.ibm.com> wrote:
> >> Furthermore, it seems only hexagon, metag, mips, and x86 set NR_CPUS to 1
> >> if !SMP. On other architectures, NR_CPUS is not defined and presumed to be 0.
> >
> > Would it make sense to require that NR_CPUS=1 for !SMP?
>
> Yes, this looks reasonable to me.
>
> > I tried creating a NR_CPUS_REALLY as follows:
> >
> > config NR_CPUS_REALLY
> > int "Fixed version of NR_CPUS"
> > default NR_CPUS if NR_CPUS
> > default 1 if !NR_CPUS
> >
> > But this still gave a warning on the first "default" even though it
> > was not in effect. I also tried using Kconfig "if":
>
> IIRC, it tries to use the first default first, so the below may work
> (the "if SMP" is probably not needed):
>
> config NR_CPUS_REALLY
> int "Fixed version of NR_CPUS"
> default 1 if !SMP
> default NR_CPUS if SMP
Seemed like a good idea, but I still get:
make O=/tmp/e ARCH=m68k defconfig
GEN /tmp/e/Makefile
*** Default configuration is based on 'multi_defconfig'
kernel/time/Kconfig:140:warning: 'NR_CPUS_REALLY': number is invalid
#
# configuration written to .config
#
Diff below in case I messed something up.
> > Defining NR_CPUS=1 if !SMP is looking pretty good to me just now.
> > This would probably have other benefits -- I cannot be the only
> > person who ever wanted this. ;-)
>
> Sure. I just didn't want to create patches for all architectures without
> having a discussion first.
>
> And it would be nice if it cuould be done in a central place, without
> touching all architectures.
Agreed, should it prove possible. ;-)
Thanx, Paul
------------------------------------------------------------------------
diff --git a/kernel/time/Kconfig b/kernel/time/Kconfig
index 3381f09..cb7a932 100644
--- a/kernel/time/Kconfig
+++ b/kernel/time/Kconfig
@@ -134,6 +134,11 @@ config NO_HZ_FULL_ALL
Note the boot CPU will still be kept outside the range to
handle the timekeeping duty.
+config NR_CPUS_REALLY
+ int "Fixed version of NR_CPUS"
+ default 1 if !SMP
+ default NR_CPUS if SMP
+
config NO_HZ_FULL_SYSIDLE
bool "Detect full-system idle state for full dynticks system"
depends on NO_HZ_FULL
@@ -160,7 +165,7 @@ config NO_HZ_FULL_SYSIDLE
config NO_HZ_FULL_SYSIDLE_SMALL
int "Number of CPUs above which large-system approach is used"
depends on NO_HZ_FULL_SYSIDLE
- range 1 NR_CPUS
+ range 1 NR_CPUS_REALLY
default 8
help
The full-system idle detection mechanism takes a lazy approach
next prev parent reply other threads:[~2013-09-06 19:32 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-08-20 2:47 [PATCH tip/core/rcu 0/9] v2 sysidle changes for 3.12 Paul E. McKenney
2013-08-20 2:47 ` [PATCH tip/core/rcu 1/9] rcu: Eliminate unused APIs intended for adaptive ticks Paul E. McKenney
2013-08-20 2:47 ` [PATCH tip/core/rcu 2/9] nohz_full: Add testing information to documentation Paul E. McKenney
2013-08-20 2:47 ` [PATCH tip/core/rcu 3/9] nohz_full: Add Kconfig parameter for scalable detection of all-idle state Paul E. McKenney
2013-08-20 2:47 ` [PATCH tip/core/rcu 4/9] nohz_full: Add rcu_dyntick data " Paul E. McKenney
2013-08-20 2:47 ` [PATCH tip/core/rcu 5/9] nohz_full: Add per-CPU idle-state tracking Paul E. McKenney
2013-08-20 2:47 ` [PATCH tip/core/rcu 6/9] nohz_full: Add full-system idle states and variables Paul E. McKenney
2013-08-20 2:47 ` [PATCH tip/core/rcu 7/9] nohz_full: Add full-system-idle arguments to API Paul E. McKenney
2013-08-20 2:47 ` [PATCH tip/core/rcu 8/9] nohz_full: Add full-system-idle state machine Paul E. McKenney
2013-08-26 5:45 ` Lai Jiangshan
2013-08-26 16:24 ` Paul E. McKenney
2013-08-27 3:41 ` Lai Jiangshan
2013-08-31 21:20 ` Paul E. McKenney
2013-09-06 8:08 ` Geert Uytterhoeven
2013-09-06 17:30 ` Paul E. McKenney
2013-09-06 18:50 ` Geert Uytterhoeven
2013-09-06 19:32 ` Paul E. McKenney [this message]
2013-09-07 11:22 ` Geert Uytterhoeven
2013-09-07 18:59 ` Paul E. McKenney
2013-09-07 9:13 ` Yann E. MORIN
2013-09-07 18:57 ` Paul E. McKenney
2013-09-08 10:32 ` Yann E. MORIN
2013-09-08 10:46 ` Frederic Weisbecker
2013-08-20 2:47 ` [PATCH tip/core/rcu 9/9] nohz_full: Force RCU's grace-period kthreads onto timekeeping CPU Paul E. McKenney
-- strict thread matches above, loose matches on Subject: below --
2013-08-18 1:49 [PATCH tip/core/rcu 0/9] sysidle changes for v3.12 Paul E. McKenney
2013-08-18 1:49 ` [PATCH tip/core/rcu 1/9] rcu: Eliminate unused APIs intended for adaptive ticks Paul E. McKenney
2013-08-18 1:49 ` [PATCH tip/core/rcu 8/9] nohz_full: Add full-system-idle state machine Paul E. McKenney
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20130906193205.GW3966@linux.vnet.ibm.com \
--to=paulmck@linux.vnet.ibm.com \
--cc=akpm@linux-foundation.org \
--cc=darren@dvhart.com \
--cc=dhowells@redhat.com \
--cc=dipankar@in.ibm.com \
--cc=edumazet@google.com \
--cc=fweisbec@gmail.com \
--cc=geert@linux-m68k.org \
--cc=josh@joshtriplett.org \
--cc=laijs@cn.fujitsu.com \
--cc=linux-arch@vger.kernel.org \
--cc=linux-kbuild@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mathieu.desnoyers@polymtl.ca \
--cc=mingo@elte.hu \
--cc=niv@us.ibm.com \
--cc=peterz@infradead.org \
--cc=rostedt@goodmis.org \
--cc=sbw@mit.edu \
--cc=tglx@linutronix.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.