Re: [PATCH 5/4] x86/mm: Further simplify 1 GB kernel linear mappings handling

Jan Beulich
2015-03-05T08:05:56Z

>>> On 05.03.15 at 08:23, <mingo@kernel.org> wrote:

> It's a bit pointless to allow Kconfig configuration for 1GB kernel
> mappings, it's already hidden behind a 'default y' and CONFIG_EXPERT.
>
> Remove this complication and simplify the code by renaming
> CONFIG_ENABLE_DIRECT_GBPAGES to CONFIG_X86_DIRECT_GBPAGES and
> document the DEBUG_PAGE_ALLOC and KMEMCHECK quirks.
>
> Cc: Luis R. Rodriguez <mcgrof@suse.com>
> Cc: Andrew Morton <akpm@linux-foundation.org>
> Cc: Andy Lutomirski <luto@amacapital.net>
> Cc: Borislav Petkov <bp@alien8.de>
> Cc: Borislav Petkov <bp@suse.de>
> Cc: Dave Hansen <dave.hansen@linux.intel.com>
> Cc: David Vrabel <david.vrabel@citrix.com>
> Cc: Dexuan Cui <decui@microsoft.com>
> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> Cc: H. Peter Anvin <hpa@zytor.com>
> Cc: JBeulich@suse.com
> Cc: Jan Beulich <JBeulich@suse.com>
> Cc: Joonsoo Kim <iamjoonsoo.kim@lge.com>
> Cc: Juergen Gross <jgross@suse.com>
> Cc: Linus Torvalds <torvalds@linux-foundation.org>
> Cc: Pavel Machek <pavel@ucw.cz>
> Cc: Thomas Gleixner <tglx@linutronix.de>
> Cc: Tony Lindgren <tony@atomide.com>
> Cc: Toshi Kani <toshi.kani@hp.com>
> Cc: Vlastimil Babka <vbabka@suse.cz>
> Cc: Xishi Qiu <qiuxishi@huawei.com>
> Cc: julia.lawall@lip6.fr
> Signed-off-by: Ingo Molnar <mingo@kernel.org>
> ---
> arch/x86/Kconfig | 23 +++++++----------------
> arch/x86/mm/init.c | 7 +------
> 2 files changed, 8 insertions(+), 22 deletions(-)
>
> diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
> index 4d06e1c8294a..54d528a37ff4 100644
> --- a/arch/x86/Kconfig
> +++ b/arch/x86/Kconfig
> @@ -1299,22 +1299,13 @@ config ARCH_DMA_ADDR_T_64BIT
> def_bool y
> depends on X86_64 || HIGHMEM64G
>
> -config ENABLE_DIRECT_GBPAGES
> - def_bool y
> - depends on X86_64 && !DEBUG_PAGEALLOC && !KMEMCHECK
> -
> -config DIRECT_GBPAGES
> - bool "Enable 1GB pages for kernel pagetables" if EXPERT
> - default y
> - depends on ENABLE_DIRECT_GBPAGES
> - ---help---
> - Enable by default the kernel linear mapping to use 1GB pages on CPUs
> - that support it. This can improve the kernel's performance a tiny bit
> - by reducing TLB pressure. If in doubt, say "Y". If you've disabled
> - option but your platform is capable of handling support for this
> - you can use the gbpages kernel parameter. Likewise if you've enabled
> - this but you'd like to force disable this option you can use the
> - nogbpages kernel parameter.
> +config X86_DIRECT_GBPAGES
> + def_bool (X86_64 && !DEBUG_PAGEALLOC && !KMEMCHECK)

config X86_DIRECT_GBPAGES
def_bool y
depends on X86_64 && !DEBUG_PAGEALLOC && !KMEMCHECK

or else it'll leave a pointless

# CONFIG_X86_DIRECT_GBPAGES is not set

in .config-s where the dependencies are not met.

Jan