Add input qualifiers to page map interface definitions
All checks were successful
Builds / ExectOS (amd64, debug) (push) Successful in 32s
Builds / ExectOS (amd64, release) (push) Successful in 31s
Builds / ExectOS (i686, debug) (push) Successful in 30s
Builds / ExectOS (i686, release) (push) Successful in 29s

This commit is contained in:
2025-11-03 20:04:21 +01:00
parent dfb0284427
commit c28c3f8344
4 changed files with 164 additions and 164 deletions

View File

@@ -21,41 +21,41 @@ namespace MM
MMPAGEMAP_INFO PageMapInfo; MMPAGEMAP_INFO PageMapInfo;
public: public:
XTAPI PMMPTE AdvancePte(PMMPTE Pte, XTAPI PMMPTE AdvancePte(IN PMMPTE Pte,
ULONG Count); IN ULONG Count);
XTAPI VOID ClearPte(PHARDWARE_PTE PtePointer); XTAPI VOID ClearPte(IN PHARDWARE_PTE PtePointer);
XTAPI ULONGLONG GetEmptyPteList(VOID); XTAPI ULONGLONG GetEmptyPteList(VOID);
XTAPI ULONG_PTR GetNextEntry(PMMPTE Pte); XTAPI ULONG_PTR GetNextEntry(IN PMMPTE Pte);
XTAPI PMMPTE GetNextPte(PMMPTE Pte); XTAPI PMMPTE GetNextPte(IN PMMPTE Pte);
XTAPI BOOLEAN GetOneEntry(PMMPTE Pte); XTAPI BOOLEAN GetOneEntry(IN PMMPTE Pte);
XTAPI PMMP5E GetP5eAddress(PVOID Address); XTAPI PMMP5E GetP5eAddress(IN PVOID Address);
XTAPI ULONG GetP5eIndex(PVOID Address); XTAPI ULONG GetP5eIndex(IN PVOID Address);
XTAPI PVOID GetP5eVirtualAddress(PMMP5E P5ePointer); XTAPI PVOID GetP5eVirtualAddress(IN PMMP5E P5ePointer);
XTAPI PMMPDE GetPdeAddress(PVOID Address); XTAPI PMMPDE GetPdeAddress(IN PVOID Address);
XTAPI ULONG GetPdeIndex(PVOID Address); XTAPI ULONG GetPdeIndex(IN PVOID Address);
XTAPI PVOID GetPdeVirtualAddress(PMMPDE PdePointer); XTAPI PVOID GetPdeVirtualAddress(IN PMMPDE PdePointer);
XTAPI PMMPPE GetPpeAddress(PVOID Address); XTAPI PMMPPE GetPpeAddress(IN PVOID Address);
XTAPI ULONG GetPpeIndex(PVOID Address); XTAPI ULONG GetPpeIndex(IN PVOID Address);
XTAPI PVOID GetPpeVirtualAddress(PMMPPE PpePointer); XTAPI PVOID GetPpeVirtualAddress(IN PMMPPE PpePointer);
XTAPI PMMPTE GetPteAddress(PVOID Address); XTAPI PMMPTE GetPteAddress(IN PVOID Address);
XTAPI ULONG GetPteIndex(PVOID Address); XTAPI ULONG GetPteIndex(IN PVOID Address);
XTAPI ULONG GetPteSize(VOID); XTAPI ULONG GetPteSize(VOID);
XTAPI PVOID GetPteVirtualAddress(PMMPTE PtePointer); XTAPI PVOID GetPteVirtualAddress(IN PMMPTE PtePointer);
XTAPI PMMPXE GetPxeAddress(PVOID Address); XTAPI PMMPXE GetPxeAddress(IN PVOID Address);
XTAPI ULONG GetPxeIndex(PVOID Address); XTAPI ULONG GetPxeIndex(IN PVOID Address);
XTAPI PVOID GetPxeVirtualAddress(PMMPXE PxePointer); XTAPI PVOID GetPxeVirtualAddress(IN PMMPXE PxePointer);
VIRTUAL XTAPI VOID InitializePageMapInfo(VOID) = 0; VIRTUAL XTAPI VOID InitializePageMapInfo(VOID) = 0;
XTAPI BOOLEAN PteValid(PHARDWARE_PTE PtePointer); XTAPI BOOLEAN PteValid(IN PHARDWARE_PTE PtePointer);
XTAPI VOID SetNextEntry(PMMPTE Pte, XTAPI VOID SetNextEntry(IN PMMPTE Pte,
ULONG_PTR Value); IN ULONG_PTR Value);
XTAPI VOID SetOneEntry(PMMPTE Pte, XTAPI VOID SetOneEntry(IN PMMPTE Pte,
BOOLEAN Value); IN BOOLEAN Value);
XTAPI VOID SetPte(PHARDWARE_PTE PtePointer, XTAPI VOID SetPte(IN PHARDWARE_PTE PtePointer,
PFN_NUMBER PageFrameNumber, IN PFN_NUMBER PageFrameNumber,
BOOLEAN Writable); IN BOOLEAN Writable);
XTAPI VOID SetPteCaching(PHARDWARE_PTE PtePointer, XTAPI VOID SetPteCaching(IN PHARDWARE_PTE PtePointer,
BOOLEAN CacheDisable, IN BOOLEAN CacheDisable,
BOOLEAN WriteThrough); IN BOOLEAN WriteThrough);
} PAGEMAP, *PPAGEMAP; } PAGEMAP, *PPAGEMAP;
class PageMapBasic final : public PageMap class PageMapBasic final : public PageMap

View File

@@ -21,81 +21,81 @@ namespace MM
MMPAGEMAP_INFO PageMapInfo; MMPAGEMAP_INFO PageMapInfo;
public: public:
VIRTUAL XTAPI PMMPTE AdvancePte(PMMPTE Pte, VIRTUAL XTAPI PMMPTE AdvancePte(IN PMMPTE Pte,
ULONG Count) = 0; IN ULONG Count) = 0;
XTAPI VOID ClearPte(PHARDWARE_PTE PtePointer); XTAPI VOID ClearPte(IN PHARDWARE_PTE PtePointer);
XTAPI ULONG GetEmptyPteList(VOID); XTAPI ULONG GetEmptyPteList(VOID);
VIRTUAL XTAPI ULONG_PTR GetNextEntry(PMMPTE Pte) = 0; VIRTUAL XTAPI ULONG_PTR GetNextEntry(IN PMMPTE Pte) = 0;
VIRTUAL XTAPI PMMPTE GetNextPte(PMMPTE Pte) = 0; VIRTUAL XTAPI PMMPTE GetNextPte(IN PMMPTE Pte) = 0;
VIRTUAL XTAPI BOOLEAN GetOneEntry(PMMPTE Pte) = 0; VIRTUAL XTAPI BOOLEAN GetOneEntry(IN PMMPTE Pte) = 0;
XTAPI PMMPDE GetPdeAddress(PVOID Address); XTAPI PMMPDE GetPdeAddress(IN PVOID Address);
XTAPI ULONG GetPdeIndex(PVOID Address); XTAPI ULONG GetPdeIndex(IN PVOID Address);
XTAPI PVOID GetPdeVirtualAddress(PMMPDE PdePointer); XTAPI PVOID GetPdeVirtualAddress(IN PMMPDE PdePointer);
XTAPI PMMPPE GetPpeAddress(PVOID Address); XTAPI PMMPPE GetPpeAddress(IN PVOID Address);
XTAPI ULONG GetPpeIndex(PVOID Address); XTAPI ULONG GetPpeIndex(IN PVOID Address);
XTAPI PVOID GetPpeVirtualAddress(PMMPPE PpePointer); XTAPI PVOID GetPpeVirtualAddress(IN PMMPPE PpePointer);
XTAPI PMMPTE GetPteAddress(PVOID Address); XTAPI PMMPTE GetPteAddress(IN PVOID Address);
XTAPI ULONG GetPteIndex(PVOID Address); XTAPI ULONG GetPteIndex(IN PVOID Address);
VIRTUAL XTAPI ULONG GetPteSize(VOID) = 0; 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 VOID InitializePageMapInfo(VOID) = 0;
VIRTUAL XTAPI BOOLEAN PteValid(PHARDWARE_PTE PtePointer) = 0; VIRTUAL XTAPI BOOLEAN PteValid(IN PHARDWARE_PTE PtePointer) = 0;
VIRTUAL XTAPI VOID SetNextEntry(PMMPTE Pte, VIRTUAL XTAPI VOID SetNextEntry(IN PMMPTE Pte,
ULONG_PTR Value) = 0; IN ULONG_PTR Value) = 0;
VIRTUAL XTAPI VOID SetOneEntry(PMMPTE Pte, VIRTUAL XTAPI VOID SetOneEntry(IN PMMPTE Pte,
BOOLEAN Value) = 0; IN BOOLEAN Value) = 0;
VIRTUAL XTAPI VOID SetPte(PHARDWARE_PTE PtePointer, VIRTUAL XTAPI VOID SetPte(IN PHARDWARE_PTE PtePointer,
PFN_NUMBER PageFrameNumber, IN PFN_NUMBER PageFrameNumber,
BOOLEAN Writable) = 0; IN BOOLEAN Writable) = 0;
VIRTUAL XTAPI VOID SetPteCaching(PHARDWARE_PTE PtePointer, VIRTUAL XTAPI VOID SetPteCaching(IN PHARDWARE_PTE PtePointer,
BOOLEAN CacheDisable, IN BOOLEAN CacheDisable,
BOOLEAN WriteThrough) = 0; IN BOOLEAN WriteThrough) = 0;
} PAGEMAP, *PPAGEMAP; } PAGEMAP, *PPAGEMAP;
class PageMapBasic final : public PageMap class PageMapBasic final : public PageMap
{ {
public: public:
XTAPI PMMPTE AdvancePte(PMMPTE Pte, XTAPI PMMPTE AdvancePte(IN PMMPTE Pte,
ULONG Count); IN ULONG Count);
XTAPI ULONG_PTR GetNextEntry(PMMPTE Pte); XTAPI ULONG_PTR GetNextEntry(IN PMMPTE Pte);
XTAPI PMMPTE GetNextPte(PMMPTE Pte); XTAPI PMMPTE GetNextPte(IN PMMPTE Pte);
XTAPI BOOLEAN GetOneEntry(PMMPTE Pte); XTAPI BOOLEAN GetOneEntry(IN PMMPTE Pte);
XTAPI ULONG GetPteSize(VOID); XTAPI ULONG GetPteSize(VOID);
XTAPI VOID InitializePageMapInfo(VOID); XTAPI VOID InitializePageMapInfo(VOID);
XTAPI BOOLEAN PteValid(PHARDWARE_PTE PtePointer); XTAPI BOOLEAN PteValid(IN PHARDWARE_PTE PtePointer);
XTAPI VOID SetNextEntry(PMMPTE Pte, XTAPI VOID SetNextEntry(IN PMMPTE Pte,
ULONG_PTR Value); IN ULONG_PTR Value);
XTAPI VOID SetOneEntry(PMMPTE Pte, XTAPI VOID SetOneEntry(IN PMMPTE Pte,
BOOLEAN Value); IN BOOLEAN Value);
XTAPI VOID SetPte(PHARDWARE_PTE PtePointer, XTAPI VOID SetPte(IN PHARDWARE_PTE PtePointer,
PFN_NUMBER PageFrameNumber, IN PFN_NUMBER PageFrameNumber,
BOOLEAN Writable); IN BOOLEAN Writable);
XTAPI VOID SetPteCaching(PHARDWARE_PTE PtePointer, XTAPI VOID SetPteCaching(IN PHARDWARE_PTE PtePointer,
BOOLEAN CacheDisable, IN BOOLEAN CacheDisable,
BOOLEAN WriteThrough); IN BOOLEAN WriteThrough);
}; };
class PageMapXpa final : public PageMap class PageMapXpa final : public PageMap
{ {
public: public:
XTAPI PMMPTE AdvancePte(PMMPTE Pte, XTAPI PMMPTE AdvancePte(IN PMMPTE Pte,
ULONG Count); IN ULONG Count);
XTAPI ULONG_PTR GetNextEntry(PMMPTE Pte); XTAPI ULONG_PTR GetNextEntry(IN PMMPTE Pte);
XTAPI PMMPTE GetNextPte(PMMPTE Pte); XTAPI PMMPTE GetNextPte(IN PMMPTE Pte);
XTAPI BOOLEAN GetOneEntry(PMMPTE Pte); XTAPI BOOLEAN GetOneEntry(IN PMMPTE Pte);
XTAPI ULONG GetPteSize(VOID); XTAPI ULONG GetPteSize(VOID);
XTAPI VOID InitializePageMapInfo(VOID); XTAPI VOID InitializePageMapInfo(VOID);
XTAPI BOOLEAN PteValid(PHARDWARE_PTE PtePointer); XTAPI BOOLEAN PteValid(IN PHARDWARE_PTE PtePointer);
XTAPI VOID SetNextEntry(PMMPTE Pte, XTAPI VOID SetNextEntry(IN PMMPTE Pte,
ULONG_PTR Value); IN ULONG_PTR Value);
XTAPI VOID SetOneEntry(PMMPTE Pte, XTAPI VOID SetOneEntry(IN PMMPTE Pte,
BOOLEAN Value); IN BOOLEAN Value);
XTAPI VOID SetPte(PHARDWARE_PTE PtePointer, XTAPI VOID SetPte(IN PHARDWARE_PTE PtePointer,
PFN_NUMBER PageFrameNumber, IN PFN_NUMBER PageFrameNumber,
BOOLEAN Writable); IN BOOLEAN Writable);
XTAPI VOID SetPteCaching(PHARDWARE_PTE PtePointer, XTAPI VOID SetPteCaching(IN PHARDWARE_PTE PtePointer,
BOOLEAN CacheDisable, IN BOOLEAN CacheDisable,
BOOLEAN WriteThrough); IN BOOLEAN WriteThrough);
}; };
} }

View File

@@ -24,8 +24,8 @@
*/ */
XTAPI XTAPI
PMMPTE PMMPTE
MM::PageMap::AdvancePte(PMMPTE Pte, MM::PageMap::AdvancePte(IN PMMPTE Pte,
ULONG Count) IN ULONG Count)
{ {
/* Return advanced PTE pointer */ /* Return advanced PTE pointer */
return (PMMPTE)((ULONG_PTR)Pte + (Count * sizeof(MMPTE))); return (PMMPTE)((ULONG_PTR)Pte + (Count * sizeof(MMPTE)));
@@ -43,7 +43,7 @@ MM::PageMap::AdvancePte(PMMPTE Pte,
*/ */
XTAPI XTAPI
VOID VOID
MM::PageMap::ClearPte(PHARDWARE_PTE PtePointer) MM::PageMap::ClearPte(IN PHARDWARE_PTE PtePointer)
{ {
/* Clear PTE */ /* Clear PTE */
PtePointer->CacheDisable = 0; PtePointer->CacheDisable = 0;
@@ -80,7 +80,7 @@ MM::PageMap::GetEmptyPteList(VOID)
*/ */
XTAPI XTAPI
ULONG_PTR ULONG_PTR
MM::PageMap::GetNextEntry(PMMPTE Pte) MM::PageMap::GetNextEntry(IN PMMPTE Pte)
{ {
/* Return next entry in PTE list */ /* Return next entry in PTE list */
return Pte->List.NextEntry; return Pte->List.NextEntry;
@@ -98,7 +98,7 @@ MM::PageMap::GetNextEntry(PMMPTE Pte)
*/ */
XTAPI XTAPI
PMMPTE PMMPTE
MM::PageMap::GetNextPte(PMMPTE Pte) MM::PageMap::GetNextPte(IN PMMPTE Pte)
{ {
/* Return advanced PTE pointer */ /* Return advanced PTE pointer */
return AdvancePte(Pte, 1); return AdvancePte(Pte, 1);
@@ -116,7 +116,7 @@ MM::PageMap::GetNextPte(PMMPTE Pte)
*/ */
XTAPI XTAPI
BOOLEAN BOOLEAN
MM::PageMap::GetOneEntry(PMMPTE Pte) MM::PageMap::GetOneEntry(IN PMMPTE Pte)
{ {
/* Return one entry status */ /* Return one entry status */
return Pte->List.OneEntry; return Pte->List.OneEntry;
@@ -134,7 +134,7 @@ MM::PageMap::GetOneEntry(PMMPTE Pte)
*/ */
XTAPI XTAPI
PMMP5E PMMP5E
MM::PageMap::GetP5eAddress(PVOID Address) MM::PageMap::GetP5eAddress(IN PVOID Address)
{ {
ULONGLONG Offset; ULONGLONG Offset;
@@ -155,7 +155,7 @@ MM::PageMap::GetP5eAddress(PVOID Address)
*/ */
XTAPI XTAPI
ULONG ULONG
MM::PageMap::GetP5eIndex(PVOID Address) MM::PageMap::GetP5eIndex(IN PVOID Address)
{ {
return (((((ULONGLONG)Address) >> MM_P5I_SHIFT) & 0x1FF) * PageMapInfo.Xpa); return (((((ULONGLONG)Address) >> MM_P5I_SHIFT) & 0x1FF) * PageMapInfo.Xpa);
} }
@@ -172,7 +172,7 @@ MM::PageMap::GetP5eIndex(PVOID Address)
*/ */
XTAPI XTAPI
PVOID PVOID
MM::PageMap::GetP5eVirtualAddress(PMMP5E P5ePointer) MM::PageMap::GetP5eVirtualAddress(IN PMMP5E P5ePointer)
{ {
return (PVOID)((((LONGLONG)P5ePointer << 61) >> 16) * PageMapInfo.Xpa); return (PVOID)((((LONGLONG)P5ePointer << 61) >> 16) * PageMapInfo.Xpa);
} }
@@ -189,7 +189,7 @@ MM::PageMap::GetP5eVirtualAddress(PMMP5E P5ePointer)
*/ */
XTAPI XTAPI
PMMPDE PMMPDE
MM::PageMap::GetPdeAddress(PVOID Address) MM::PageMap::GetPdeAddress(IN PVOID Address)
{ {
ULONGLONG Offset; ULONGLONG Offset;
@@ -210,7 +210,7 @@ MM::PageMap::GetPdeAddress(PVOID Address)
*/ */
XTAPI XTAPI
ULONG ULONG
MM::PageMap::GetPdeIndex(PVOID Address) MM::PageMap::GetPdeIndex(IN PVOID Address)
{ {
/* Return PDE index */ /* Return PDE index */
return ((((ULONGLONG)Address) >> MM_PDI_SHIFT) & 0x1FF); return ((((ULONGLONG)Address) >> MM_PDI_SHIFT) & 0x1FF);
@@ -228,7 +228,7 @@ MM::PageMap::GetPdeIndex(PVOID Address)
*/ */
XTAPI XTAPI
PVOID PVOID
MM::PageMap::GetPdeVirtualAddress(PMMPDE PdePointer) MM::PageMap::GetPdeVirtualAddress(IN PMMPDE PdePointer)
{ {
/* Return PDE virtual address */ /* Return PDE virtual address */
return (PVOID)(((LONGLONG)PdePointer << 34) >> 16); return (PVOID)(((LONGLONG)PdePointer << 34) >> 16);
@@ -246,7 +246,7 @@ MM::PageMap::GetPdeVirtualAddress(PMMPDE PdePointer)
*/ */
XTAPI XTAPI
PMMPPE PMMPPE
MM::PageMap::GetPpeAddress(PVOID Address) MM::PageMap::GetPpeAddress(IN PVOID Address)
{ {
ULONGLONG Offset; ULONGLONG Offset;
@@ -267,7 +267,7 @@ MM::PageMap::GetPpeAddress(PVOID Address)
*/ */
XTAPI XTAPI
ULONG ULONG
MM::PageMap::GetPpeIndex(PVOID Address) MM::PageMap::GetPpeIndex(IN PVOID Address)
{ {
/* Return PPE index */ /* Return PPE index */
return ((((ULONGLONG)Address) >> MM_PPI_SHIFT) & 0x1FF); return ((((ULONGLONG)Address) >> MM_PPI_SHIFT) & 0x1FF);
@@ -285,7 +285,7 @@ MM::PageMap::GetPpeIndex(PVOID Address)
*/ */
XTAPI XTAPI
PVOID PVOID
MM::PageMap::GetPpeVirtualAddress(PMMPPE PpePointer) MM::PageMap::GetPpeVirtualAddress(IN PMMPPE PpePointer)
{ {
/* Return PPE virtual address */ /* Return PPE virtual address */
return (PVOID)(((LONGLONG)PpePointer << 43) >> 16); return (PVOID)(((LONGLONG)PpePointer << 43) >> 16);
@@ -303,7 +303,7 @@ MM::PageMap::GetPpeVirtualAddress(PMMPPE PpePointer)
*/ */
XTAPI XTAPI
PMMPTE PMMPTE
MM::PageMap::GetPteAddress(PVOID Address) MM::PageMap::GetPteAddress(IN PVOID Address)
{ {
ULONGLONG Offset; ULONGLONG Offset;
@@ -324,7 +324,7 @@ MM::PageMap::GetPteAddress(PVOID Address)
*/ */
XTAPI XTAPI
ULONG ULONG
MM::PageMap::GetPteIndex(PVOID Address) MM::PageMap::GetPteIndex(IN PVOID Address)
{ {
/* Return PTE index */ /* Return PTE index */
return ((((ULONGLONG)Address) >> MM_PTI_SHIFT) & 0x1FF); return ((((ULONGLONG)Address) >> MM_PTI_SHIFT) & 0x1FF);
@@ -357,7 +357,7 @@ MM::PageMap::GetPteSize(VOID)
*/ */
XTAPI XTAPI
PVOID PVOID
MM::PageMap::GetPteVirtualAddress(PMMPTE PtePointer) MM::PageMap::GetPteVirtualAddress(IN PMMPTE PtePointer)
{ {
/* Return PTE virtual address */ /* Return PTE virtual address */
return (PVOID)(((LONGLONG)PtePointer << 25) >> 16); return (PVOID)(((LONGLONG)PtePointer << 25) >> 16);
@@ -375,7 +375,7 @@ MM::PageMap::GetPteVirtualAddress(PMMPTE PtePointer)
*/ */
XTAPI XTAPI
PMMPXE PMMPXE
MM::PageMap::GetPxeAddress(PVOID Address) MM::PageMap::GetPxeAddress(IN PVOID Address)
{ {
ULONGLONG Offset; ULONGLONG Offset;
@@ -396,7 +396,7 @@ MM::PageMap::GetPxeAddress(PVOID Address)
*/ */
XTAPI XTAPI
ULONG ULONG
MM::PageMap::GetPxeIndex(PVOID Address) MM::PageMap::GetPxeIndex(IN PVOID Address)
{ {
/* Return PXE index */ /* Return PXE index */
return ((((ULONGLONG)Address) >> MM_PXI_SHIFT) & 0x1FF); return ((((ULONGLONG)Address) >> MM_PXI_SHIFT) & 0x1FF);
@@ -414,7 +414,7 @@ MM::PageMap::GetPxeIndex(PVOID Address)
*/ */
XTAPI XTAPI
PVOID PVOID
MM::PageMap::GetPxeVirtualAddress(PMMPXE PxePointer) MM::PageMap::GetPxeVirtualAddress(IN PMMPXE PxePointer)
{ {
/* Return PXE virtual address */ /* Return PXE virtual address */
return (PVOID)(((LONGLONG)PxePointer << 52) >> 16); return (PVOID)(((LONGLONG)PxePointer << 52) >> 16);
@@ -432,7 +432,7 @@ MM::PageMap::GetPxeVirtualAddress(PMMPXE PxePointer)
*/ */
XTAPI XTAPI
BOOLEAN BOOLEAN
MM::PageMap::PteValid(PHARDWARE_PTE PtePointer) MM::PageMap::PteValid(IN PHARDWARE_PTE PtePointer)
{ {
/* Check if PTE is valid */ /* Check if PTE is valid */
return (BOOLEAN)PtePointer->Valid; return (BOOLEAN)PtePointer->Valid;
@@ -453,8 +453,8 @@ MM::PageMap::PteValid(PHARDWARE_PTE PtePointer)
*/ */
XTAPI XTAPI
VOID VOID
MM::PageMap::SetNextEntry(PMMPTE Pte, MM::PageMap::SetNextEntry(IN PMMPTE Pte,
ULONG_PTR Value) IN ULONG_PTR Value)
{ {
/* Set next entry in PTE list */ /* Set next entry in PTE list */
Pte->List.NextEntry = Value; Pte->List.NextEntry = Value;
@@ -475,8 +475,8 @@ MM::PageMap::SetNextEntry(PMMPTE Pte,
*/ */
XTAPI XTAPI
VOID VOID
MM::PageMap::SetOneEntry(PMMPTE Pte, MM::PageMap::SetOneEntry(IN PMMPTE Pte,
BOOLEAN Value) IN BOOLEAN Value)
{ {
/* Set one entry status */ /* Set one entry status */
Pte->List.OneEntry = Value; Pte->List.OneEntry = Value;
@@ -500,9 +500,9 @@ MM::PageMap::SetOneEntry(PMMPTE Pte,
*/ */
XTAPI XTAPI
VOID VOID
MM::PageMap::SetPte(PHARDWARE_PTE PtePointer, MM::PageMap::SetPte(IN PHARDWARE_PTE PtePointer,
PFN_NUMBER PageFrameNumber, IN PFN_NUMBER PageFrameNumber,
BOOLEAN Writable) IN BOOLEAN Writable)
{ {
/* Set PTE */ /* Set PTE */
PtePointer->PageFrameNumber = PageFrameNumber; PtePointer->PageFrameNumber = PageFrameNumber;
@@ -528,9 +528,9 @@ MM::PageMap::SetPte(PHARDWARE_PTE PtePointer,
*/ */
XTAPI XTAPI
VOID VOID
MM::PageMap::SetPteCaching(PHARDWARE_PTE PtePointer, MM::PageMap::SetPteCaching(IN PHARDWARE_PTE PtePointer,
BOOLEAN CacheDisable, IN BOOLEAN CacheDisable,
BOOLEAN WriteThrough) IN BOOLEAN WriteThrough)
{ {
/* Set caching attributes */ /* Set caching attributes */
PtePointer->CacheDisable = CacheDisable; PtePointer->CacheDisable = CacheDisable;

View File

@@ -21,7 +21,7 @@
*/ */
XTAPI XTAPI
VOID VOID
MM::PageMap::ClearPte(PHARDWARE_PTE PtePointer) MM::PageMap::ClearPte(IN PHARDWARE_PTE PtePointer)
{ {
/* Clear PTE */ /* Clear PTE */
PtePointer->Long = 0; PtePointer->Long = 0;
@@ -54,7 +54,7 @@ MM::PageMap::GetEmptyPteList(VOID)
*/ */
XTAPI XTAPI
PMMPDE PMMPDE
MM::PageMap::GetPdeAddress(PVOID Address) MM::PageMap::GetPdeAddress(IN PVOID Address)
{ {
ULONG Offset; ULONG Offset;
@@ -75,7 +75,7 @@ MM::PageMap::GetPdeAddress(PVOID Address)
*/ */
XTAPI XTAPI
ULONG ULONG
MM::PageMap::GetPdeIndex(PVOID Address) MM::PageMap::GetPdeIndex(IN PVOID Address)
{ {
/* Return PDE index */ /* Return PDE index */
return ((((ULONG_PTR)(Address)) >> PageMapInfo.PdiShift) & (PageMapInfo.Xpa ? 0x1FF : 0x3FF)); return ((((ULONG_PTR)(Address)) >> PageMapInfo.PdiShift) & (PageMapInfo.Xpa ? 0x1FF : 0x3FF));
@@ -93,7 +93,7 @@ MM::PageMap::GetPdeIndex(PVOID Address)
*/ */
XTAPI XTAPI
PVOID PVOID
MM::PageMap::GetPdeVirtualAddress(PMMPDE PdePointer) MM::PageMap::GetPdeVirtualAddress(IN PMMPDE PdePointer)
{ {
/* Return PDE virtual address */ /* Return PDE virtual address */
return ((PVOID)((ULONG)(PdePointer) << 20)); return ((PVOID)((ULONG)(PdePointer) << 20));
@@ -111,7 +111,7 @@ MM::PageMap::GetPdeVirtualAddress(PMMPDE PdePointer)
*/ */
XTAPI XTAPI
PMMPPE PMMPPE
MM::PageMap::GetPpeAddress(PVOID Address) MM::PageMap::GetPpeAddress(IN PVOID Address)
{ {
/* Return zero */ /* Return zero */
return (PMMPPE)0; return (PMMPPE)0;
@@ -129,7 +129,7 @@ MM::PageMap::GetPpeAddress(PVOID Address)
*/ */
XTAPI XTAPI
ULONG ULONG
MM::PageMap::GetPpeIndex(PVOID Address) MM::PageMap::GetPpeIndex(IN PVOID Address)
{ {
/* Return PPE index */ /* Return PPE index */
return ((((ULONG_PTR)(Address)) >> MM_PPI_SHIFT) & 0x3) * PageMapInfo.Xpa; return ((((ULONG_PTR)(Address)) >> MM_PPI_SHIFT) & 0x3) * PageMapInfo.Xpa;
@@ -147,7 +147,7 @@ MM::PageMap::GetPpeIndex(PVOID Address)
*/ */
XTAPI XTAPI
PVOID PVOID
MM::PageMap::GetPpeVirtualAddress(PMMPPE PpePointer) MM::PageMap::GetPpeVirtualAddress(IN PMMPPE PpePointer)
{ {
/* Return PPE virtual address */ /* Return PPE virtual address */
return (PVOID)((ULONG)(PpePointer) << 30); return (PVOID)((ULONG)(PpePointer) << 30);
@@ -165,7 +165,7 @@ MM::PageMap::GetPpeVirtualAddress(PMMPPE PpePointer)
*/ */
XTAPI XTAPI
PMMPTE PMMPTE
MM::PageMap::GetPteAddress(PVOID Address) MM::PageMap::GetPteAddress(IN PVOID Address)
{ {
ULONG Offset; ULONG Offset;
@@ -186,7 +186,7 @@ MM::PageMap::GetPteAddress(PVOID Address)
*/ */
XTAPI XTAPI
ULONG ULONG
MM::PageMap::GetPteIndex(PVOID Address) MM::PageMap::GetPteIndex(IN PVOID Address)
{ {
/* Return PTE index */ /* Return PTE index */
return ((((ULONG_PTR)(Address)) >> MM_PTI_SHIFT) & (PageMapInfo.Xpa ? 0x1FF : 0x3FF)); return ((((ULONG_PTR)(Address)) >> MM_PTI_SHIFT) & (PageMapInfo.Xpa ? 0x1FF : 0x3FF));
@@ -204,7 +204,7 @@ MM::PageMap::GetPteIndex(PVOID Address)
*/ */
XTAPI XTAPI
PVOID PVOID
MM::PageMap::GetPteVirtualAddress(PMMPTE PtePointer) MM::PageMap::GetPteVirtualAddress(IN PMMPTE PtePointer)
{ {
/* Return PTE virtual address */ /* Return PTE virtual address */
return ((PVOID)((ULONG)(PtePointer) << 10)); return ((PVOID)((ULONG)(PtePointer) << 10));
@@ -225,8 +225,8 @@ MM::PageMap::GetPteVirtualAddress(PMMPTE PtePointer)
*/ */
XTAPI XTAPI
PMMPTE PMMPTE
MM::PageMapBasic::AdvancePte(PMMPTE Pte, MM::PageMapBasic::AdvancePte(IN PMMPTE Pte,
ULONG Count) IN ULONG Count)
{ {
/* Return advanced PTE pointer */ /* Return advanced PTE pointer */
return (PMMPTE)((ULONG_PTR)Pte + (Count * sizeof(MMPML2_PTE))); return (PMMPTE)((ULONG_PTR)Pte + (Count * sizeof(MMPML2_PTE)));
@@ -244,7 +244,7 @@ MM::PageMapBasic::AdvancePte(PMMPTE Pte,
*/ */
XTAPI XTAPI
ULONG_PTR ULONG_PTR
MM::PageMapBasic::GetNextEntry(PMMPTE Pte) MM::PageMapBasic::GetNextEntry(IN PMMPTE Pte)
{ {
/* Return next entry in PTE list */ /* Return next entry in PTE list */
return Pte->Pml2.List.NextEntry; return Pte->Pml2.List.NextEntry;
@@ -262,7 +262,7 @@ MM::PageMapBasic::GetNextEntry(PMMPTE Pte)
*/ */
XTAPI XTAPI
PMMPTE PMMPTE
MM::PageMapBasic::GetNextPte(PMMPTE Pte) MM::PageMapBasic::GetNextPte(IN PMMPTE Pte)
{ {
/* Return advanced PTE pointer */ /* Return advanced PTE pointer */
return AdvancePte(Pte, 1); return AdvancePte(Pte, 1);
@@ -280,7 +280,7 @@ MM::PageMapBasic::GetNextPte(PMMPTE Pte)
*/ */
XTAPI XTAPI
BOOLEAN BOOLEAN
MM::PageMapBasic::GetOneEntry(PMMPTE Pte) MM::PageMapBasic::GetOneEntry(IN PMMPTE Pte)
{ {
/* Return one entry status */ /* Return one entry status */
return Pte->Pml2.List.OneEntry; return Pte->Pml2.List.OneEntry;
@@ -339,7 +339,7 @@ MM::PageMapBasic::InitializePageMapInfo(VOID)
*/ */
XTAPI XTAPI
BOOLEAN BOOLEAN
MM::PageMapBasic::PteValid(PHARDWARE_PTE PtePointer) MM::PageMapBasic::PteValid(IN PHARDWARE_PTE PtePointer)
{ {
/* Check if PTE is valid */ /* Check if PTE is valid */
return (BOOLEAN)PtePointer->Pml2.Valid; return (BOOLEAN)PtePointer->Pml2.Valid;
@@ -360,8 +360,8 @@ MM::PageMapBasic::PteValid(PHARDWARE_PTE PtePointer)
*/ */
XTAPI XTAPI
VOID VOID
MM::PageMapBasic::SetNextEntry(PMMPTE Pte, MM::PageMapBasic::SetNextEntry(IN PMMPTE Pte,
ULONG_PTR Value) IN ULONG_PTR Value)
{ {
/* Set next entry in PTE list */ /* Set next entry in PTE list */
Pte->Pml2.List.NextEntry = Value; Pte->Pml2.List.NextEntry = Value;
@@ -382,8 +382,8 @@ MM::PageMapBasic::SetNextEntry(PMMPTE Pte,
*/ */
XTAPI XTAPI
VOID VOID
MM::PageMapBasic::SetOneEntry(PMMPTE Pte, MM::PageMapBasic::SetOneEntry(IN PMMPTE Pte,
BOOLEAN Value) IN BOOLEAN Value)
{ {
/* Set one entry status */ /* Set one entry status */
Pte->Pml2.List.OneEntry = Value; Pte->Pml2.List.OneEntry = Value;
@@ -407,9 +407,9 @@ MM::PageMapBasic::SetOneEntry(PMMPTE Pte,
*/ */
XTAPI XTAPI
VOID VOID
MM::PageMapBasic::SetPte(PHARDWARE_PTE PtePointer, MM::PageMapBasic::SetPte(IN PHARDWARE_PTE PtePointer,
PFN_NUMBER PageFrameNumber, IN PFN_NUMBER PageFrameNumber,
BOOLEAN Writable) IN BOOLEAN Writable)
{ {
/* Set PTE */ /* Set PTE */
PtePointer->Pml2.PageFrameNumber = PageFrameNumber; PtePointer->Pml2.PageFrameNumber = PageFrameNumber;
@@ -435,9 +435,9 @@ MM::PageMapBasic::SetPte(PHARDWARE_PTE PtePointer,
*/ */
XTAPI XTAPI
VOID VOID
MM::PageMapBasic::SetPteCaching(PHARDWARE_PTE PtePointer, MM::PageMapBasic::SetPteCaching(IN PHARDWARE_PTE PtePointer,
BOOLEAN CacheDisable, IN BOOLEAN CacheDisable,
BOOLEAN WriteThrough) IN BOOLEAN WriteThrough)
{ {
/* Set caching attributes */ /* Set caching attributes */
PtePointer->Pml2.CacheDisable = CacheDisable; PtePointer->Pml2.CacheDisable = CacheDisable;
@@ -459,8 +459,8 @@ MM::PageMapBasic::SetPteCaching(PHARDWARE_PTE PtePointer,
*/ */
XTAPI XTAPI
PMMPTE PMMPTE
MM::PageMapXpa::AdvancePte(PMMPTE Pte, MM::PageMapXpa::AdvancePte(IN PMMPTE Pte,
ULONG Count) IN ULONG Count)
{ {
/* Return advanced PTE pointer */ /* Return advanced PTE pointer */
return (PMMPTE)((ULONG_PTR)Pte + (Count * sizeof(MMPML3_PTE))); return (PMMPTE)((ULONG_PTR)Pte + (Count * sizeof(MMPML3_PTE)));
@@ -478,7 +478,7 @@ MM::PageMapXpa::AdvancePte(PMMPTE Pte,
*/ */
XTAPI XTAPI
ULONG_PTR ULONG_PTR
MM::PageMapXpa::GetNextEntry(PMMPTE Pte) MM::PageMapXpa::GetNextEntry(IN PMMPTE Pte)
{ {
/* Return next entry in PTE list */ /* Return next entry in PTE list */
return Pte->Pml3.List.NextEntry; return Pte->Pml3.List.NextEntry;
@@ -496,7 +496,7 @@ MM::PageMapXpa::GetNextEntry(PMMPTE Pte)
*/ */
XTAPI XTAPI
PMMPTE PMMPTE
MM::PageMapXpa::GetNextPte(PMMPTE Pte) MM::PageMapXpa::GetNextPte(IN PMMPTE Pte)
{ {
/* Return advanced PTE pointer */ /* Return advanced PTE pointer */
return AdvancePte(Pte, 1); return AdvancePte(Pte, 1);
@@ -514,7 +514,7 @@ MM::PageMapXpa::GetNextPte(PMMPTE Pte)
*/ */
XTAPI XTAPI
BOOLEAN BOOLEAN
MM::PageMapXpa::GetOneEntry(PMMPTE Pte) MM::PageMapXpa::GetOneEntry(IN PMMPTE Pte)
{ {
/* Return one entry status */ /* Return one entry status */
return Pte->Pml3.List.OneEntry; return Pte->Pml3.List.OneEntry;
@@ -573,7 +573,7 @@ MM::PageMapXpa::InitializePageMapInfo(VOID)
*/ */
XTAPI XTAPI
BOOLEAN BOOLEAN
MM::PageMapXpa::PteValid(PHARDWARE_PTE PtePointer) MM::PageMapXpa::PteValid(IN PHARDWARE_PTE PtePointer)
{ {
return (BOOLEAN)PtePointer->Pml3.Valid; return (BOOLEAN)PtePointer->Pml3.Valid;
} }
@@ -593,8 +593,8 @@ MM::PageMapXpa::PteValid(PHARDWARE_PTE PtePointer)
*/ */
XTAPI XTAPI
VOID VOID
MM::PageMapXpa::SetNextEntry(PMMPTE Pte, MM::PageMapXpa::SetNextEntry(IN PMMPTE Pte,
ULONG_PTR Value) IN ULONG_PTR Value)
{ {
/* Set next entry in PTE list */ /* Set next entry in PTE list */
Pte->Pml3.List.NextEntry = Value; Pte->Pml3.List.NextEntry = Value;
@@ -615,8 +615,8 @@ MM::PageMapXpa::SetNextEntry(PMMPTE Pte,
*/ */
XTAPI XTAPI
VOID VOID
MM::PageMapXpa::SetOneEntry(PMMPTE Pte, MM::PageMapXpa::SetOneEntry(IN PMMPTE Pte,
BOOLEAN Value) IN BOOLEAN Value)
{ {
/* Set one entry status */ /* Set one entry status */
Pte->Pml3.List.OneEntry = Value; Pte->Pml3.List.OneEntry = Value;
@@ -640,9 +640,9 @@ MM::PageMapXpa::SetOneEntry(PMMPTE Pte,
*/ */
XTAPI XTAPI
VOID VOID
MM::PageMapXpa::SetPte(PHARDWARE_PTE PtePointer, MM::PageMapXpa::SetPte(IN PHARDWARE_PTE PtePointer,
PFN_NUMBER PageFrameNumber, IN PFN_NUMBER PageFrameNumber,
BOOLEAN Writable) IN BOOLEAN Writable)
{ {
/* Set PTE */ /* Set PTE */
PtePointer->Pml3.PageFrameNumber = PageFrameNumber; PtePointer->Pml3.PageFrameNumber = PageFrameNumber;
@@ -668,9 +668,9 @@ MM::PageMapXpa::SetPte(PHARDWARE_PTE PtePointer,
*/ */
XTAPI XTAPI
VOID VOID
MM::PageMapXpa::SetPteCaching(PHARDWARE_PTE PtePointer, MM::PageMapXpa::SetPteCaching(IN PHARDWARE_PTE PtePointer,
BOOLEAN CacheDisable, IN BOOLEAN CacheDisable,
BOOLEAN WriteThrough) IN BOOLEAN WriteThrough)
{ {
/* Set caching attributes */ /* Set caching attributes */
PtePointer->Pml3.CacheDisable = CacheDisable; PtePointer->Pml3.CacheDisable = CacheDisable;