Commit d434936e authored by Arnd Bergmann's avatar Arnd Bergmann Committed by Thomas Gleixner

mm, x86: Fix native_pud_clear build error

We still get a build error in random configurations, after this has been
modified a few times:

In file included from include/linux/mm.h:68:0,
                 from include/linux/suspend.h:8,
                 from arch/x86/kernel/asm-offsets.c:12:
arch/x86/include/asm/pgtable.h:66:26: error: redefinition of 'native_pud_clear'
 #define pud_clear(pud)   native_pud_clear(pud)

My interpretation is that the build error comes from a typo in __PAGETABLE_PUD_FOLDED,
so fix that typo now, and remove the incorrect #ifdef around the native_pud_clear
definition.

Fixes: 3e761a42 ("mm, x86: fix HIGHMEM64 && PARAVIRT build config for native_pud_clear()")
Fixes: a00cc7d9 ("mm, x86: add support for PUD-sized transparent hugepages")
Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
Acked-by: default avatarDave Jiang <dave.jiang@intel.com>
Cc: Kees Cook <keescook@chromium.org>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: Hugh Dickins <hughd@google.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Borislav Petkov <bp@suse.de>
Cc: Thomas Garnier <thgarnie@google.com>
Link: http://lkml.kernel.org/r/20170314121330.182155-1-arnd@arndb.deSigned-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
parent be3606ff
...@@ -121,12 +121,9 @@ static inline void native_pmd_clear(pmd_t *pmd) ...@@ -121,12 +121,9 @@ static inline void native_pmd_clear(pmd_t *pmd)
*(tmp + 1) = 0; *(tmp + 1) = 0;
} }
#if !defined(CONFIG_SMP) || (defined(CONFIG_HIGHMEM64G) && \
defined(CONFIG_PARAVIRT))
static inline void native_pud_clear(pud_t *pudp) static inline void native_pud_clear(pud_t *pudp)
{ {
} }
#endif
static inline void pud_clear(pud_t *pudp) static inline void pud_clear(pud_t *pudp)
{ {
......
...@@ -62,7 +62,7 @@ extern struct mm_struct *pgd_page_get_mm(struct page *page); ...@@ -62,7 +62,7 @@ extern struct mm_struct *pgd_page_get_mm(struct page *page);
# define set_pud(pudp, pud) native_set_pud(pudp, pud) # define set_pud(pudp, pud) native_set_pud(pudp, pud)
#endif #endif
#ifndef __PAGETABLE_PMD_FOLDED #ifndef __PAGETABLE_PUD_FOLDED
#define pud_clear(pud) native_pud_clear(pud) #define pud_clear(pud) native_pud_clear(pud)
#endif #endif
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment