WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-changelog

[Xen-changelog] [xen-unstable] linux: vmalloc_sync_all() is not a no-op

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [xen-unstable] linux: vmalloc_sync_all() is not a no-op when running in PAE mode on Xen.
From: Xen patchbot-unstable <patchbot-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Sat, 17 Feb 2007 07:55:06 -0800
Delivery-date: Sat, 17 Feb 2007 07:54:59 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-changelog-request@lists.xensource.com?subject=help>
List-id: BK change log <xen-changelog.lists.xensource.com>
List-post: <mailto:xen-changelog@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=unsubscribe>
Reply-to: xen-devel@xxxxxxxxxxxxxxxxxxx
Sender: xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx
# 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

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] [xen-unstable] linux: vmalloc_sync_all() is not a no-op when running in PAE mode on Xen., Xen patchbot-unstable <=