ia64/xen-unstable

changeset 4622:37be770f866c

bitkeeper revision 1.1340.1.2 (4267e33asTxlaqmSE5FbomPUak_0JQ)

Shadow mode should (for now) *not* set the _PAGE_GLOBAL mode in any of the shadow page tables.

Signed-off-by: michael.fetterman@cl.cam.ac.uk
author maf46@burn.cl.cam.ac.uk
date Thu Apr 21 17:30:34 2005 +0000 (2005-04-21)
parents 8e987582b901
children acc0c98dfe3f
files xen/include/asm-x86/shadow.h
line diff
     1.1 --- a/xen/include/asm-x86/shadow.h	Thu Apr 21 17:29:29 2005 +0000
     1.2 +++ b/xen/include/asm-x86/shadow.h	Thu Apr 21 17:30:34 2005 +0000
     1.3 @@ -590,7 +590,7 @@ static inline int l1pte_write_fault(
     1.4  
     1.5      ASSERT(l1e_get_flags(gpte) & _PAGE_RW);
     1.6      l1e_add_flags(&gpte, _PAGE_DIRTY | _PAGE_ACCESSED);
     1.7 -    spte = l1e_create_pfn(gmfn, l1e_get_flags(gpte));
     1.8 +    spte = l1e_create_pfn(gmfn, l1e_get_flags(gpte) & ~_PAGE_GLOBAL);
     1.9  
    1.10      SH_VVLOG("l1pte_write_fault: updating spte=0x%p gpte=0x%p",
    1.11               l1e_get_value(spte), l1e_get_value(gpte));
    1.12 @@ -623,7 +623,7 @@ static inline int l1pte_read_fault(
    1.13      }
    1.14  
    1.15      l1e_add_flags(&gpte, _PAGE_ACCESSED);
    1.16 -    spte = l1e_create_pfn(mfn, l1e_get_flags(gpte));
    1.17 +    spte = l1e_create_pfn(mfn, l1e_get_flags(gpte) & ~_PAGE_GLOBAL);
    1.18  
    1.19      if ( shadow_mode_log_dirty(d) || !(l1e_get_flags(gpte) & _PAGE_DIRTY) ||
    1.20           mfn_is_page_table(mfn) )
    1.21 @@ -651,7 +651,7 @@ static inline void l1pte_propagate_from_
    1.22            (_PAGE_PRESENT|_PAGE_ACCESSED)) &&
    1.23           VALID_MFN(mfn = __gpfn_to_mfn(d, l1e_get_pfn(gpte))) )
    1.24      {
    1.25 -        spte = l1e_create_pfn(mfn, l1e_get_flags(gpte));
    1.26 +        spte = l1e_create_pfn(mfn, l1e_get_flags(gpte) & ~_PAGE_GLOBAL);
    1.27          
    1.28          if ( shadow_mode_log_dirty(d) ||
    1.29               !(l1e_get_flags(gpte) & _PAGE_DIRTY) ||