Ver código fonte

x86: unify zero_page definition

Move ZERO_PAGE/empty_zero_page to common place.

Signed-off-by: Jeremy Fitzhardinge <jeremy@xensource.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Jeremy Fitzhardinge 17 anos atrás
pai
commit
8405b122ad

+ 8 - 0
include/asm-x86/pgtable.h

@@ -117,6 +117,14 @@ extern unsigned long long __PAGE_KERNEL, __PAGE_KERNEL_EXEC;
 
 #ifndef __ASSEMBLY__
 
+/*
+ * ZERO_PAGE is a global shared page that is always zero: used
+ * for zero-mapped memory areas etc..
+ */
+extern unsigned long empty_zero_page[PAGE_SIZE/sizeof(unsigned long)];
+#define ZERO_PAGE(vaddr) (virt_to_page(empty_zero_page))
+
+
 /*
  * The following only work if pte_present() is true.
  * Undefined behaviour if not..

+ 0 - 6
include/asm-x86/pgtable_32.h

@@ -25,12 +25,6 @@
 struct mm_struct;
 struct vm_area_struct;
 
-/*
- * ZERO_PAGE is a global shared page that is always zero: used
- * for zero-mapped memory areas etc..
- */
-#define ZERO_PAGE(vaddr) (virt_to_page(empty_zero_page))
-extern unsigned long empty_zero_page[1024];
 extern pgd_t swapper_pg_dir[1024];
 extern struct kmem_cache *pmd_cache;
 extern spinlock_t pgd_lock;

+ 0 - 7
include/asm-x86/pgtable_64.h

@@ -23,13 +23,6 @@ extern pgd_t init_level4_pgt[];
 extern void paging_init(void);
 extern void clear_kernel_mapping(unsigned long addr, unsigned long size);
 
-/*
- * ZERO_PAGE is a global shared page that is always zero: used
- * for zero-mapped memory areas etc..
- */
-extern unsigned long empty_zero_page[PAGE_SIZE/sizeof(unsigned long)];
-#define ZERO_PAGE(vaddr) (virt_to_page(empty_zero_page))
-
 #endif /* !__ASSEMBLY__ */
 
 /*