[haiku-commits] r37130 - haiku/trunk/src/system/kernel/arch/x86/paging/pae

  • From: ingo_weinhold@xxxxxx
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Sun, 13 Jun 2010 21:58:43 +0200 (CEST)

Author: bonefish
Date: 2010-06-13 21:58:43 +0200 (Sun, 13 Jun 2010)
New Revision: 37130
Changeset: http://dev.haiku-os.org/changeset/37130/haiku

Modified:
   haiku/trunk/src/system/kernel/arch/x86/paging/pae/X86PagingMethodPAE.cpp
Log:
X86PagingMethodPAE::PutPageTableEntryInTable(): Incorrectly used 32 bit type,
which caused the upper 32 bit of the address to be ignored, thus mapping to
the wrong page.


Modified: 
haiku/trunk/src/system/kernel/arch/x86/paging/pae/X86PagingMethodPAE.cpp
===================================================================
--- haiku/trunk/src/system/kernel/arch/x86/paging/pae/X86PagingMethodPAE.cpp    
2010-06-13 19:56:04 UTC (rev 37129)
+++ haiku/trunk/src/system/kernel/arch/x86/paging/pae/X86PagingMethodPAE.cpp    
2010-06-13 19:58:43 UTC (rev 37130)
@@ -766,7 +766,7 @@
        phys_addr_t physicalAddress, uint32 attributes, uint32 memoryType,
        bool globalPage)
 {
-       page_table_entry page = (physicalAddress & X86_PAE_PTE_ADDRESS_MASK)
+       pae_page_table_entry page = (physicalAddress & X86_PAE_PTE_ADDRESS_MASK)
                | X86_PAE_PTE_PRESENT | (globalPage ? X86_PAE_PTE_GLOBAL : 0)
                | MemoryTypeToPageTableEntryFlags(memoryType);
 


Other related posts:

  • » [haiku-commits] r37130 - haiku/trunk/src/system/kernel/arch/x86/paging/pae - ingo_weinhold