Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753355Ab3DZOCT (ORCPT ); Fri, 26 Apr 2013 10:02:19 -0400 Received: from mail-la0-f47.google.com ([209.85.215.47]:45594 "EHLO mail-la0-f47.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750709Ab3DZOCS (ORCPT ); Fri, 26 Apr 2013 10:02:18 -0400 MIME-Version: 1.0 In-Reply-To: References: <20130425134101.GA16609@gmail.com> Date: Fri, 26 Apr 2013 16:02:16 +0200 Message-ID: Subject: Re: Kconfig doesn't support select on choices (was Re: [GIT PULL] nohz: Adaptively stop the tick, finally) From: Frederic Weisbecker To: Ingo Molnar Cc: Michal Marek , LKML , Chris Metcalf , Christoph Lameter , Geoff Levand , Gilad Ben Yossef , Hakan Akkan , Kevin Hilman , Li Zhong , Oleg Nesterov , "Paul E. McKenney" , Paul Gortmaker , Peter Zijlstra , Steven Rostedt , Thomas Gleixner , Stephane Eranian , Jiri Olsa Content-Type: text/plain; charset=ISO-8859-1 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2184 Lines: 51 2013/4/25 Frederic Weisbecker : > 2013/4/25 Ingo Molnar : >> >> * Frederic Weisbecker wrote: >> >>> 2013/4/25 Ingo Molnar : >>> > >>> > * Frederic Weisbecker wrote: >>> > >>> >> > depends on VIRT_CPU_ACCOUNTING_GEN >>> >> > >>> >> > It should _really_ select both the RCU and the CPU time accounting model >>> >> > automatically! >>> >> >>> >> Yeah I know. I have yet to fix that in Kconfig (it's a Kconfig limitation). >>> > >>> > Why cannot we simply select it and its dependencies, explicitly, for the >>> > time being? Something like: >>> > >>> > depends on 64BIT >>> > select VIRT_CPU_ACCOUNTING >>> > select VIRT_CPU_ACCOUNTING_GEN >>> > >>> > 90% of the .config's have VIRT_CPU_ACCOUNTING_GEN turned off, because it's >>> > a default-off feature - so dynticks-full is effectively hidden from the >>> > large majority of testers... >>> >>> Whatever we do, it seems that select does not work with choices. >>> >>> Michal, we are running into an issue where a Kconfig option needs to >>> select CONFIG_VIRT_CPU_ACCOUNTING_GEN but this latter option is part of >>> a choice menu so it doesn't work. As a result we are forced to use a >>> "depends on" and this hides the high level option we are interested in >>> (here full dynticks) behind its low level dependency. How hard do you >>> think it would be to fix this? I tried something that worked half-way >>> but I quickly got lost in the Kconfig maze. >> >> While it's not an ideal solution, we could try to create three bools out >> of the choice options, as a workaround? > > I thought about that yeah, at least for a temporary solution. Let's > try it, I'll see what I can get. Oh wait, looking at how rcu manages its flavour choices against SMP and PREEMPT, I think I can inspire from it. I have the patch ready, just making some tests to be sure. -- 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/