Message ID | 20170320194024.60749-1-thgarnie@google.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Mon, Mar 20, 2017 at 12:40:24PM -0700, Thomas Garnier wrote: >This patch removes fixmap headers on non-x86 code introduced by the >adaptable MODULE_END change. It is also removed in the 32-bit pgtable >header. Instead, it is added by default in the pgtable generic header >for both architectures. > >Signed-off-by: Thomas Garnier <thgarnie@google.com> >--- > arch/x86/include/asm/pgtable.h | 1 + > arch/x86/include/asm/pgtable_32.h | 1 - > arch/x86/kernel/module.c | 1 - > arch/x86/mm/dump_pagetables.c | 1 - > arch/x86/mm/kasan_init_64.c | 1 - > mm/vmalloc.c | 4 ---- > 6 files changed, 1 insertion(+), 8 deletions(-) > >diff --git a/arch/x86/include/asm/pgtable.h b/arch/x86/include/asm/pgtable.h >index 6f6f351e0a81..78d1fc32e947 100644 >--- a/arch/x86/include/asm/pgtable.h >+++ b/arch/x86/include/asm/pgtable.h >@@ -598,6 +598,7 @@ pte_t *populate_extra_pte(unsigned long vaddr); > #include <linux/mm_types.h> > #include <linux/mmdebug.h> > #include <linux/log2.h> >+#include <asm/fixmap.h> > > static inline int pte_none(pte_t pte) > { >diff --git a/arch/x86/include/asm/pgtable_32.h b/arch/x86/include/asm/pgtable_32.h >index fbc73360aea0..bfab55675c16 100644 >--- a/arch/x86/include/asm/pgtable_32.h >+++ b/arch/x86/include/asm/pgtable_32.h >@@ -14,7 +14,6 @@ > */ > #ifndef __ASSEMBLY__ > #include <asm/processor.h> >-#include <asm/fixmap.h> > #include <linux/threads.h> > #include <asm/paravirt.h> > Yep, I thinks the above two is what I mean. >diff --git a/arch/x86/kernel/module.c b/arch/x86/kernel/module.c >index fad61caac75e..477ae806c2fa 100644 >--- a/arch/x86/kernel/module.c >+++ b/arch/x86/kernel/module.c >@@ -35,7 +35,6 @@ > #include <asm/page.h> > #include <asm/pgtable.h> > #include <asm/setup.h> >-#include <asm/fixmap.h> > Hmm... your code is already merged in upstream? When I look into current Torvalds tree, it looks not include the <asm/fixmap.h> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/x86/kernel/module.c Which tree your change is based on? Do I miss something? > #if 0 > #define DEBUGP(fmt, ...) \ >diff --git a/arch/x86/mm/dump_pagetables.c b/arch/x86/mm/dump_pagetables.c >index 75efeecc85eb..58b5bee7ea27 100644 >--- a/arch/x86/mm/dump_pagetables.c >+++ b/arch/x86/mm/dump_pagetables.c >@@ -20,7 +20,6 @@ > > #include <asm/kasan.h> > #include <asm/pgtable.h> >-#include <asm/fixmap.h> > The same as this one. > /* > * The dumper groups pagetable entries of the same type into one, and for >diff --git a/arch/x86/mm/kasan_init_64.c b/arch/x86/mm/kasan_init_64.c >index 1bde19ef86bd..8d63d7a104c3 100644 >--- a/arch/x86/mm/kasan_init_64.c >+++ b/arch/x86/mm/kasan_init_64.c >@@ -9,7 +9,6 @@ > > #include <asm/tlbflush.h> > #include <asm/sections.h> >-#include <asm/fixmap.h> > > extern pgd_t early_level4_pgt[PTRS_PER_PGD]; > extern struct range pfn_mapped[E820_X_MAX]; >diff --git a/mm/vmalloc.c b/mm/vmalloc.c >index b7d2a23349f4..0dd80222b20b 100644 >--- a/mm/vmalloc.c >+++ b/mm/vmalloc.c >@@ -36,10 +36,6 @@ > #include <asm/tlbflush.h> > #include <asm/shmparam.h> > >-#ifdef CONFIG_X86 >-# include <asm/fixmap.h> >-#endif >- > #include "internal.h" > > struct vfree_deferred { >-- >2.12.0.367.g23dc2f6d3c-goog At last, you have tested both on x86-32 and x86-64 platform?
On Mon, Mar 20, 2017 at 6:52 PM, Wei Yang <richard.weiyang@gmail.com> wrote: > On Mon, Mar 20, 2017 at 12:40:24PM -0700, Thomas Garnier wrote: >>This patch removes fixmap headers on non-x86 code introduced by the >>adaptable MODULE_END change. It is also removed in the 32-bit pgtable >>header. Instead, it is added by default in the pgtable generic header >>for both architectures. >> >>Signed-off-by: Thomas Garnier <thgarnie@google.com> >>--- >> arch/x86/include/asm/pgtable.h | 1 + >> arch/x86/include/asm/pgtable_32.h | 1 - >> arch/x86/kernel/module.c | 1 - >> arch/x86/mm/dump_pagetables.c | 1 - >> arch/x86/mm/kasan_init_64.c | 1 - >> mm/vmalloc.c | 4 ---- >> 6 files changed, 1 insertion(+), 8 deletions(-) >> >>diff --git a/arch/x86/include/asm/pgtable.h b/arch/x86/include/asm/pgtable.h >>index 6f6f351e0a81..78d1fc32e947 100644 >>--- a/arch/x86/include/asm/pgtable.h >>+++ b/arch/x86/include/asm/pgtable.h >>@@ -598,6 +598,7 @@ pte_t *populate_extra_pte(unsigned long vaddr); >> #include <linux/mm_types.h> >> #include <linux/mmdebug.h> >> #include <linux/log2.h> >>+#include <asm/fixmap.h> >> >> static inline int pte_none(pte_t pte) >> { >>diff --git a/arch/x86/include/asm/pgtable_32.h b/arch/x86/include/asm/pgtable_32.h >>index fbc73360aea0..bfab55675c16 100644 >>--- a/arch/x86/include/asm/pgtable_32.h >>+++ b/arch/x86/include/asm/pgtable_32.h >>@@ -14,7 +14,6 @@ >> */ >> #ifndef __ASSEMBLY__ >> #include <asm/processor.h> >>-#include <asm/fixmap.h> >> #include <linux/threads.h> >> #include <asm/paravirt.h> >> > > Yep, I thinks the above two is what I mean. > >>diff --git a/arch/x86/kernel/module.c b/arch/x86/kernel/module.c >>index fad61caac75e..477ae806c2fa 100644 >>--- a/arch/x86/kernel/module.c >>+++ b/arch/x86/kernel/module.c >>@@ -35,7 +35,6 @@ >> #include <asm/page.h> >> #include <asm/pgtable.h> >> #include <asm/setup.h> >>-#include <asm/fixmap.h> >> > > Hmm... your code is already merged in upstream? It was merged on tip x86, it was my point before (as Ingo says after too). > > When I look into current Torvalds tree, it looks not include the <asm/fixmap.h> > > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/x86/kernel/module.c > > Which tree your change is based on? Do I miss something? tip mm x86, before the first patch. > >> #if 0 >> #define DEBUGP(fmt, ...) \ >>diff --git a/arch/x86/mm/dump_pagetables.c b/arch/x86/mm/dump_pagetables.c >>index 75efeecc85eb..58b5bee7ea27 100644 >>--- a/arch/x86/mm/dump_pagetables.c >>+++ b/arch/x86/mm/dump_pagetables.c >>@@ -20,7 +20,6 @@ >> >> #include <asm/kasan.h> >> #include <asm/pgtable.h> >>-#include <asm/fixmap.h> >> > > The same as this one. > >> /* >> * The dumper groups pagetable entries of the same type into one, and for >>diff --git a/arch/x86/mm/kasan_init_64.c b/arch/x86/mm/kasan_init_64.c >>index 1bde19ef86bd..8d63d7a104c3 100644 >>--- a/arch/x86/mm/kasan_init_64.c >>+++ b/arch/x86/mm/kasan_init_64.c >>@@ -9,7 +9,6 @@ >> >> #include <asm/tlbflush.h> >> #include <asm/sections.h> >>-#include <asm/fixmap.h> >> >> extern pgd_t early_level4_pgt[PTRS_PER_PGD]; >> extern struct range pfn_mapped[E820_X_MAX]; >>diff --git a/mm/vmalloc.c b/mm/vmalloc.c >>index b7d2a23349f4..0dd80222b20b 100644 >>--- a/mm/vmalloc.c >>+++ b/mm/vmalloc.c >>@@ -36,10 +36,6 @@ >> #include <asm/tlbflush.h> >> #include <asm/shmparam.h> >> >>-#ifdef CONFIG_X86 >>-# include <asm/fixmap.h> >>-#endif >>- >> #include "internal.h" >> >> struct vfree_deferred { >>-- >>2.12.0.367.g23dc2f6d3c-goog > > > At last, you have tested both on x86-32 and x86-64 platform? I did, I know have a collected set of configs for both 32-bit and 64-bit and a script merging each config and building. It should reduce the risk of exotic configurations not working. > > -- > Wei Yang > Help you, Help me
diff --git a/arch/x86/include/asm/pgtable.h b/arch/x86/include/asm/pgtable.h index 6f6f351e0a81..78d1fc32e947 100644 --- a/arch/x86/include/asm/pgtable.h +++ b/arch/x86/include/asm/pgtable.h @@ -598,6 +598,7 @@ pte_t *populate_extra_pte(unsigned long vaddr); #include <linux/mm_types.h> #include <linux/mmdebug.h> #include <linux/log2.h> +#include <asm/fixmap.h> static inline int pte_none(pte_t pte) { diff --git a/arch/x86/include/asm/pgtable_32.h b/arch/x86/include/asm/pgtable_32.h index fbc73360aea0..bfab55675c16 100644 --- a/arch/x86/include/asm/pgtable_32.h +++ b/arch/x86/include/asm/pgtable_32.h @@ -14,7 +14,6 @@ */ #ifndef __ASSEMBLY__ #include <asm/processor.h> -#include <asm/fixmap.h> #include <linux/threads.h> #include <asm/paravirt.h> diff --git a/arch/x86/kernel/module.c b/arch/x86/kernel/module.c index fad61caac75e..477ae806c2fa 100644 --- a/arch/x86/kernel/module.c +++ b/arch/x86/kernel/module.c @@ -35,7 +35,6 @@ #include <asm/page.h> #include <asm/pgtable.h> #include <asm/setup.h> -#include <asm/fixmap.h> #if 0 #define DEBUGP(fmt, ...) \ diff --git a/arch/x86/mm/dump_pagetables.c b/arch/x86/mm/dump_pagetables.c index 75efeecc85eb..58b5bee7ea27 100644 --- a/arch/x86/mm/dump_pagetables.c +++ b/arch/x86/mm/dump_pagetables.c @@ -20,7 +20,6 @@ #include <asm/kasan.h> #include <asm/pgtable.h> -#include <asm/fixmap.h> /* * The dumper groups pagetable entries of the same type into one, and for diff --git a/arch/x86/mm/kasan_init_64.c b/arch/x86/mm/kasan_init_64.c index 1bde19ef86bd..8d63d7a104c3 100644 --- a/arch/x86/mm/kasan_init_64.c +++ b/arch/x86/mm/kasan_init_64.c @@ -9,7 +9,6 @@ #include <asm/tlbflush.h> #include <asm/sections.h> -#include <asm/fixmap.h> extern pgd_t early_level4_pgt[PTRS_PER_PGD]; extern struct range pfn_mapped[E820_X_MAX]; diff --git a/mm/vmalloc.c b/mm/vmalloc.c index b7d2a23349f4..0dd80222b20b 100644 --- a/mm/vmalloc.c +++ b/mm/vmalloc.c @@ -36,10 +36,6 @@ #include <asm/tlbflush.h> #include <asm/shmparam.h> -#ifdef CONFIG_X86 -# include <asm/fixmap.h> -#endif - #include "internal.h" struct vfree_deferred {
This patch removes fixmap headers on non-x86 code introduced by the adaptable MODULE_END change. It is also removed in the 32-bit pgtable header. Instead, it is added by default in the pgtable generic header for both architectures. Signed-off-by: Thomas Garnier <thgarnie@google.com> --- arch/x86/include/asm/pgtable.h | 1 + arch/x86/include/asm/pgtable_32.h | 1 - arch/x86/kernel/module.c | 1 - arch/x86/mm/dump_pagetables.c | 1 - arch/x86/mm/kasan_init_64.c | 1 - mm/vmalloc.c | 4 ---- 6 files changed, 1 insertion(+), 8 deletions(-)