mirror of
https://github.com/reactos/reactos.git
synced 2024-12-29 10:35:28 +00:00
[FREELDR]
Hey Arch, hyperspace is not the page table range! Rename HYPER_SPACE_ENTRY to SELFMAP_ENTRY. svn path=/trunk/; revision=67467
This commit is contained in:
parent
1eea6a990f
commit
a2e4378502
2 changed files with 6 additions and 8 deletions
|
@ -15,8 +15,6 @@
|
|||
|
||||
//extern ULONG LoaderPagesSpanned;
|
||||
|
||||
#define HYPER_SPACE_ENTRY 0x1EE
|
||||
|
||||
DBG_DEFAULT_CHANNEL(WINDOWS);
|
||||
|
||||
/* GLOBALS ***************************************************************/
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
#undef KIP0PCRADDRESS
|
||||
#define KIP0PCRADDRESS 0xffdff000
|
||||
|
||||
#define HYPER_SPACE_ENTRY 0x300
|
||||
#define SELFMAP_ENTRY 0x300
|
||||
|
||||
// This is needed only for SetProcessorContext routine
|
||||
#pragma pack(2)
|
||||
|
@ -93,9 +93,9 @@ MempAllocatePageTables()
|
|||
PDE = (PHARDWARE_PTE)Buffer;
|
||||
|
||||
// Map the page directory at 0xC0000000 (maps itself)
|
||||
PDE[HYPER_SPACE_ENTRY].PageFrameNumber = (ULONG)PDE >> MM_PAGE_SHIFT;
|
||||
PDE[HYPER_SPACE_ENTRY].Valid = 1;
|
||||
PDE[HYPER_SPACE_ENTRY].Write = 1;
|
||||
PDE[SELFMAP_ENTRY].PageFrameNumber = (ULONG)PDE >> MM_PAGE_SHIFT;
|
||||
PDE[SELFMAP_ENTRY].Valid = 1;
|
||||
PDE[SELFMAP_ENTRY].Write = 1;
|
||||
|
||||
// The last PDE slot is allocated for HAL's memory mapping (Virtual Addresses 0xFFC00000 - 0xFFFFFFFF)
|
||||
HalPageTable = (PHARDWARE_PTE)&Buffer[MM_PAGE_SIZE*1];
|
||||
|
@ -204,8 +204,8 @@ MempUnmapPage(PFN_NUMBER Page)
|
|||
PHARDWARE_PTE KernelPT;
|
||||
PFN_NUMBER Entry = (Page >> 10) + (KSEG0_BASE >> 22);
|
||||
|
||||
/* Don't unmap hyperspace or HAL entries */
|
||||
if (Entry == HYPER_SPACE_ENTRY || Entry == 1023)
|
||||
/* Don't unmap page directory or HAL entries */
|
||||
if (Entry == SELFMAP_ENTRY || Entry == 1023)
|
||||
return;
|
||||
|
||||
if (PDE[Entry].Valid)
|
||||
|
|
Loading…
Reference in a new issue