On Sat, 2015-01-31 at 02:17 +0200, Kirill A. Shutemov wrote:
> We would want to use number of page table level to define mm_struct.
> Let's expose it as CONFIG_PGTABLE_LEVELS.
> 
> We need to define PGTABLE_LEVELS before sourcing init/Kconfig:
> arch/Kconfig will define default value and it's sourced from init/Kconfig.
> 
> Signed-off-by: Kirill A. Shutemov <kirill.shute...@linux.intel.com>
> Cc: Tony Luck <tony.l...@intel.com>
> Cc: Fenghua Yu <fenghua...@intel.com>
> ---
>  v2: fix default for IA64_PAGE_SIZE_64KB
> ---
>  arch/ia64/Kconfig                | 18 +++++-------------
>  arch/ia64/include/asm/page.h     |  4 ++--
>  arch/ia64/include/asm/pgalloc.h  |  4 ++--
>  arch/ia64/include/asm/pgtable.h  | 12 ++++++------
>  arch/ia64/kernel/ivt.S           | 12 ++++++------
>  arch/ia64/kernel/machine_kexec.c |  4 ++--
>  6 files changed, 23 insertions(+), 31 deletions(-)
> 
> diff --git a/arch/ia64/Kconfig b/arch/ia64/Kconfig
> index 074e52bf815c..4f9a6661491b 100644
> --- a/arch/ia64/Kconfig
> +++ b/arch/ia64/Kconfig
> @@ -1,3 +1,8 @@
> +config PGTABLE_LEVELS
> +     int "Page Table Levels" if !IA64_PAGE_SIZE_64KB
> +     range 3 4 if !IA64_PAGE_SIZE_64KB
> +     default 3
> +

Why didn't you choose to make this something like
    config PGTABLE_LEVELS
        int
        default 3 if PGTABLE_3
        default 4 if PGTABLE_4

>  source "init/Kconfig"
>  
>  source "kernel/Kconfig.freezer"
> @@ -286,19 +291,6 @@ config IA64_PAGE_SIZE_64KB
>  
>  endchoice
>  
> -choice
> -     prompt "Page Table Levels"
> -     default PGTABLE_3
> -
> -config PGTABLE_3
> -     bool "3 Levels"
> -
> -config PGTABLE_4
> -     depends on !IA64_PAGE_SIZE_64KB
> -     bool "4 Levels"
> -
> -endchoice
> -
>  if IA64_HP_SIM
>  config HZ
>       default 32

... and drop this hunk (ie, keep this choice as it is)? That would make
upgrading to a release that uses PGTABLE_LEVELS do the right thing
automagically, wouldn't it? As currently in the !IA64_PAGE_SIZE_64KB
case people need to reconfigure their "Page Table Levels".


Paul Bolle

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

Reply via email to