[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <1244795845.30512.26.camel@penberg-laptop>
Date: Fri, 12 Jun 2009 11:37:25 +0300
From: Pekka Enberg <penberg@...helsinki.fi>
To: Yinghai Lu <yinghai@...nel.org>
Cc: Ingo Molnar <mingo@...e.hu>,
Christoph Lameter <cl@...ux-foundation.org>,
Linus Torvalds <torvalds@...ux-foundation.org>,
linux-kernel@...r.kernel.org, akpm@...ux-foundation.org,
hannes@...xchg.org, mpm@...enic.com, npiggin@...e.de
Subject: Re: [GIT PULL v3] Early boot SLAB for 2.6.31
On Thu, 2009-06-11 at 16:14 -0700, Yinghai Lu wrote:
> please check
>
> [PATCH] x86: make zap_low_mapping could be used early
>
> only one cpu is there, just call __flush_tlb for it
>
> Signed-off-by: Yinghai Lu <yinghai@...nel.org>
>
> ---
> arch/x86/include/asm/tlbflush.h | 2 +-
> arch/x86/kernel/smpboot.c | 2 +-
> arch/x86/mm/init_32.c | 10 +++++++---
> 3 files changed, 9 insertions(+), 5 deletions(-)
>
> Index: linux-2.6/arch/x86/include/asm/tlbflush.h
> ===================================================================
> --- linux-2.6.orig/arch/x86/include/asm/tlbflush.h
> +++ linux-2.6/arch/x86/include/asm/tlbflush.h
> @@ -172,6 +172,6 @@ static inline void flush_tlb_kernel_rang
> flush_tlb_all();
> }
>
> -extern void zap_low_mappings(void);
> +extern void zap_low_mappings(bool early);
>
> #endif /* _ASM_X86_TLBFLUSH_H */
> Index: linux-2.6/arch/x86/kernel/smpboot.c
> ===================================================================
> --- linux-2.6.orig/arch/x86/kernel/smpboot.c
> +++ linux-2.6/arch/x86/kernel/smpboot.c
> @@ -875,7 +875,7 @@ int __cpuinit native_cpu_up(unsigned int
>
> err = do_boot_cpu(apicid, cpu);
>
> - zap_low_mappings();
> + zap_low_mappings(false);
> low_mappings = 0;
> #else
> err = do_boot_cpu(apicid, cpu);
> Index: linux-2.6/arch/x86/mm/init_32.c
> ===================================================================
> --- linux-2.6.orig/arch/x86/mm/init_32.c
> +++ linux-2.6/arch/x86/mm/init_32.c
> @@ -576,7 +576,7 @@ static inline void save_pg_dir(void)
> }
> #endif /* !CONFIG_ACPI_SLEEP */
>
> -void zap_low_mappings(void)
> +void zap_low_mappings(bool early)
> {
> int i;
>
> @@ -593,7 +593,11 @@ void zap_low_mappings(void)
> set_pgd(swapper_pg_dir+i, __pgd(0));
> #endif
> }
> - flush_tlb_all();
> +
> + if (early)
> + __flush_tlb();
> + else
> + flush_tlb_all();
> }
>
> pteval_t __supported_pte_mask __read_mostly = ~(_PAGE_NX | _PAGE_GLOBAL | _PAGE_IOMAP);
> @@ -968,7 +972,7 @@ void __init mem_init(void)
> test_wp_bit();
>
> save_pg_dir();
> - zap_low_mappings();
> + zap_low_mappings(true);
> }
>
> #ifdef CONFIG_MEMORY_HOTPLUG
Applied, thanks!
Pekka
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists