From: Jeremy Fitzhardinge Date: Tue, 9 Sep 2008 22:43:25 +0000 (-0700) Subject: xen: fix pinning when not using split pte locks X-Git-Tag: v2.6.28-rc1~699^2^2~8 X-Git-Url: http://pilppa.com/gitweb/?a=commitdiff_plain;h=6a9e91846bf52cc70a0417de19fdfac224c435c4;p=linux-2.6-omap-h63xx.git xen: fix pinning when not using split pte locks We only pin PTE pages when using split PTE locks, so don't do the pin/unpin when attaching/detaching pte pages to a pinned pagetable. Signed-off-by: Jeremy Fitzhardinge Signed-off-by: Ingo Molnar --- diff --git a/arch/x86/xen/enlighten.c b/arch/x86/xen/enlighten.c index b106e825d26..8ca2f88bde1 100644 --- a/arch/x86/xen/enlighten.c +++ b/arch/x86/xen/enlighten.c @@ -826,7 +826,7 @@ static void xen_alloc_ptpage(struct mm_struct *mm, u32 pfn, unsigned level) if (!PageHighMem(page)) { make_lowmem_page_readonly(__va(PFN_PHYS((unsigned long)pfn))); - if (level == PT_PTE) + if (level == PT_PTE && USE_SPLIT_PTLOCKS) pin_pagetable_pfn(MMUEXT_PIN_L1_TABLE, pfn); } else /* make sure there are no stray mappings of @@ -894,7 +894,7 @@ static void xen_release_ptpage(u32 pfn, unsigned level) if (PagePinned(page)) { if (!PageHighMem(page)) { - if (level == PT_PTE) + if (level == PT_PTE && USE_SPLIT_PTLOCKS) pin_pagetable_pfn(MMUEXT_UNPIN_TABLE, pfn); make_lowmem_page_readwrite(__va(PFN_PHYS(pfn))); }