Re: [PATCH tip/core/rcu 8/9] nohz_full: Add full-system-idle state machine

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat, Sep 07, 2013 at 11:13:48AM +0200, Yann E. MORIN wrote:
> Paul, All,
> 
> On 2013-09-06 10:30 -0700, Paul E. McKenney spake thusly:
> [--SNIP--]
> > I also tried using Kconfig "if":
> > 
> > if SMP
> > config NR_CPUS_REALLY
> > 	int "Fixed version of NR_CPUS"
> > 	default NR_CPUS
> > endif
> > if !SMP
> > config NR_CPUS_REALLY
> > 	int "Fixed version of NR_CPUS"
> > 	default 1 if !SMP
> 
> The 'if !SMP' here is unneeded, you're already in a 'if !SMP' if-block.

Agreed, though I get the same result even without the !SMP.

> > endif
> > 
> > However, Kconfig complained about the use of NR_CPUS even though this
> > was under an "if" whose condition was not set.  Perhaps someone with
> > better Kconfig-fu than I have can come up with something.
> 
> That's because the 'if' condition is added to the dependency list of the
> symbol(s) that is(are) enclosed in the if.
> 
> 'if' in Kconfig behaves the same way as an 'if' in C. What you expected
> (I believe) was the behaviour of '#ifdef', which is not the case. From
> Documentation/kbuild/kconfig-language.txt:
> 
>     ---8<---
>     if:
> 
>             "if" <expr>
>             <if block>
>             "endif"
> 
>     This defines an if block. The dependency expression <expr> is appended
>     to all enclosed menu entries.
>     ---8<---

OK, I did read this, but misunderstood it.

> There's no equivlaent to '#ifdef' in Kconfig.
> 
> I'll see if I can come up with a meaningfull construct that fixes your
> use-case. Don't hold your breath, though! ;-)

If not, we need to add NR_CPUS to the architectures lacking them...

								Thanx, Paul

--
To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux&nblp;USB Development]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite Secrets]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux