On Wed, 27 Jan 2016, Christian Borntraeger wrote: > We can use debug_pagealloc_enabled() to check if we can map > the identity mapping with 2MB pages. We can also add the state > into the dump_stack output. > > The patch does not touch the code for the 1GB pages, which ignored > CONFIG_DEBUG_PAGEALLOC. Do we need to fence this as well? > > Signed-off-by: Christian Borntraeger <borntraeger@xxxxxxxxxx> > Reviewed-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx> > --- > arch/x86/kernel/dumpstack.c | 5 ++--- > arch/x86/mm/init.c | 7 ++++--- > arch/x86/mm/pageattr.c | 14 ++++---------- > 3 files changed, 10 insertions(+), 16 deletions(-) > > diff --git a/arch/x86/kernel/dumpstack.c b/arch/x86/kernel/dumpstack.c > index 9c30acf..32e5699 100644 > --- a/arch/x86/kernel/dumpstack.c > +++ b/arch/x86/kernel/dumpstack.c > @@ -265,9 +265,8 @@ int __die(const char *str, struct pt_regs *regs, long err) > #ifdef CONFIG_SMP > printk("SMP "); > #endif > -#ifdef CONFIG_DEBUG_PAGEALLOC > - printk("DEBUG_PAGEALLOC "); > -#endif > + if (debug_pagealloc_enabled()) > + printk("DEBUG_PAGEALLOC "); > #ifdef CONFIG_KASAN > printk("KASAN"); > #endif > diff --git a/arch/x86/mm/init.c b/arch/x86/mm/init.c > index 493f541..39823fd 100644 > --- a/arch/x86/mm/init.c > +++ b/arch/x86/mm/init.c > @@ -150,13 +150,14 @@ static int page_size_mask; > > static void __init probe_page_size_mask(void) > { > -#if !defined(CONFIG_DEBUG_PAGEALLOC) && !defined(CONFIG_KMEMCHECK) > +#if !defined(CONFIG_KMEMCHECK) > /* > - * For CONFIG_DEBUG_PAGEALLOC, identity mapping will use small pages. > + * For CONFIG_KMEMCHECK or pagealloc debugging, identity mapping will > + * use small pages. > * This will simplify cpa(), which otherwise needs to support splitting > * large pages into small in interrupt context, etc. > */ > - if (cpu_has_pse) > + if (cpu_has_pse && !debug_pagealloc_enabled()) > page_size_mask |= 1 << PG_LEVEL_2M; > #endif > I would have thought free_init_pages() would be modified to use debug_pagealloc_enabled() as well? -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>