[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] linux: vmalloc_sync_all() is not a no-op when running in PAE mode on Xen.
# HG changeset patch # User Keir Fraser <keir@xxxxxxxxxxxxx> # Date 1171718793 0 # Node ID c5ff7671b9f29d7862f00ef6e6bdb464d96c2c10 # Parent 31e65c4ba739cc8fcd14fb4198a76a63f1bd5049 linux: vmalloc_sync_all() is not a no-op when running in PAE mode on Xen. Also vmalloc_sync_all() is only defined for x86 architectures so make use of it in driver code conditional on CONFIG_X86. Signed-off-by: Keir Fraser <keir@xxxxxxxxxxxxx> --- linux-2.6-xen-sparse/arch/i386/mm/fault-xen.c | 2 +- linux-2.6-xen-sparse/drivers/xen/util.c | 2 ++ linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/pgtable-3level.h | 2 +- 3 files changed, 4 insertions(+), 2 deletions(-) diff -r 31e65c4ba739 -r c5ff7671b9f2 linux-2.6-xen-sparse/arch/i386/mm/fault-xen.c --- a/linux-2.6-xen-sparse/arch/i386/mm/fault-xen.c Sat Feb 17 09:59:00 2007 +0000 +++ b/linux-2.6-xen-sparse/arch/i386/mm/fault-xen.c Sat Feb 17 13:26:33 2007 +0000 @@ -731,7 +731,7 @@ do_sigbus: force_sig_info_fault(SIGBUS, BUS_ADRERR, address, tsk); } -#ifndef CONFIG_X86_PAE +#if !HAVE_SHARED_KERNEL_PMD void vmalloc_sync_all(void) { /* diff -r 31e65c4ba739 -r c5ff7671b9f2 linux-2.6-xen-sparse/drivers/xen/util.c --- a/linux-2.6-xen-sparse/drivers/xen/util.c Sat Feb 17 09:59:00 2007 +0000 +++ b/linux-2.6-xen-sparse/drivers/xen/util.c Sat Feb 17 13:26:33 2007 +0000 @@ -31,7 +31,9 @@ struct vm_struct *alloc_vm_area(unsigned } /* Map page directories into every address space. */ +#ifdef CONFIG_X86 vmalloc_sync_all(); +#endif return area; } diff -r 31e65c4ba739 -r c5ff7671b9f2 linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/pgtable-3level.h --- a/linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/pgtable-3level.h Sat Feb 17 09:59:00 2007 +0000 +++ b/linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/pgtable-3level.h Sat Feb 17 13:26:33 2007 +0000 @@ -180,6 +180,6 @@ static inline pmd_t pfn_pmd(unsigned lon #define __pmd_free_tlb(tlb, x) do { } while (0) -#define vmalloc_sync_all() ((void)0) +void vmalloc_sync_all(void); #endif /* _I386_PGTABLE_3LEVEL_H */ _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |