aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJeremy Fitzhardinge <jeremy@goop.org>2008-03-17 19:36:56 -0400
committerIngo Molnar <mingo@elte.hu>2008-04-24 17:57:30 -0400
commit1d262d3a4932b5ae7222c8d9900696650ee95188 (patch)
treefba59ab4d5c7595e2d6bfa32eecf53d2054743aa
parent1ec1fe73dfb711f9ea5a0ef8a7e3af5b6ac8b653 (diff)
x86: put paravirt stubs into common asm/pgalloc.h
Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com> Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
-rw-r--r--arch/x86/mm/pageattr.c2
-rw-r--r--include/asm-x86/pgalloc.h10
-rw-r--r--include/asm-x86/pgalloc_32.h10
3 files changed, 10 insertions, 12 deletions
diff --git a/arch/x86/mm/pageattr.c b/arch/x86/mm/pageattr.c
index f7823a172868..938130d49b76 100644
--- a/arch/x86/mm/pageattr.c
+++ b/arch/x86/mm/pageattr.c
@@ -483,9 +483,7 @@ static int split_large_page(pte_t *kpte, unsigned long address)
483 goto out_unlock; 483 goto out_unlock;
484 484
485 pbase = (pte_t *)page_address(base); 485 pbase = (pte_t *)page_address(base);
486#ifdef CONFIG_X86_32
487 paravirt_alloc_pt(&init_mm, page_to_pfn(base)); 486 paravirt_alloc_pt(&init_mm, page_to_pfn(base));
488#endif
489 ref_prot = pte_pgprot(pte_clrhuge(*kpte)); 487 ref_prot = pte_pgprot(pte_clrhuge(*kpte));
490 488
491#ifdef CONFIG_X86_64 489#ifdef CONFIG_X86_64
diff --git a/include/asm-x86/pgalloc.h b/include/asm-x86/pgalloc.h
index ea9d27ad7f4e..28773594f741 100644
--- a/include/asm-x86/pgalloc.h
+++ b/include/asm-x86/pgalloc.h
@@ -5,6 +5,16 @@
5#include <linux/mm.h> /* for struct page */ 5#include <linux/mm.h> /* for struct page */
6#include <linux/pagemap.h> 6#include <linux/pagemap.h>
7 7
8#ifdef CONFIG_PARAVIRT
9#include <asm/paravirt.h>
10#else
11#define paravirt_alloc_pt(mm, pfn) do { } while (0)
12#define paravirt_alloc_pd(mm, pfn) do { } while (0)
13#define paravirt_alloc_pd_clone(pfn, clonepfn, start, count) do { } while (0)
14#define paravirt_release_pt(pfn) do { } while (0)
15#define paravirt_release_pd(pfn) do { } while (0)
16#endif
17
8/* 18/*
9 * Allocate and free page tables. 19 * Allocate and free page tables.
10 */ 20 */
diff --git a/include/asm-x86/pgalloc_32.h b/include/asm-x86/pgalloc_32.h
index aaa322cb4b6e..c4e7faa89616 100644
--- a/include/asm-x86/pgalloc_32.h
+++ b/include/asm-x86/pgalloc_32.h
@@ -1,16 +1,6 @@
1#ifndef _I386_PGALLOC_H 1#ifndef _I386_PGALLOC_H
2#define _I386_PGALLOC_H 2#define _I386_PGALLOC_H
3 3
4#ifdef CONFIG_PARAVIRT
5#include <asm/paravirt.h>
6#else
7#define paravirt_alloc_pt(mm, pfn) do { } while (0)
8#define paravirt_alloc_pd(mm, pfn) do { } while (0)
9#define paravirt_alloc_pd_clone(pfn, clonepfn, start, count) do { } while (0)
10#define paravirt_release_pt(pfn) do { } while (0)
11#define paravirt_release_pd(pfn) do { } while (0)
12#endif
13
14static inline void pmd_populate_kernel(struct mm_struct *mm, 4static inline void pmd_populate_kernel(struct mm_struct *mm,
15 pmd_t *pmd, pte_t *pte) 5 pmd_t *pmd, pte_t *pte)
16{ 6{