Add input qualifiers to page map interface definitions
This commit is contained in:
@@ -21,41 +21,41 @@ namespace MM
|
||||
MMPAGEMAP_INFO PageMapInfo;
|
||||
|
||||
public:
|
||||
XTAPI PMMPTE AdvancePte(PMMPTE Pte,
|
||||
ULONG Count);
|
||||
XTAPI VOID ClearPte(PHARDWARE_PTE PtePointer);
|
||||
XTAPI PMMPTE AdvancePte(IN PMMPTE Pte,
|
||||
IN ULONG Count);
|
||||
XTAPI VOID ClearPte(IN PHARDWARE_PTE PtePointer);
|
||||
XTAPI ULONGLONG GetEmptyPteList(VOID);
|
||||
XTAPI ULONG_PTR GetNextEntry(PMMPTE Pte);
|
||||
XTAPI PMMPTE GetNextPte(PMMPTE Pte);
|
||||
XTAPI BOOLEAN GetOneEntry(PMMPTE Pte);
|
||||
XTAPI PMMP5E GetP5eAddress(PVOID Address);
|
||||
XTAPI ULONG GetP5eIndex(PVOID Address);
|
||||
XTAPI PVOID GetP5eVirtualAddress(PMMP5E P5ePointer);
|
||||
XTAPI PMMPDE GetPdeAddress(PVOID Address);
|
||||
XTAPI ULONG GetPdeIndex(PVOID Address);
|
||||
XTAPI PVOID GetPdeVirtualAddress(PMMPDE PdePointer);
|
||||
XTAPI PMMPPE GetPpeAddress(PVOID Address);
|
||||
XTAPI ULONG GetPpeIndex(PVOID Address);
|
||||
XTAPI PVOID GetPpeVirtualAddress(PMMPPE PpePointer);
|
||||
XTAPI PMMPTE GetPteAddress(PVOID Address);
|
||||
XTAPI ULONG GetPteIndex(PVOID Address);
|
||||
XTAPI ULONG_PTR GetNextEntry(IN PMMPTE Pte);
|
||||
XTAPI PMMPTE GetNextPte(IN PMMPTE Pte);
|
||||
XTAPI BOOLEAN GetOneEntry(IN PMMPTE Pte);
|
||||
XTAPI PMMP5E GetP5eAddress(IN PVOID Address);
|
||||
XTAPI ULONG GetP5eIndex(IN PVOID Address);
|
||||
XTAPI PVOID GetP5eVirtualAddress(IN PMMP5E P5ePointer);
|
||||
XTAPI PMMPDE GetPdeAddress(IN PVOID Address);
|
||||
XTAPI ULONG GetPdeIndex(IN PVOID Address);
|
||||
XTAPI PVOID GetPdeVirtualAddress(IN PMMPDE PdePointer);
|
||||
XTAPI PMMPPE GetPpeAddress(IN PVOID Address);
|
||||
XTAPI ULONG GetPpeIndex(IN PVOID Address);
|
||||
XTAPI PVOID GetPpeVirtualAddress(IN PMMPPE PpePointer);
|
||||
XTAPI PMMPTE GetPteAddress(IN PVOID Address);
|
||||
XTAPI ULONG GetPteIndex(IN PVOID Address);
|
||||
XTAPI ULONG GetPteSize(VOID);
|
||||
XTAPI PVOID GetPteVirtualAddress(PMMPTE PtePointer);
|
||||
XTAPI PMMPXE GetPxeAddress(PVOID Address);
|
||||
XTAPI ULONG GetPxeIndex(PVOID Address);
|
||||
XTAPI PVOID GetPxeVirtualAddress(PMMPXE PxePointer);
|
||||
XTAPI PVOID GetPteVirtualAddress(IN PMMPTE PtePointer);
|
||||
XTAPI PMMPXE GetPxeAddress(IN PVOID Address);
|
||||
XTAPI ULONG GetPxeIndex(IN PVOID Address);
|
||||
XTAPI PVOID GetPxeVirtualAddress(IN PMMPXE PxePointer);
|
||||
VIRTUAL XTAPI VOID InitializePageMapInfo(VOID) = 0;
|
||||
XTAPI BOOLEAN PteValid(PHARDWARE_PTE PtePointer);
|
||||
XTAPI VOID SetNextEntry(PMMPTE Pte,
|
||||
ULONG_PTR Value);
|
||||
XTAPI VOID SetOneEntry(PMMPTE Pte,
|
||||
BOOLEAN Value);
|
||||
XTAPI VOID SetPte(PHARDWARE_PTE PtePointer,
|
||||
PFN_NUMBER PageFrameNumber,
|
||||
BOOLEAN Writable);
|
||||
XTAPI VOID SetPteCaching(PHARDWARE_PTE PtePointer,
|
||||
BOOLEAN CacheDisable,
|
||||
BOOLEAN WriteThrough);
|
||||
XTAPI BOOLEAN PteValid(IN PHARDWARE_PTE PtePointer);
|
||||
XTAPI VOID SetNextEntry(IN PMMPTE Pte,
|
||||
IN ULONG_PTR Value);
|
||||
XTAPI VOID SetOneEntry(IN PMMPTE Pte,
|
||||
IN BOOLEAN Value);
|
||||
XTAPI VOID SetPte(IN PHARDWARE_PTE PtePointer,
|
||||
IN PFN_NUMBER PageFrameNumber,
|
||||
IN BOOLEAN Writable);
|
||||
XTAPI VOID SetPteCaching(IN PHARDWARE_PTE PtePointer,
|
||||
IN BOOLEAN CacheDisable,
|
||||
IN BOOLEAN WriteThrough);
|
||||
} PAGEMAP, *PPAGEMAP;
|
||||
|
||||
class PageMapBasic final : public PageMap
|
||||
|
||||
@@ -21,81 +21,81 @@ namespace MM
|
||||
MMPAGEMAP_INFO PageMapInfo;
|
||||
|
||||
public:
|
||||
VIRTUAL XTAPI PMMPTE AdvancePte(PMMPTE Pte,
|
||||
ULONG Count) = 0;
|
||||
XTAPI VOID ClearPte(PHARDWARE_PTE PtePointer);
|
||||
VIRTUAL XTAPI PMMPTE AdvancePte(IN PMMPTE Pte,
|
||||
IN ULONG Count) = 0;
|
||||
XTAPI VOID ClearPte(IN PHARDWARE_PTE PtePointer);
|
||||
XTAPI ULONG GetEmptyPteList(VOID);
|
||||
VIRTUAL XTAPI ULONG_PTR GetNextEntry(PMMPTE Pte) = 0;
|
||||
VIRTUAL XTAPI PMMPTE GetNextPte(PMMPTE Pte) = 0;
|
||||
VIRTUAL XTAPI BOOLEAN GetOneEntry(PMMPTE Pte) = 0;
|
||||
XTAPI PMMPDE GetPdeAddress(PVOID Address);
|
||||
XTAPI ULONG GetPdeIndex(PVOID Address);
|
||||
XTAPI PVOID GetPdeVirtualAddress(PMMPDE PdePointer);
|
||||
XTAPI PMMPPE GetPpeAddress(PVOID Address);
|
||||
XTAPI ULONG GetPpeIndex(PVOID Address);
|
||||
XTAPI PVOID GetPpeVirtualAddress(PMMPPE PpePointer);
|
||||
XTAPI PMMPTE GetPteAddress(PVOID Address);
|
||||
XTAPI ULONG GetPteIndex(PVOID Address);
|
||||
VIRTUAL XTAPI ULONG_PTR GetNextEntry(IN PMMPTE Pte) = 0;
|
||||
VIRTUAL XTAPI PMMPTE GetNextPte(IN PMMPTE Pte) = 0;
|
||||
VIRTUAL XTAPI BOOLEAN GetOneEntry(IN PMMPTE Pte) = 0;
|
||||
XTAPI PMMPDE GetPdeAddress(IN PVOID Address);
|
||||
XTAPI ULONG GetPdeIndex(IN PVOID Address);
|
||||
XTAPI PVOID GetPdeVirtualAddress(IN PMMPDE PdePointer);
|
||||
XTAPI PMMPPE GetPpeAddress(IN PVOID Address);
|
||||
XTAPI ULONG GetPpeIndex(IN PVOID Address);
|
||||
XTAPI PVOID GetPpeVirtualAddress(IN PMMPPE PpePointer);
|
||||
XTAPI PMMPTE GetPteAddress(IN PVOID Address);
|
||||
XTAPI ULONG GetPteIndex(IN PVOID Address);
|
||||
VIRTUAL XTAPI ULONG GetPteSize(VOID) = 0;
|
||||
XTAPI PVOID GetPteVirtualAddress(PMMPTE PtePointer);
|
||||
XTAPI PVOID GetPteVirtualAddress(IN PMMPTE PtePointer);
|
||||
VIRTUAL XTAPI VOID InitializePageMapInfo(VOID) = 0;
|
||||
VIRTUAL XTAPI BOOLEAN PteValid(PHARDWARE_PTE PtePointer) = 0;
|
||||
VIRTUAL XTAPI VOID SetNextEntry(PMMPTE Pte,
|
||||
ULONG_PTR Value) = 0;
|
||||
VIRTUAL XTAPI VOID SetOneEntry(PMMPTE Pte,
|
||||
BOOLEAN Value) = 0;
|
||||
VIRTUAL XTAPI VOID SetPte(PHARDWARE_PTE PtePointer,
|
||||
PFN_NUMBER PageFrameNumber,
|
||||
BOOLEAN Writable) = 0;
|
||||
VIRTUAL XTAPI VOID SetPteCaching(PHARDWARE_PTE PtePointer,
|
||||
BOOLEAN CacheDisable,
|
||||
BOOLEAN WriteThrough) = 0;
|
||||
VIRTUAL XTAPI BOOLEAN PteValid(IN PHARDWARE_PTE PtePointer) = 0;
|
||||
VIRTUAL XTAPI VOID SetNextEntry(IN PMMPTE Pte,
|
||||
IN ULONG_PTR Value) = 0;
|
||||
VIRTUAL XTAPI VOID SetOneEntry(IN PMMPTE Pte,
|
||||
IN BOOLEAN Value) = 0;
|
||||
VIRTUAL XTAPI VOID SetPte(IN PHARDWARE_PTE PtePointer,
|
||||
IN PFN_NUMBER PageFrameNumber,
|
||||
IN BOOLEAN Writable) = 0;
|
||||
VIRTUAL XTAPI VOID SetPteCaching(IN PHARDWARE_PTE PtePointer,
|
||||
IN BOOLEAN CacheDisable,
|
||||
IN BOOLEAN WriteThrough) = 0;
|
||||
} PAGEMAP, *PPAGEMAP;
|
||||
|
||||
class PageMapBasic final : public PageMap
|
||||
{
|
||||
public:
|
||||
XTAPI PMMPTE AdvancePte(PMMPTE Pte,
|
||||
ULONG Count);
|
||||
XTAPI ULONG_PTR GetNextEntry(PMMPTE Pte);
|
||||
XTAPI PMMPTE GetNextPte(PMMPTE Pte);
|
||||
XTAPI BOOLEAN GetOneEntry(PMMPTE Pte);
|
||||
XTAPI PMMPTE AdvancePte(IN PMMPTE Pte,
|
||||
IN ULONG Count);
|
||||
XTAPI ULONG_PTR GetNextEntry(IN PMMPTE Pte);
|
||||
XTAPI PMMPTE GetNextPte(IN PMMPTE Pte);
|
||||
XTAPI BOOLEAN GetOneEntry(IN PMMPTE Pte);
|
||||
XTAPI ULONG GetPteSize(VOID);
|
||||
XTAPI VOID InitializePageMapInfo(VOID);
|
||||
XTAPI BOOLEAN PteValid(PHARDWARE_PTE PtePointer);
|
||||
XTAPI VOID SetNextEntry(PMMPTE Pte,
|
||||
ULONG_PTR Value);
|
||||
XTAPI VOID SetOneEntry(PMMPTE Pte,
|
||||
BOOLEAN Value);
|
||||
XTAPI VOID SetPte(PHARDWARE_PTE PtePointer,
|
||||
PFN_NUMBER PageFrameNumber,
|
||||
BOOLEAN Writable);
|
||||
XTAPI VOID SetPteCaching(PHARDWARE_PTE PtePointer,
|
||||
BOOLEAN CacheDisable,
|
||||
BOOLEAN WriteThrough);
|
||||
XTAPI BOOLEAN PteValid(IN PHARDWARE_PTE PtePointer);
|
||||
XTAPI VOID SetNextEntry(IN PMMPTE Pte,
|
||||
IN ULONG_PTR Value);
|
||||
XTAPI VOID SetOneEntry(IN PMMPTE Pte,
|
||||
IN BOOLEAN Value);
|
||||
XTAPI VOID SetPte(IN PHARDWARE_PTE PtePointer,
|
||||
IN PFN_NUMBER PageFrameNumber,
|
||||
IN BOOLEAN Writable);
|
||||
XTAPI VOID SetPteCaching(IN PHARDWARE_PTE PtePointer,
|
||||
IN BOOLEAN CacheDisable,
|
||||
IN BOOLEAN WriteThrough);
|
||||
};
|
||||
|
||||
class PageMapXpa final : public PageMap
|
||||
{
|
||||
public:
|
||||
XTAPI PMMPTE AdvancePte(PMMPTE Pte,
|
||||
ULONG Count);
|
||||
XTAPI ULONG_PTR GetNextEntry(PMMPTE Pte);
|
||||
XTAPI PMMPTE GetNextPte(PMMPTE Pte);
|
||||
XTAPI BOOLEAN GetOneEntry(PMMPTE Pte);
|
||||
XTAPI PMMPTE AdvancePte(IN PMMPTE Pte,
|
||||
IN ULONG Count);
|
||||
XTAPI ULONG_PTR GetNextEntry(IN PMMPTE Pte);
|
||||
XTAPI PMMPTE GetNextPte(IN PMMPTE Pte);
|
||||
XTAPI BOOLEAN GetOneEntry(IN PMMPTE Pte);
|
||||
XTAPI ULONG GetPteSize(VOID);
|
||||
XTAPI VOID InitializePageMapInfo(VOID);
|
||||
XTAPI BOOLEAN PteValid(PHARDWARE_PTE PtePointer);
|
||||
XTAPI VOID SetNextEntry(PMMPTE Pte,
|
||||
ULONG_PTR Value);
|
||||
XTAPI VOID SetOneEntry(PMMPTE Pte,
|
||||
BOOLEAN Value);
|
||||
XTAPI VOID SetPte(PHARDWARE_PTE PtePointer,
|
||||
PFN_NUMBER PageFrameNumber,
|
||||
BOOLEAN Writable);
|
||||
XTAPI VOID SetPteCaching(PHARDWARE_PTE PtePointer,
|
||||
BOOLEAN CacheDisable,
|
||||
BOOLEAN WriteThrough);
|
||||
XTAPI BOOLEAN PteValid(IN PHARDWARE_PTE PtePointer);
|
||||
XTAPI VOID SetNextEntry(IN PMMPTE Pte,
|
||||
IN ULONG_PTR Value);
|
||||
XTAPI VOID SetOneEntry(IN PMMPTE Pte,
|
||||
IN BOOLEAN Value);
|
||||
XTAPI VOID SetPte(IN PHARDWARE_PTE PtePointer,
|
||||
IN PFN_NUMBER PageFrameNumber,
|
||||
IN BOOLEAN Writable);
|
||||
XTAPI VOID SetPteCaching(IN PHARDWARE_PTE PtePointer,
|
||||
IN BOOLEAN CacheDisable,
|
||||
IN BOOLEAN WriteThrough);
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
@@ -24,8 +24,8 @@
|
||||
*/
|
||||
XTAPI
|
||||
PMMPTE
|
||||
MM::PageMap::AdvancePte(PMMPTE Pte,
|
||||
ULONG Count)
|
||||
MM::PageMap::AdvancePte(IN PMMPTE Pte,
|
||||
IN ULONG Count)
|
||||
{
|
||||
/* Return advanced PTE pointer */
|
||||
return (PMMPTE)((ULONG_PTR)Pte + (Count * sizeof(MMPTE)));
|
||||
@@ -43,7 +43,7 @@ MM::PageMap::AdvancePte(PMMPTE Pte,
|
||||
*/
|
||||
XTAPI
|
||||
VOID
|
||||
MM::PageMap::ClearPte(PHARDWARE_PTE PtePointer)
|
||||
MM::PageMap::ClearPte(IN PHARDWARE_PTE PtePointer)
|
||||
{
|
||||
/* Clear PTE */
|
||||
PtePointer->CacheDisable = 0;
|
||||
@@ -80,7 +80,7 @@ MM::PageMap::GetEmptyPteList(VOID)
|
||||
*/
|
||||
XTAPI
|
||||
ULONG_PTR
|
||||
MM::PageMap::GetNextEntry(PMMPTE Pte)
|
||||
MM::PageMap::GetNextEntry(IN PMMPTE Pte)
|
||||
{
|
||||
/* Return next entry in PTE list */
|
||||
return Pte->List.NextEntry;
|
||||
@@ -98,7 +98,7 @@ MM::PageMap::GetNextEntry(PMMPTE Pte)
|
||||
*/
|
||||
XTAPI
|
||||
PMMPTE
|
||||
MM::PageMap::GetNextPte(PMMPTE Pte)
|
||||
MM::PageMap::GetNextPte(IN PMMPTE Pte)
|
||||
{
|
||||
/* Return advanced PTE pointer */
|
||||
return AdvancePte(Pte, 1);
|
||||
@@ -116,7 +116,7 @@ MM::PageMap::GetNextPte(PMMPTE Pte)
|
||||
*/
|
||||
XTAPI
|
||||
BOOLEAN
|
||||
MM::PageMap::GetOneEntry(PMMPTE Pte)
|
||||
MM::PageMap::GetOneEntry(IN PMMPTE Pte)
|
||||
{
|
||||
/* Return one entry status */
|
||||
return Pte->List.OneEntry;
|
||||
@@ -134,7 +134,7 @@ MM::PageMap::GetOneEntry(PMMPTE Pte)
|
||||
*/
|
||||
XTAPI
|
||||
PMMP5E
|
||||
MM::PageMap::GetP5eAddress(PVOID Address)
|
||||
MM::PageMap::GetP5eAddress(IN PVOID Address)
|
||||
{
|
||||
ULONGLONG Offset;
|
||||
|
||||
@@ -155,7 +155,7 @@ MM::PageMap::GetP5eAddress(PVOID Address)
|
||||
*/
|
||||
XTAPI
|
||||
ULONG
|
||||
MM::PageMap::GetP5eIndex(PVOID Address)
|
||||
MM::PageMap::GetP5eIndex(IN PVOID Address)
|
||||
{
|
||||
return (((((ULONGLONG)Address) >> MM_P5I_SHIFT) & 0x1FF) * PageMapInfo.Xpa);
|
||||
}
|
||||
@@ -172,7 +172,7 @@ MM::PageMap::GetP5eIndex(PVOID Address)
|
||||
*/
|
||||
XTAPI
|
||||
PVOID
|
||||
MM::PageMap::GetP5eVirtualAddress(PMMP5E P5ePointer)
|
||||
MM::PageMap::GetP5eVirtualAddress(IN PMMP5E P5ePointer)
|
||||
{
|
||||
return (PVOID)((((LONGLONG)P5ePointer << 61) >> 16) * PageMapInfo.Xpa);
|
||||
}
|
||||
@@ -189,7 +189,7 @@ MM::PageMap::GetP5eVirtualAddress(PMMP5E P5ePointer)
|
||||
*/
|
||||
XTAPI
|
||||
PMMPDE
|
||||
MM::PageMap::GetPdeAddress(PVOID Address)
|
||||
MM::PageMap::GetPdeAddress(IN PVOID Address)
|
||||
{
|
||||
ULONGLONG Offset;
|
||||
|
||||
@@ -210,7 +210,7 @@ MM::PageMap::GetPdeAddress(PVOID Address)
|
||||
*/
|
||||
XTAPI
|
||||
ULONG
|
||||
MM::PageMap::GetPdeIndex(PVOID Address)
|
||||
MM::PageMap::GetPdeIndex(IN PVOID Address)
|
||||
{
|
||||
/* Return PDE index */
|
||||
return ((((ULONGLONG)Address) >> MM_PDI_SHIFT) & 0x1FF);
|
||||
@@ -228,7 +228,7 @@ MM::PageMap::GetPdeIndex(PVOID Address)
|
||||
*/
|
||||
XTAPI
|
||||
PVOID
|
||||
MM::PageMap::GetPdeVirtualAddress(PMMPDE PdePointer)
|
||||
MM::PageMap::GetPdeVirtualAddress(IN PMMPDE PdePointer)
|
||||
{
|
||||
/* Return PDE virtual address */
|
||||
return (PVOID)(((LONGLONG)PdePointer << 34) >> 16);
|
||||
@@ -246,7 +246,7 @@ MM::PageMap::GetPdeVirtualAddress(PMMPDE PdePointer)
|
||||
*/
|
||||
XTAPI
|
||||
PMMPPE
|
||||
MM::PageMap::GetPpeAddress(PVOID Address)
|
||||
MM::PageMap::GetPpeAddress(IN PVOID Address)
|
||||
{
|
||||
ULONGLONG Offset;
|
||||
|
||||
@@ -267,7 +267,7 @@ MM::PageMap::GetPpeAddress(PVOID Address)
|
||||
*/
|
||||
XTAPI
|
||||
ULONG
|
||||
MM::PageMap::GetPpeIndex(PVOID Address)
|
||||
MM::PageMap::GetPpeIndex(IN PVOID Address)
|
||||
{
|
||||
/* Return PPE index */
|
||||
return ((((ULONGLONG)Address) >> MM_PPI_SHIFT) & 0x1FF);
|
||||
@@ -285,7 +285,7 @@ MM::PageMap::GetPpeIndex(PVOID Address)
|
||||
*/
|
||||
XTAPI
|
||||
PVOID
|
||||
MM::PageMap::GetPpeVirtualAddress(PMMPPE PpePointer)
|
||||
MM::PageMap::GetPpeVirtualAddress(IN PMMPPE PpePointer)
|
||||
{
|
||||
/* Return PPE virtual address */
|
||||
return (PVOID)(((LONGLONG)PpePointer << 43) >> 16);
|
||||
@@ -303,7 +303,7 @@ MM::PageMap::GetPpeVirtualAddress(PMMPPE PpePointer)
|
||||
*/
|
||||
XTAPI
|
||||
PMMPTE
|
||||
MM::PageMap::GetPteAddress(PVOID Address)
|
||||
MM::PageMap::GetPteAddress(IN PVOID Address)
|
||||
{
|
||||
ULONGLONG Offset;
|
||||
|
||||
@@ -324,7 +324,7 @@ MM::PageMap::GetPteAddress(PVOID Address)
|
||||
*/
|
||||
XTAPI
|
||||
ULONG
|
||||
MM::PageMap::GetPteIndex(PVOID Address)
|
||||
MM::PageMap::GetPteIndex(IN PVOID Address)
|
||||
{
|
||||
/* Return PTE index */
|
||||
return ((((ULONGLONG)Address) >> MM_PTI_SHIFT) & 0x1FF);
|
||||
@@ -357,7 +357,7 @@ MM::PageMap::GetPteSize(VOID)
|
||||
*/
|
||||
XTAPI
|
||||
PVOID
|
||||
MM::PageMap::GetPteVirtualAddress(PMMPTE PtePointer)
|
||||
MM::PageMap::GetPteVirtualAddress(IN PMMPTE PtePointer)
|
||||
{
|
||||
/* Return PTE virtual address */
|
||||
return (PVOID)(((LONGLONG)PtePointer << 25) >> 16);
|
||||
@@ -375,7 +375,7 @@ MM::PageMap::GetPteVirtualAddress(PMMPTE PtePointer)
|
||||
*/
|
||||
XTAPI
|
||||
PMMPXE
|
||||
MM::PageMap::GetPxeAddress(PVOID Address)
|
||||
MM::PageMap::GetPxeAddress(IN PVOID Address)
|
||||
{
|
||||
ULONGLONG Offset;
|
||||
|
||||
@@ -396,7 +396,7 @@ MM::PageMap::GetPxeAddress(PVOID Address)
|
||||
*/
|
||||
XTAPI
|
||||
ULONG
|
||||
MM::PageMap::GetPxeIndex(PVOID Address)
|
||||
MM::PageMap::GetPxeIndex(IN PVOID Address)
|
||||
{
|
||||
/* Return PXE index */
|
||||
return ((((ULONGLONG)Address) >> MM_PXI_SHIFT) & 0x1FF);
|
||||
@@ -414,7 +414,7 @@ MM::PageMap::GetPxeIndex(PVOID Address)
|
||||
*/
|
||||
XTAPI
|
||||
PVOID
|
||||
MM::PageMap::GetPxeVirtualAddress(PMMPXE PxePointer)
|
||||
MM::PageMap::GetPxeVirtualAddress(IN PMMPXE PxePointer)
|
||||
{
|
||||
/* Return PXE virtual address */
|
||||
return (PVOID)(((LONGLONG)PxePointer << 52) >> 16);
|
||||
@@ -432,7 +432,7 @@ MM::PageMap::GetPxeVirtualAddress(PMMPXE PxePointer)
|
||||
*/
|
||||
XTAPI
|
||||
BOOLEAN
|
||||
MM::PageMap::PteValid(PHARDWARE_PTE PtePointer)
|
||||
MM::PageMap::PteValid(IN PHARDWARE_PTE PtePointer)
|
||||
{
|
||||
/* Check if PTE is valid */
|
||||
return (BOOLEAN)PtePointer->Valid;
|
||||
@@ -453,8 +453,8 @@ MM::PageMap::PteValid(PHARDWARE_PTE PtePointer)
|
||||
*/
|
||||
XTAPI
|
||||
VOID
|
||||
MM::PageMap::SetNextEntry(PMMPTE Pte,
|
||||
ULONG_PTR Value)
|
||||
MM::PageMap::SetNextEntry(IN PMMPTE Pte,
|
||||
IN ULONG_PTR Value)
|
||||
{
|
||||
/* Set next entry in PTE list */
|
||||
Pte->List.NextEntry = Value;
|
||||
@@ -475,8 +475,8 @@ MM::PageMap::SetNextEntry(PMMPTE Pte,
|
||||
*/
|
||||
XTAPI
|
||||
VOID
|
||||
MM::PageMap::SetOneEntry(PMMPTE Pte,
|
||||
BOOLEAN Value)
|
||||
MM::PageMap::SetOneEntry(IN PMMPTE Pte,
|
||||
IN BOOLEAN Value)
|
||||
{
|
||||
/* Set one entry status */
|
||||
Pte->List.OneEntry = Value;
|
||||
@@ -500,9 +500,9 @@ MM::PageMap::SetOneEntry(PMMPTE Pte,
|
||||
*/
|
||||
XTAPI
|
||||
VOID
|
||||
MM::PageMap::SetPte(PHARDWARE_PTE PtePointer,
|
||||
PFN_NUMBER PageFrameNumber,
|
||||
BOOLEAN Writable)
|
||||
MM::PageMap::SetPte(IN PHARDWARE_PTE PtePointer,
|
||||
IN PFN_NUMBER PageFrameNumber,
|
||||
IN BOOLEAN Writable)
|
||||
{
|
||||
/* Set PTE */
|
||||
PtePointer->PageFrameNumber = PageFrameNumber;
|
||||
@@ -528,9 +528,9 @@ MM::PageMap::SetPte(PHARDWARE_PTE PtePointer,
|
||||
*/
|
||||
XTAPI
|
||||
VOID
|
||||
MM::PageMap::SetPteCaching(PHARDWARE_PTE PtePointer,
|
||||
BOOLEAN CacheDisable,
|
||||
BOOLEAN WriteThrough)
|
||||
MM::PageMap::SetPteCaching(IN PHARDWARE_PTE PtePointer,
|
||||
IN BOOLEAN CacheDisable,
|
||||
IN BOOLEAN WriteThrough)
|
||||
{
|
||||
/* Set caching attributes */
|
||||
PtePointer->CacheDisable = CacheDisable;
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
*/
|
||||
XTAPI
|
||||
VOID
|
||||
MM::PageMap::ClearPte(PHARDWARE_PTE PtePointer)
|
||||
MM::PageMap::ClearPte(IN PHARDWARE_PTE PtePointer)
|
||||
{
|
||||
/* Clear PTE */
|
||||
PtePointer->Long = 0;
|
||||
@@ -54,7 +54,7 @@ MM::PageMap::GetEmptyPteList(VOID)
|
||||
*/
|
||||
XTAPI
|
||||
PMMPDE
|
||||
MM::PageMap::GetPdeAddress(PVOID Address)
|
||||
MM::PageMap::GetPdeAddress(IN PVOID Address)
|
||||
{
|
||||
ULONG Offset;
|
||||
|
||||
@@ -75,7 +75,7 @@ MM::PageMap::GetPdeAddress(PVOID Address)
|
||||
*/
|
||||
XTAPI
|
||||
ULONG
|
||||
MM::PageMap::GetPdeIndex(PVOID Address)
|
||||
MM::PageMap::GetPdeIndex(IN PVOID Address)
|
||||
{
|
||||
/* Return PDE index */
|
||||
return ((((ULONG_PTR)(Address)) >> PageMapInfo.PdiShift) & (PageMapInfo.Xpa ? 0x1FF : 0x3FF));
|
||||
@@ -93,7 +93,7 @@ MM::PageMap::GetPdeIndex(PVOID Address)
|
||||
*/
|
||||
XTAPI
|
||||
PVOID
|
||||
MM::PageMap::GetPdeVirtualAddress(PMMPDE PdePointer)
|
||||
MM::PageMap::GetPdeVirtualAddress(IN PMMPDE PdePointer)
|
||||
{
|
||||
/* Return PDE virtual address */
|
||||
return ((PVOID)((ULONG)(PdePointer) << 20));
|
||||
@@ -111,7 +111,7 @@ MM::PageMap::GetPdeVirtualAddress(PMMPDE PdePointer)
|
||||
*/
|
||||
XTAPI
|
||||
PMMPPE
|
||||
MM::PageMap::GetPpeAddress(PVOID Address)
|
||||
MM::PageMap::GetPpeAddress(IN PVOID Address)
|
||||
{
|
||||
/* Return zero */
|
||||
return (PMMPPE)0;
|
||||
@@ -129,7 +129,7 @@ MM::PageMap::GetPpeAddress(PVOID Address)
|
||||
*/
|
||||
XTAPI
|
||||
ULONG
|
||||
MM::PageMap::GetPpeIndex(PVOID Address)
|
||||
MM::PageMap::GetPpeIndex(IN PVOID Address)
|
||||
{
|
||||
/* Return PPE index */
|
||||
return ((((ULONG_PTR)(Address)) >> MM_PPI_SHIFT) & 0x3) * PageMapInfo.Xpa;
|
||||
@@ -147,7 +147,7 @@ MM::PageMap::GetPpeIndex(PVOID Address)
|
||||
*/
|
||||
XTAPI
|
||||
PVOID
|
||||
MM::PageMap::GetPpeVirtualAddress(PMMPPE PpePointer)
|
||||
MM::PageMap::GetPpeVirtualAddress(IN PMMPPE PpePointer)
|
||||
{
|
||||
/* Return PPE virtual address */
|
||||
return (PVOID)((ULONG)(PpePointer) << 30);
|
||||
@@ -165,7 +165,7 @@ MM::PageMap::GetPpeVirtualAddress(PMMPPE PpePointer)
|
||||
*/
|
||||
XTAPI
|
||||
PMMPTE
|
||||
MM::PageMap::GetPteAddress(PVOID Address)
|
||||
MM::PageMap::GetPteAddress(IN PVOID Address)
|
||||
{
|
||||
ULONG Offset;
|
||||
|
||||
@@ -186,7 +186,7 @@ MM::PageMap::GetPteAddress(PVOID Address)
|
||||
*/
|
||||
XTAPI
|
||||
ULONG
|
||||
MM::PageMap::GetPteIndex(PVOID Address)
|
||||
MM::PageMap::GetPteIndex(IN PVOID Address)
|
||||
{
|
||||
/* Return PTE index */
|
||||
return ((((ULONG_PTR)(Address)) >> MM_PTI_SHIFT) & (PageMapInfo.Xpa ? 0x1FF : 0x3FF));
|
||||
@@ -204,7 +204,7 @@ MM::PageMap::GetPteIndex(PVOID Address)
|
||||
*/
|
||||
XTAPI
|
||||
PVOID
|
||||
MM::PageMap::GetPteVirtualAddress(PMMPTE PtePointer)
|
||||
MM::PageMap::GetPteVirtualAddress(IN PMMPTE PtePointer)
|
||||
{
|
||||
/* Return PTE virtual address */
|
||||
return ((PVOID)((ULONG)(PtePointer) << 10));
|
||||
@@ -225,8 +225,8 @@ MM::PageMap::GetPteVirtualAddress(PMMPTE PtePointer)
|
||||
*/
|
||||
XTAPI
|
||||
PMMPTE
|
||||
MM::PageMapBasic::AdvancePte(PMMPTE Pte,
|
||||
ULONG Count)
|
||||
MM::PageMapBasic::AdvancePte(IN PMMPTE Pte,
|
||||
IN ULONG Count)
|
||||
{
|
||||
/* Return advanced PTE pointer */
|
||||
return (PMMPTE)((ULONG_PTR)Pte + (Count * sizeof(MMPML2_PTE)));
|
||||
@@ -244,7 +244,7 @@ MM::PageMapBasic::AdvancePte(PMMPTE Pte,
|
||||
*/
|
||||
XTAPI
|
||||
ULONG_PTR
|
||||
MM::PageMapBasic::GetNextEntry(PMMPTE Pte)
|
||||
MM::PageMapBasic::GetNextEntry(IN PMMPTE Pte)
|
||||
{
|
||||
/* Return next entry in PTE list */
|
||||
return Pte->Pml2.List.NextEntry;
|
||||
@@ -262,7 +262,7 @@ MM::PageMapBasic::GetNextEntry(PMMPTE Pte)
|
||||
*/
|
||||
XTAPI
|
||||
PMMPTE
|
||||
MM::PageMapBasic::GetNextPte(PMMPTE Pte)
|
||||
MM::PageMapBasic::GetNextPte(IN PMMPTE Pte)
|
||||
{
|
||||
/* Return advanced PTE pointer */
|
||||
return AdvancePte(Pte, 1);
|
||||
@@ -280,7 +280,7 @@ MM::PageMapBasic::GetNextPte(PMMPTE Pte)
|
||||
*/
|
||||
XTAPI
|
||||
BOOLEAN
|
||||
MM::PageMapBasic::GetOneEntry(PMMPTE Pte)
|
||||
MM::PageMapBasic::GetOneEntry(IN PMMPTE Pte)
|
||||
{
|
||||
/* Return one entry status */
|
||||
return Pte->Pml2.List.OneEntry;
|
||||
@@ -339,7 +339,7 @@ MM::PageMapBasic::InitializePageMapInfo(VOID)
|
||||
*/
|
||||
XTAPI
|
||||
BOOLEAN
|
||||
MM::PageMapBasic::PteValid(PHARDWARE_PTE PtePointer)
|
||||
MM::PageMapBasic::PteValid(IN PHARDWARE_PTE PtePointer)
|
||||
{
|
||||
/* Check if PTE is valid */
|
||||
return (BOOLEAN)PtePointer->Pml2.Valid;
|
||||
@@ -360,8 +360,8 @@ MM::PageMapBasic::PteValid(PHARDWARE_PTE PtePointer)
|
||||
*/
|
||||
XTAPI
|
||||
VOID
|
||||
MM::PageMapBasic::SetNextEntry(PMMPTE Pte,
|
||||
ULONG_PTR Value)
|
||||
MM::PageMapBasic::SetNextEntry(IN PMMPTE Pte,
|
||||
IN ULONG_PTR Value)
|
||||
{
|
||||
/* Set next entry in PTE list */
|
||||
Pte->Pml2.List.NextEntry = Value;
|
||||
@@ -382,8 +382,8 @@ MM::PageMapBasic::SetNextEntry(PMMPTE Pte,
|
||||
*/
|
||||
XTAPI
|
||||
VOID
|
||||
MM::PageMapBasic::SetOneEntry(PMMPTE Pte,
|
||||
BOOLEAN Value)
|
||||
MM::PageMapBasic::SetOneEntry(IN PMMPTE Pte,
|
||||
IN BOOLEAN Value)
|
||||
{
|
||||
/* Set one entry status */
|
||||
Pte->Pml2.List.OneEntry = Value;
|
||||
@@ -407,9 +407,9 @@ MM::PageMapBasic::SetOneEntry(PMMPTE Pte,
|
||||
*/
|
||||
XTAPI
|
||||
VOID
|
||||
MM::PageMapBasic::SetPte(PHARDWARE_PTE PtePointer,
|
||||
PFN_NUMBER PageFrameNumber,
|
||||
BOOLEAN Writable)
|
||||
MM::PageMapBasic::SetPte(IN PHARDWARE_PTE PtePointer,
|
||||
IN PFN_NUMBER PageFrameNumber,
|
||||
IN BOOLEAN Writable)
|
||||
{
|
||||
/* Set PTE */
|
||||
PtePointer->Pml2.PageFrameNumber = PageFrameNumber;
|
||||
@@ -435,9 +435,9 @@ MM::PageMapBasic::SetPte(PHARDWARE_PTE PtePointer,
|
||||
*/
|
||||
XTAPI
|
||||
VOID
|
||||
MM::PageMapBasic::SetPteCaching(PHARDWARE_PTE PtePointer,
|
||||
BOOLEAN CacheDisable,
|
||||
BOOLEAN WriteThrough)
|
||||
MM::PageMapBasic::SetPteCaching(IN PHARDWARE_PTE PtePointer,
|
||||
IN BOOLEAN CacheDisable,
|
||||
IN BOOLEAN WriteThrough)
|
||||
{
|
||||
/* Set caching attributes */
|
||||
PtePointer->Pml2.CacheDisable = CacheDisable;
|
||||
@@ -459,8 +459,8 @@ MM::PageMapBasic::SetPteCaching(PHARDWARE_PTE PtePointer,
|
||||
*/
|
||||
XTAPI
|
||||
PMMPTE
|
||||
MM::PageMapXpa::AdvancePte(PMMPTE Pte,
|
||||
ULONG Count)
|
||||
MM::PageMapXpa::AdvancePte(IN PMMPTE Pte,
|
||||
IN ULONG Count)
|
||||
{
|
||||
/* Return advanced PTE pointer */
|
||||
return (PMMPTE)((ULONG_PTR)Pte + (Count * sizeof(MMPML3_PTE)));
|
||||
@@ -478,7 +478,7 @@ MM::PageMapXpa::AdvancePte(PMMPTE Pte,
|
||||
*/
|
||||
XTAPI
|
||||
ULONG_PTR
|
||||
MM::PageMapXpa::GetNextEntry(PMMPTE Pte)
|
||||
MM::PageMapXpa::GetNextEntry(IN PMMPTE Pte)
|
||||
{
|
||||
/* Return next entry in PTE list */
|
||||
return Pte->Pml3.List.NextEntry;
|
||||
@@ -496,7 +496,7 @@ MM::PageMapXpa::GetNextEntry(PMMPTE Pte)
|
||||
*/
|
||||
XTAPI
|
||||
PMMPTE
|
||||
MM::PageMapXpa::GetNextPte(PMMPTE Pte)
|
||||
MM::PageMapXpa::GetNextPte(IN PMMPTE Pte)
|
||||
{
|
||||
/* Return advanced PTE pointer */
|
||||
return AdvancePte(Pte, 1);
|
||||
@@ -514,7 +514,7 @@ MM::PageMapXpa::GetNextPte(PMMPTE Pte)
|
||||
*/
|
||||
XTAPI
|
||||
BOOLEAN
|
||||
MM::PageMapXpa::GetOneEntry(PMMPTE Pte)
|
||||
MM::PageMapXpa::GetOneEntry(IN PMMPTE Pte)
|
||||
{
|
||||
/* Return one entry status */
|
||||
return Pte->Pml3.List.OneEntry;
|
||||
@@ -573,7 +573,7 @@ MM::PageMapXpa::InitializePageMapInfo(VOID)
|
||||
*/
|
||||
XTAPI
|
||||
BOOLEAN
|
||||
MM::PageMapXpa::PteValid(PHARDWARE_PTE PtePointer)
|
||||
MM::PageMapXpa::PteValid(IN PHARDWARE_PTE PtePointer)
|
||||
{
|
||||
return (BOOLEAN)PtePointer->Pml3.Valid;
|
||||
}
|
||||
@@ -593,8 +593,8 @@ MM::PageMapXpa::PteValid(PHARDWARE_PTE PtePointer)
|
||||
*/
|
||||
XTAPI
|
||||
VOID
|
||||
MM::PageMapXpa::SetNextEntry(PMMPTE Pte,
|
||||
ULONG_PTR Value)
|
||||
MM::PageMapXpa::SetNextEntry(IN PMMPTE Pte,
|
||||
IN ULONG_PTR Value)
|
||||
{
|
||||
/* Set next entry in PTE list */
|
||||
Pte->Pml3.List.NextEntry = Value;
|
||||
@@ -615,8 +615,8 @@ MM::PageMapXpa::SetNextEntry(PMMPTE Pte,
|
||||
*/
|
||||
XTAPI
|
||||
VOID
|
||||
MM::PageMapXpa::SetOneEntry(PMMPTE Pte,
|
||||
BOOLEAN Value)
|
||||
MM::PageMapXpa::SetOneEntry(IN PMMPTE Pte,
|
||||
IN BOOLEAN Value)
|
||||
{
|
||||
/* Set one entry status */
|
||||
Pte->Pml3.List.OneEntry = Value;
|
||||
@@ -640,9 +640,9 @@ MM::PageMapXpa::SetOneEntry(PMMPTE Pte,
|
||||
*/
|
||||
XTAPI
|
||||
VOID
|
||||
MM::PageMapXpa::SetPte(PHARDWARE_PTE PtePointer,
|
||||
PFN_NUMBER PageFrameNumber,
|
||||
BOOLEAN Writable)
|
||||
MM::PageMapXpa::SetPte(IN PHARDWARE_PTE PtePointer,
|
||||
IN PFN_NUMBER PageFrameNumber,
|
||||
IN BOOLEAN Writable)
|
||||
{
|
||||
/* Set PTE */
|
||||
PtePointer->Pml3.PageFrameNumber = PageFrameNumber;
|
||||
@@ -668,9 +668,9 @@ MM::PageMapXpa::SetPte(PHARDWARE_PTE PtePointer,
|
||||
*/
|
||||
XTAPI
|
||||
VOID
|
||||
MM::PageMapXpa::SetPteCaching(PHARDWARE_PTE PtePointer,
|
||||
BOOLEAN CacheDisable,
|
||||
BOOLEAN WriteThrough)
|
||||
MM::PageMapXpa::SetPteCaching(IN PHARDWARE_PTE PtePointer,
|
||||
IN BOOLEAN CacheDisable,
|
||||
IN BOOLEAN WriteThrough)
|
||||
{
|
||||
/* Set caching attributes */
|
||||
PtePointer->Pml3.CacheDisable = CacheDisable;
|
||||
|
||||
Reference in New Issue
Block a user