|   | 
      | 
  
  
      | 
      | 
  
 
     | 
    | 
  
  
     | 
    | 
  
  
    |   | 
      | 
  
  
    | 
         
xen-changelog
[Xen-changelog] Check for the entire kernel range for temporarily	cleare
 
# HG changeset patch
# User cl349@xxxxxxxxxxxxxxxxxxxx
# Node ID d2f42c284459b4b29e82e46c32b2f0908a200a74
# Parent  c62a5327e6a8c3915d4c6dd8547d68f1a3c75d45
Check for the entire kernel range for temporarily cleared PMD entries.
From: Jan Beulich <JBeulich@xxxxxxxxxx>
Signed-off-by: Christian Limpach <Christian.Limpach@xxxxxxxxxxxx>
diff -r c62a5327e6a8 -r d2f42c284459 
linux-2.6-xen-sparse/arch/x86_64/mm/fault-xen.c
--- a/linux-2.6-xen-sparse/arch/x86_64/mm/fault-xen.c   Thu Feb 16 11:25:36 2006
+++ b/linux-2.6-xen-sparse/arch/x86_64/mm/fault-xen.c   Thu Feb 16 11:30:44 2006
@@ -366,12 +366,12 @@
         */
        if (unlikely(address >= TASK_SIZE64)) {
                /*
-                * Don't check for the module range here: its PML4
-                * is always initialized because it's shared with the main
-                * kernel text. Only vmalloc may need PML4 syncups.
+                * Must check for the entire kernel range here: with writable
+                * page tables the hypervisor may temporarily clear PMD
+                * entries.
                 */
                if (!(error_code & (PF_RSVD|PF_USER|PF_PROT)) &&
-                     ((address >= VMALLOC_START && address < VMALLOC_END))) {
+                   address >= PAGE_OFFSET) {
                        if (vmalloc_fault(address) < 0)
                                goto bad_area_nosemaphore;
                        return;
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
 |   
 
| <Prev in Thread] | 
Current Thread | 
[Next in Thread> |  
- [Xen-changelog] Check for the entire kernel range for temporarily	cleared PMD entries.,
Xen patchbot -unstable <=
  
 |  
  
 | 
    | 
  
  
    |   | 
    |