#include "mi.h"
Go to the source code of this file.
Functions | |
ULONG FASTCALL | MiIsPteDecommittedPage (IN PMMPTE PointerPte) |
ULONG FASTCALL | MiIsProtectionCompatible (IN ULONG OldProtect, IN ULONG NewProtect) |
ULONG FASTCALL | MiMakeProtectionMask (IN ULONG Protect) |
ULONG | MiDoesPdeExistAndMakeValid (IN PMMPTE PointerPde, IN PEPROCESS TargetProcess, IN ULONG PfnMutexHeld, OUT PULONG Waited) |
ULONG | MiMakePdeExistAndMakeValid (IN PMMPTE PointerPde, IN PEPROCESS TargetProcess, IN ULONG PfnMutexHeld) |
ULONG FASTCALL | MiMakeSystemAddressValid (IN PVOID VirtualAddress, IN PEPROCESS CurrentProcess) |
ULONG FASTCALL | MiMakeSystemAddressValidPfnWs (IN PVOID VirtualAddress, IN PEPROCESS CurrentProcess OPTIONAL) |
ULONG FASTCALL | MiMakeSystemAddressValidPfnSystemWs (IN PVOID VirtualAddress) |
ULONG FASTCALL | MiMakeSystemAddressValidPfn (IN PVOID VirtualAddress) |
ULONG FASTCALL | MiLockPagedAddress (IN PVOID VirtualAddress, IN ULONG PfnLockHeld) |
VOID FASTCALL | MiUnlockPagedAddress (IN PVOID VirtualAddress, IN ULONG PfnLockHeld) |
VOID FASTCALL | MiZeroPhysicalPage (IN PFN_NUMBER PageFrameIndex, IN ULONG PageColor) |
VOID FASTCALL | MiRestoreTransitionPte (IN PFN_NUMBER PageFrameIndex) |
PSUBSECTION | MiGetSubsectionAndProtoFromPte (IN PMMPTE PointerPte, OUT PMMPTE *ProtoPte, IN PEPROCESS Process) |
BOOLEAN | MmIsNonPagedSystemAddressValid (IN PVOID VirtualAddress) |
VOID | MmHibernateInformation (IN PVOID MemoryMap, OUT PULONG_PTR HiberVa, OUT PPHYSICAL_ADDRESS HiberPte) |
Variables | |
ULONG | MmCompatibleProtectionMask [8] |
CCHAR | MmUserProtectionToMask1 [16] |
CCHAR | MmUserProtectionToMask2 [16] |
|
Definition at line 437 of file mmsup.c. References APC_LEVEL, FALSE, LOCK_PFN, MiGetVirtualAddressMappedByPte, MiMakeSystemAddressValid(), TRUE, and UNLOCK_PFN. Referenced by MiCalculatePageCommitment(), MiCloneProcessAddressSpace(), MiDeletePte(), MiDeleteVirtualAddresses(), MiFlushDirtyBitsToPfn(), MiIsEntireRangeCommitted(), MiProtectVirtualMemory(), MiQueryAddressState(), MiResetVirtualMemory(), MiSetProtectionOnSection(), MmFlushVirtualMemory(), MmSecureVirtualMemory(), and NtLockVirtualMemory().
|
|
Definition at line 1385 of file mmsup.c. References ASSERT, MI_PFN_ELEMENT, MiGetSubsectionAddress, MiMakeSystemAddressValidPfnWs(), MiPteToProto, _MMPFN::OriginalPte, and _MMPFN::PteAddress. Referenced by MiGetSystemCacheSubsection().
|
|
Definition at line 139 of file mmsup.c. References EXCEPTION_EXECUTE_HANDLER, FALSE, MiMakeProtectionMask(), MmCompatibleProtectionMask, and TRUE. Referenced by NtMapViewOfSection().
|
|
Definition at line 42 of file mmsup.c. References FALSE, MI_PTE_LOOKUP_NEEDED, MM_DECOMMIT, TRUE, and _MMPTE::u. Referenced by MiCalculatePageCommitment(), MiIsEntireRangeCommitted(), and MiQueryAddressState().
|
|
Definition at line 1058 of file mmsup.c. References FALSE, LOCK_PFN2, MI_ADD_LOCKED_PAGE_CHARGE, MI_PFN_ELEMENT, MiGetPteAddress, MiGetVirtualAddressMappedByPte, MiMakeSystemAddressValidPfn(), _MMPTE::u, _MMPFN::u3, and UNLOCK_PFN2. Referenced by MiCloneProcessAddressSpace().
|
|
Definition at line 624 of file mmsup.c. References APC_LEVEL, ASSERT, FALSE, LOCK_PFN, MiGetPteAddress, MiGetVirtualAddressMappedByPte, MiMakeSystemAddressValid(), TRUE, _MMPTE::u, and UNLOCK_PFN. Referenced by MiCreatePageTablesForPhysicalRange(), MiDecommitPages(), MiMapLockedPagesInUserSpace(), MiMapViewOfPhysicalSection(), MiProtectVirtualMemory(), MiSetProtectionOnSection(), and NtAllocateVirtualMemory().
|
|
Definition at line 243 of file mmsup.c. References ExRaiseStatus(), MM_GUARD_PAGE, MM_NOACCESS, MM_NOCACHE, MmUserProtectionToMask1, and MmUserProtectionToMask2. Referenced by MiIsProtectionCompatible(), MiProtectSpecialPool(), MiProtectVirtualMemory(), MiSetProtectionOnSection(), MmCreateSection(), MmMapViewOfSection(), MmSetPageProtection(), NtAllocateVirtualMemory(), NtMapViewOfSection(), and NtProtectVirtualMemory().
|
|
Definition at line 764 of file mmsup.c. References ASSERT, FALSE, KeBugCheckEx(), KernelMode, LOCK_WS_REGARDLESS, MM_PAGED_POOL_START, MmAccessFault(), MmIsAddressValid(), MmPagedPoolEnd, NT_SUCCESS, NTSTATUS(), TRUE, and UNLOCK_WS_REGARDLESS. Referenced by MiCloneProcessAddressSpace(), MiDoesPdeExistAndMakeValid(), and MiMakePdeExistAndMakeValid().
|
|
Definition at line 996 of file mmsup.c. References APC_LEVEL, ASSERT, FALSE, KeBugCheckEx(), KernelMode, LOCK_PFN, MmAccessFault(), MmIsAddressValid(), NT_SUCCESS, NTSTATUS(), TRUE, and UNLOCK_PFN. Referenced by MiCheckProtoPtePageState(), MiCleanSection(), MiFlushSectionInternal(), MiLockPagedAddress(), MiSegmentDelete(), MiSetSystemCodeProtection(), MiUpdateImageHeaderPage(), MmAccessFault(), MmCheckCachedPageState(), MmCopyToCachedPage(), and MmPurgeSection().
|
|
Definition at line 916 of file mmsup.c. References APC_LEVEL, ASSERT, FALSE, KeBugCheckEx(), KernelMode, LOCK_PFN, LOCK_SESSION_SPACE_WS, LOCK_SYSTEM_WS, MI_IS_SESSION_IMAGE_ADDRESS, MmAccessFault(), MmIsAddressValid(), NT_SUCCESS, NTSTATUS(), TRUE, UNLOCK_PFN, UNLOCK_SESSION_SPACE_WS, and UNLOCK_SYSTEM_WS. Referenced by MiLockCode(), and MmLockPagableSectionByHandle().
|
|
Definition at line 837 of file mmsup.c. References APC_LEVEL, ASSERT, FALSE, KeBugCheckEx(), KernelMode, LOCK_PFN, LOCK_WS_REGARDLESS, MmAccessFault(), MmIsAddressValid(), NT_SUCCESS, NTSTATUS(), NULL, TRUE, UNLOCK_PFN, and UNLOCK_WS_REGARDLESS. Referenced by MiCaptureSystemPte(), MiDecrementCloneBlockReference(), MiGetSubsectionAndProtoFromPte(), MiPurgeImageSection(), MiResetVirtualMemory(), and MiUpCloneProtoRefCount().
|
|
Definition at line 1245 of file mmsup.c. References ASSERT, _SUBSECTION::ControlArea, MI_CAPTURE_USED_PAGETABLE_ENTRIES, MI_GET_PAGE_FRAME_FROM_TRANSITION_PTE, MI_IS_SESSION_PTE, MI_PFN_ELEMENT, MI_WRITE_INVALID_PTE, MiCheckForControlAreaDeletion(), MiDecrementShareCount(), MiGetByteOffset, MiGetPteAddress, MiGetSubsectionAddress, MiMapPageInHyperSpace(), MiUnmapPageInHyperSpace, MM_SYSTEM_SPACE_START, MmIsAddressValid(), _CONTROL_AREA::NumberOfPfnReferences, _MMPFN::OriginalPte, _MMPFN::PteAddress, _MMPFN::PteFrame, StandbyPageList, _MMPTE::u, and _MMPFN::u3. Referenced by MiDecrementReferenceCount(), MiDispatchFault(), MiFindContiguousMemory(), MiInsertPageInList(), MiRemovePageFromList(), MiRemovePhysicalPages(), MiResolveTransitionFault(), and MmAllocatePagesForMdl().
|
|
Definition at line 1123 of file mmsup.c. References ASSERT, FALSE, LOCK_PFN2, MI_GET_PAGE_FRAME_FROM_PTE, MI_PFN_ELEMENT, MI_REMOVE_LOCKED_PAGE_CHARGE, MiDecrementReferenceCount(), MiGetPteAddress, _MMPTE::u, _MMPFN::u3, and UNLOCK_PFN2. Referenced by MiCloneProcessAddressSpace().
|
|
Definition at line 1184 of file mmsup.c. References KeZeroPage, MiMapPageInHyperSpace(), MiUnmapPageInHyperSpace, MM_COLOR_MASK, PAGE_SHIFT, and PAGE_SIZE. Referenced by MiInitMachineDependent(), MiRemoveZeroPage(), MiResolveDemandZeroFault(), MiSessionCommitImagePages(), MiSessionCommitPageTables(), MiSessionCreateInternal(), MiSessionInitializeWorkingSetList(), MiWaitForInPageComplete(), MmAccessFault(), MmAllocatePagesForMdl(), and MmCreateProcessAddressSpace().
|
|
Definition at line 1503 of file mmsup.c. References MiGetVirtualAddressMappedByPte, MmCrashDumpPte, MmGetPhysicalAddress(), PO_MEM_CLONE, and PoSetHiberRange().
|
|
Definition at line 1460 of file mmsup.c. References FALSE, MmPagedPoolEnd, MmPagedPoolStart, and TRUE. Referenced by MmBuildMdlForNonPagedPool().
|
|
Initial value:
Definition at line 120 of file mmsup.c. Referenced by MiIsProtectionCompatible(). |
|
Initial value:
Definition at line 204 of file mmsup.c. Referenced by MiMakeProtectionMask(). |
|
Initial value:
Definition at line 222 of file mmsup.c. Referenced by MiMakeProtectionMask(). |