Remove dead code from paging and PTE management
Some checks failed
Builds / ExectOS (amd64, debug) (push) Failing after 20s
Builds / ExectOS (amd64, release) (push) Failing after 26s
Builds / ExectOS (i686, debug) (push) Successful in 25s
Builds / ExectOS (i686, release) (push) Successful in 31s

This commit is contained in:
2026-01-03 23:27:24 +01:00
parent 5e5b4a8392
commit 455349f2d7
14 changed files with 0 additions and 125 deletions

View File

@@ -142,7 +142,6 @@ typedef struct _HARDWARE_PTE
typedef struct _MMPAGEMAP_INFO typedef struct _MMPAGEMAP_INFO
{ {
BOOLEAN Xpa; BOOLEAN Xpa;
ULONGLONG EmptyPteList;
ULONGLONG PteBase; ULONGLONG PteBase;
ULONGLONG PdeBase; ULONGLONG PdeBase;
ULONGLONG PpeBase; ULONGLONG PpeBase;

View File

@@ -165,7 +165,6 @@ typedef union _HARDWARE_PTE
typedef struct _MMPAGEMAP_INFO typedef struct _MMPAGEMAP_INFO
{ {
BOOLEAN Xpa; BOOLEAN Xpa;
ULONG EmptyPteList;
ULONG PteBase; ULONG PteBase;
ULONG PdeBase; ULONG PdeBase;
ULONG PdiShift; ULONG PdiShift;

View File

@@ -24,7 +24,6 @@ namespace MM
XTAPI PMMPTE AdvancePte(IN PMMPTE Pte, XTAPI PMMPTE AdvancePte(IN PMMPTE Pte,
IN LONG Count); IN LONG Count);
XTAPI VOID ClearPte(IN PMMPTE PtePointer); XTAPI VOID ClearPte(IN PMMPTE PtePointer);
XTAPI ULONGLONG GetEmptyPteList(VOID);
XTAPI ULONG_PTR GetNextEntry(IN PMMPTE Pte); XTAPI ULONG_PTR GetNextEntry(IN PMMPTE Pte);
XTAPI PMMPTE GetNextPte(IN PMMPTE Pte); XTAPI PMMPTE GetNextPte(IN PMMPTE Pte);
XTAPI BOOLEAN GetOneEntry(IN PMMPTE Pte); XTAPI BOOLEAN GetOneEntry(IN PMMPTE Pte);
@@ -42,7 +41,6 @@ namespace MM
XTAPI PMMPTE GetPteAddress(IN PVOID Address); XTAPI PMMPTE GetPteAddress(IN PVOID Address);
XTAPI LONG GetPteDistance(PMMPTE EndPte, XTAPI LONG GetPteDistance(PMMPTE EndPte,
PMMPTE StartPte); PMMPTE StartPte);
XTAPI ULONG_PTR GetPteListTerminator(VOID);
XTAPI ULONG GetPteOffset(IN PVOID Address); XTAPI ULONG GetPteOffset(IN PVOID Address);
XTAPI ULONG GetPteSize(VOID); XTAPI ULONG GetPteSize(VOID);
XTAPI ULONG GetPteSoftwareProtection(IN PMMPTE PtePointer); XTAPI ULONG GetPteSoftwareProtection(IN PMMPTE PtePointer);

View File

@@ -25,7 +25,6 @@ namespace MM
IN LONG Count); IN LONG Count);
STATIC XTAPI VOID ClearPte(IN PMMPTE PtePointer); STATIC XTAPI VOID ClearPte(IN PMMPTE PtePointer);
STATIC XTAPI VOID FlushTlb(VOID); STATIC XTAPI VOID FlushTlb(VOID);
STATIC XTAPI ULONG_PTR GetEmptyPteList(VOID);
STATIC XTAPI ULONG_PTR GetNextEntry(IN PMMPTE Pte); STATIC XTAPI ULONG_PTR GetNextEntry(IN PMMPTE Pte);
STATIC XTAPI PMMPTE GetNextPte(IN PMMPTE Pte); STATIC XTAPI PMMPTE GetNextPte(IN PMMPTE Pte);
STATIC XTAPI BOOLEAN GetOneEntry(IN PMMPTE Pte); STATIC XTAPI BOOLEAN GetOneEntry(IN PMMPTE Pte);
@@ -40,7 +39,6 @@ namespace MM
STATIC XTAPI PMMPTE GetPteAddress(IN PVOID Address); STATIC XTAPI PMMPTE GetPteAddress(IN PVOID Address);
STATIC XTAPI LONG GetPteDistance(PMMPTE EndPte, STATIC XTAPI LONG GetPteDistance(PMMPTE EndPte,
PMMPTE StartPte); PMMPTE StartPte);
STATIC XTAPI ULONG_PTR GetPteListTerminator(VOID);
STATIC XTAPI ULONG GetPteSize(VOID); STATIC XTAPI ULONG GetPteSize(VOID);
STATIC XTAPI ULONG GetPteSoftwareProtection(IN PMMPTE PtePointer); STATIC XTAPI ULONG GetPteSoftwareProtection(IN PMMPTE PtePointer);
STATIC XTAPI ULONG GetPteSoftwarePrototype(IN PMMPTE PtePointer); STATIC XTAPI ULONG GetPteSoftwarePrototype(IN PMMPTE PtePointer);

View File

@@ -19,7 +19,6 @@ namespace MM
{ {
private: private:
STATIC MMPTE FirstSystemFreePte[MaximumPtePoolTypes]; STATIC MMPTE FirstSystemFreePte[MaximumPtePoolTypes];
STATIC ULONG_PTR ListTerminator;
STATIC PMMPTE SystemPteBase; STATIC PMMPTE SystemPteBase;
STATIC PMMPTE SystemPtesEnd[MaximumPtePoolTypes]; STATIC PMMPTE SystemPtesEnd[MaximumPtePoolTypes];
STATIC PMMPTE SystemPtesStart[MaximumPtePoolTypes]; STATIC PMMPTE SystemPtesStart[MaximumPtePoolTypes];

View File

@@ -24,7 +24,6 @@ namespace MM
VIRTUAL XTAPI PMMPTE AdvancePte(IN PMMPTE Pte, VIRTUAL XTAPI PMMPTE AdvancePte(IN PMMPTE Pte,
IN ULONG Count) = 0; IN ULONG Count) = 0;
VIRTUAL XTAPI VOID ClearPte(IN PMMPTE PtePointer) = 0; VIRTUAL XTAPI VOID ClearPte(IN PMMPTE PtePointer) = 0;
XTAPI ULONG GetEmptyPteList(VOID);
VIRTUAL XTAPI ULONG_PTR GetNextEntry(IN PMMPTE Pte) = 0; VIRTUAL XTAPI ULONG_PTR GetNextEntry(IN PMMPTE Pte) = 0;
VIRTUAL XTAPI PMMPTE GetNextPte(IN PMMPTE Pte) = 0; VIRTUAL XTAPI PMMPTE GetNextPte(IN PMMPTE Pte) = 0;
VIRTUAL XTAPI BOOLEAN GetOneEntry(IN PMMPTE Pte) = 0; VIRTUAL XTAPI BOOLEAN GetOneEntry(IN PMMPTE Pte) = 0;
@@ -40,7 +39,6 @@ namespace MM
XTAPI ULONG GetPteOffset(IN PVOID Address); XTAPI ULONG GetPteOffset(IN PVOID Address);
VIRTUAL XTAPI LONG GetPteDistance(PMMPTE EndPte, VIRTUAL XTAPI LONG GetPteDistance(PMMPTE EndPte,
PMMPTE StartPte) = 0; PMMPTE StartPte) = 0;
VIRTUAL XTAPI ULONG_PTR GetPteListTerminator(VOID) = 0;
VIRTUAL XTAPI ULONG GetPteSize(VOID) = 0; VIRTUAL XTAPI ULONG GetPteSize(VOID) = 0;
VIRTUAL XTAPI ULONG GetPteSoftwareProtection(IN PMMPTE PtePointer) = 0; VIRTUAL XTAPI ULONG GetPteSoftwareProtection(IN PMMPTE PtePointer) = 0;
VIRTUAL XTAPI ULONG GetPteSoftwarePrototype(IN PMMPTE PtePointer) = 0; VIRTUAL XTAPI ULONG GetPteSoftwarePrototype(IN PMMPTE PtePointer) = 0;
@@ -82,7 +80,6 @@ namespace MM
XTAPI ULONG_PTR GetPte(IN PMMPTE PtePointer); XTAPI ULONG_PTR GetPte(IN PMMPTE PtePointer);
XTAPI LONG GetPteDistance(PMMPTE EndPte, XTAPI LONG GetPteDistance(PMMPTE EndPte,
PMMPTE StartPte); PMMPTE StartPte);
XTAPI ULONG_PTR GetPteListTerminator(VOID);
XTAPI ULONG GetPteSize(VOID); XTAPI ULONG GetPteSize(VOID);
XTAPI ULONG GetPteSoftwareProtection(IN PMMPTE PtePointer); XTAPI ULONG GetPteSoftwareProtection(IN PMMPTE PtePointer);
XTAPI ULONG GetPteSoftwarePrototype(IN PMMPTE PtePointer); XTAPI ULONG GetPteSoftwarePrototype(IN PMMPTE PtePointer);
@@ -122,7 +119,6 @@ namespace MM
XTAPI ULONG_PTR GetPte(IN PMMPTE PtePointer); XTAPI ULONG_PTR GetPte(IN PMMPTE PtePointer);
XTAPI LONG GetPteDistance(PMMPTE EndPte, XTAPI LONG GetPteDistance(PMMPTE EndPte,
PMMPTE StartPte); PMMPTE StartPte);
XTAPI ULONG_PTR GetPteListTerminator(VOID);
XTAPI ULONG GetPteSize(VOID); XTAPI ULONG GetPteSize(VOID);
XTAPI ULONG GetPteSoftwareProtection(IN PMMPTE PtePointer); XTAPI ULONG GetPteSoftwareProtection(IN PMMPTE PtePointer);
XTAPI ULONG GetPteSoftwarePrototype(IN PMMPTE PtePointer); XTAPI ULONG GetPteSoftwarePrototype(IN PMMPTE PtePointer);

View File

@@ -25,7 +25,6 @@ namespace MM
IN LONG Count); IN LONG Count);
STATIC XTAPI VOID ClearPte(IN PMMPTE PtePointer); STATIC XTAPI VOID ClearPte(IN PMMPTE PtePointer);
STATIC XTAPI VOID FlushTlb(VOID); STATIC XTAPI VOID FlushTlb(VOID);
STATIC XTAPI ULONG_PTR GetEmptyPteList(VOID);
STATIC XTAPI ULONG_PTR GetNextEntry(IN PMMPTE Pte); STATIC XTAPI ULONG_PTR GetNextEntry(IN PMMPTE Pte);
STATIC XTAPI PMMPTE GetNextPte(IN PMMPTE Pte); STATIC XTAPI PMMPTE GetNextPte(IN PMMPTE Pte);
STATIC XTAPI BOOLEAN GetOneEntry(IN PMMPTE Pte); STATIC XTAPI BOOLEAN GetOneEntry(IN PMMPTE Pte);
@@ -38,7 +37,6 @@ namespace MM
STATIC XTAPI PMMPTE GetPteAddress(IN PVOID Address); STATIC XTAPI PMMPTE GetPteAddress(IN PVOID Address);
STATIC XTAPI LONG GetPteDistance(PMMPTE EndPte, STATIC XTAPI LONG GetPteDistance(PMMPTE EndPte,
PMMPTE StartPte); PMMPTE StartPte);
STATIC XTAPI ULONG_PTR GetPteListTerminator(VOID);
STATIC XTAPI ULONG GetPteSize(VOID); STATIC XTAPI ULONG GetPteSize(VOID);
STATIC XTAPI ULONG GetPteSoftwareProtection(IN PMMPTE PtePointer); STATIC XTAPI ULONG GetPteSoftwareProtection(IN PMMPTE PtePointer);
STATIC XTAPI ULONG GetPteSoftwarePrototype(IN PMMPTE PtePointer); STATIC XTAPI ULONG GetPteSoftwarePrototype(IN PMMPTE PtePointer);

View File

@@ -19,7 +19,6 @@ namespace MM
{ {
private: private:
STATIC MMPTE FirstSystemFreePte[MaximumPtePoolTypes]; STATIC MMPTE FirstSystemFreePte[MaximumPtePoolTypes];
STATIC ULONG_PTR ListTerminator;
STATIC PMMPTE SystemPteBase; STATIC PMMPTE SystemPteBase;
STATIC PMMPTE SystemPtesEnd[MaximumPtePoolTypes]; STATIC PMMPTE SystemPtesEnd[MaximumPtePoolTypes];
STATIC PMMPTE SystemPtesStart[MaximumPtePoolTypes]; STATIC PMMPTE SystemPtesStart[MaximumPtePoolTypes];

View File

@@ -49,21 +49,6 @@ MM::PageMap::ClearPte(IN PMMPTE PtePointer)
PtePointer->Long = 0; PtePointer->Long = 0;
} }
/**
* Gets the value representing an empty PTE list.
*
* @return This routine returns the value representing an empty PTE list.
*
* @since XT 1.0
*/
XTAPI
ULONGLONG
MM::PageMap::GetEmptyPteList(VOID)
{
/* Return empty PTE list mask */
return PageMapInfo.EmptyPteList;
}
/** /**
* Gets the next entry in a PTE list. * Gets the next entry in a PTE list.
* *
@@ -762,9 +747,6 @@ MM::PageMapBasic::InitializePageMapInfo(VOID)
/* Set PML4 page map information */ /* Set PML4 page map information */
PageMapInfo.Xpa = FALSE; PageMapInfo.Xpa = FALSE;
/* Set PML4 empty PTE list mask */
PageMapInfo.EmptyPteList = 0xFFFFFFFFUI64;
/* Set PML4 base addresses */ /* Set PML4 base addresses */
PageMapInfo.PteBase = MM_PTE_BASE; PageMapInfo.PteBase = MM_PTE_BASE;
PageMapInfo.PdeBase = MM_PDE_BASE; PageMapInfo.PdeBase = MM_PDE_BASE;
@@ -862,9 +844,6 @@ MM::PageMapXpa::InitializePageMapInfo(VOID)
/* Set PML5 page map information */ /* Set PML5 page map information */
PageMapInfo.Xpa = TRUE; PageMapInfo.Xpa = TRUE;
/* Set PML5 empty PTE list mask */
PageMapInfo.EmptyPteList = 0xFFFFFFFFUI64;
/* Set PML5 base addresses */ /* Set PML5 base addresses */
PageMapInfo.PteBase = MM_PTE_LA57_BASE; PageMapInfo.PteBase = MM_PTE_LA57_BASE;
PageMapInfo.PdeBase = MM_PDE_LA57_BASE; PageMapInfo.PdeBase = MM_PDE_LA57_BASE;

View File

@@ -166,9 +166,6 @@ MM::Pte::InitializeSystemPte(VOID)
{ {
/* Initialize the PTE template */ /* Initialize the PTE template */
ValidPte = {MM_PTE_VALID|MM_PTE_EXECUTE_READWRITE|MM_PTE_DIRTY|MM_PTE_ACCESSED}; ValidPte = {MM_PTE_VALID|MM_PTE_EXECUTE_READWRITE|MM_PTE_DIRTY|MM_PTE_ACCESSED};
/* Initialize the system's PTE list terminator */
ListTerminator = MM::Paging::GetPteListTerminator();
} }
/** /**

View File

@@ -97,9 +97,6 @@ MMPFNLIST MM::Pfn::ZeroedPagesList = {0, ZeroedPageList, MAXULONG_PTR, MAXULONG_
/* Array of lists for available System PTEs, separated by pool type */ /* Array of lists for available System PTEs, separated by pool type */
MMPTE MM::Pte::FirstSystemFreePte[MaximumPtePoolTypes]; MMPTE MM::Pte::FirstSystemFreePte[MaximumPtePoolTypes];
/* PTE list terminator */
ULONG_PTR MM::Pte::ListTerminator;
/* Virtual base address of the System PTE space */ /* Virtual base address of the System PTE space */
PMMPTE MM::Pte::SystemPteBase; PMMPTE MM::Pte::SystemPteBase;

View File

@@ -9,21 +9,6 @@
#include <xtos.hh> #include <xtos.hh>
/**
* Gets the value representing an empty PTE list.
*
* @return This routine returns the value representing an empty PTE list.
*
* @since XT 1.0
*/
XTAPI
ULONG
MM::PageMap::GetEmptyPteList(VOID)
{
/* Return empty PTE list mask */
return PageMapInfo.EmptyPteList;
}
/** /**
* Gets the address of the PDE (Page Directory Entry), that maps given address. * Gets the address of the PDE (Page Directory Entry), that maps given address.
* *
@@ -340,21 +325,6 @@ MM::PageMapBasic::GetPteDistance(PMMPTE EndPte,
return ((ULONG_PTR)EndPte - (ULONG_PTR)StartPte) / sizeof(MMPML2_PTE); return ((ULONG_PTR)EndPte - (ULONG_PTR)StartPte) / sizeof(MMPML2_PTE);
} }
/**
* Gets the terminator value for a PTE list (PML2).
*
* @return This routine returns the terminator value for a PTE list.
*
* @since XT 1.0
*/
XTAPI
ULONG_PTR
MM::PageMapBasic::GetPteListTerminator(VOID)
{
/* Return PTE list terminator value for PML2 */
return 0xFFFFF;
}
/** /**
* Gets the size of a PTE for basic paging (PML2). * Gets the size of a PTE for basic paging (PML2).
* *
@@ -456,9 +426,6 @@ MM::PageMapBasic::InitializePageMapInfo(VOID)
/* Set PML2 page map information */ /* Set PML2 page map information */
PageMapInfo.Xpa = FALSE; PageMapInfo.Xpa = FALSE;
/* Set PML2 empty PTE list mask */
PageMapInfo.EmptyPteList = (ULONG)0xFFFFF;
/* Set PML2 base addresses */ /* Set PML2 base addresses */
PageMapInfo.PteBase = MM_PTE_BASE; PageMapInfo.PteBase = MM_PTE_BASE;
PageMapInfo.PdeBase = MM_PDE_LEGACY_BASE; PageMapInfo.PdeBase = MM_PDE_LEGACY_BASE;
@@ -828,21 +795,6 @@ MM::PageMapXpa::GetPteDistance(PMMPTE EndPte,
return ((ULONG_PTR)EndPte - (ULONG_PTR)StartPte) / sizeof(MMPML3_PTE); return ((ULONG_PTR)EndPte - (ULONG_PTR)StartPte) / sizeof(MMPML3_PTE);
} }
/**
* Gets the terminator value for a PTE list (PML3).
*
* @return This routine returns the terminator value for a PTE list.
*
* @since XT 1.0
*/
XTAPI
ULONG_PTR
MM::PageMapXpa::GetPteListTerminator(VOID)
{
/* Return PTE list terminator value for PML3 */
return 0xFFFFFFFF;
}
/** /**
* Gets the size of a PTE for XPA paging (PML3). * Gets the size of a PTE for XPA paging (PML3).
* *
@@ -944,9 +896,6 @@ MM::PageMapXpa::InitializePageMapInfo(VOID)
/* Set PML3 page map information */ /* Set PML3 page map information */
PageMapInfo.Xpa = TRUE; PageMapInfo.Xpa = TRUE;
/* Set PML3 empty PTE list mask */
PageMapInfo.EmptyPteList = (ULONG)0xFFFFFFFF;
/* Set PML3 base addresses */ /* Set PML3 base addresses */
PageMapInfo.PteBase = MM_PTE_BASE; PageMapInfo.PteBase = MM_PTE_BASE;
PageMapInfo.PdeBase = MM_PDE_BASE; PageMapInfo.PdeBase = MM_PDE_BASE;

View File

@@ -125,9 +125,6 @@ MM::Pte::InitializeSystemPte(VOID)
{ {
/* Initialize the PTE template */ /* Initialize the PTE template */
ValidPte = {{MM_PTE_VALID|MM_PTE_EXECUTE_READWRITE|MM_PTE_DIRTY|MM_PTE_ACCESSED}}; ValidPte = {{MM_PTE_VALID|MM_PTE_EXECUTE_READWRITE|MM_PTE_DIRTY|MM_PTE_ACCESSED}};
/* Initialize the system's PTE list terminator */
ListTerminator = MM::Paging::GetPteListTerminator();
} }
/** /**

View File

@@ -101,21 +101,6 @@ MM::Paging::FlushTlb(VOID)
} }
} }
/**
* Gets the value representing an empty PTE list.
*
* @return This routine returns the value representing an empty PTE list.
*
* @since XT 1.0
*/
XTAPI
ULONG_PTR
MM::Paging::GetEmptyPteList(VOID)
{
/* Return empty PTE list mask */
return (ULONG_PTR)PmlRoutines->GetEmptyPteList();
}
/** /**
* Gets the next entry in a PTE list. * Gets the next entry in a PTE list.
* *
@@ -351,21 +336,6 @@ MM::Paging::GetPteDistance(PMMPTE EndPte,
return PmlRoutines->GetPteDistance(EndPte, StartPte); return PmlRoutines->GetPteDistance(EndPte, StartPte);
} }
/**
* Gets the terminator value for a PTE list.
*
* @return This routine returns the terminator value for a PTE list.
*
* @since XT 1.0
*/
XTAPI
ULONG_PTR
MM::Paging::GetPteListTerminator(VOID)
{
/* Return PTE list terminator value */
return PmlRoutines->GetPteListTerminator();
}
/** /**
* Gets the size of a PTE. * Gets the size of a PTE.
* *