#include "mi.h"
Go to the source code of this file.
Classes | |
struct | _PTE_TRACKER |
struct | _SYSPTES_HEADER |
Defines | |
#define | MI_PROBE_RAISE_SIZE 10 |
#define | MI_INSTRUMENT_PROBE_RAISES(i) |
Typedefs | |
typedef _PTE_TRACKER | PTE_TRACKER |
typedef _PTE_TRACKER * | PPTE_TRACKER |
typedef _SYSPTES_HEADER | SYSPTES_HEADER |
typedef _SYSPTES_HEADER * | PSYSPTES_HEADER |
Functions | |
BOOLEAN | MmIsRecursiveIoFault (VOID) |
PVOID | MiAllocateContiguousMemory (IN SIZE_T NumberOfBytes, IN PFN_NUMBER LowestAcceptablePfn, IN PFN_NUMBER HighestAcceptablePfn, IN PFN_NUMBER BoundaryPfn, PVOID CallingAddress) |
PVOID | MiMapLockedPagesInUserSpace (IN PMDL MemoryDescriptorList, IN PVOID StartingVa, IN MEMORY_CACHING_TYPE CacheType, IN PVOID BaseVa) |
VOID | MiUnmapLockedPagesInUserSpace (IN PVOID BaseAddress, IN PMDL MemoryDescriptorList) |
LOGICAL | MiGetSystemPteAvailability (IN ULONG NumberOfPtes, IN MM_PAGE_PRIORITY Priority) |
VOID | MiAddMdlTracker (IN PMDL MemoryDescriptorList, IN PVOID CallingAddress, IN PVOID CallersCaller, IN PFN_NUMBER NumberOfPagesToLock, IN ULONG Who) |
VOID | MiInsertPteTracker (IN PVOID PoolBlock, IN PMDL MemoryDescriptorList, IN PFN_NUMBER NumberOfPtes, IN PVOID MyCaller, IN PVOID MyCallersCaller) |
PVOID | MiRemovePteTracker (IN PMDL MemoryDescriptorList, IN PVOID PteAddress, IN PFN_NUMBER NumberOfPtes) |
VOID | MiReleaseDeadPteTrackers (VOID) |
VOID | MiInsertDeadPteTrackingBlock (IN PVOID PoolBlock) |
VOID | MiProtectFreeNonPagedPool (IN PVOID VirtualAddress, IN ULONG SizeInPages) |
LOGICAL | MiUnProtectFreeNonPagedPool (IN PVOID VirtualAddress, IN ULONG SizeInPages) |
PVOID | MiAllocateLowMemory (IN SIZE_T NumberOfBytes, IN PFN_NUMBER LowestAcceptablePfn, IN PFN_NUMBER HighestAcceptablePfn, IN PFN_NUMBER BoundaryPfn, IN PVOID CallingAddress, IN ULONG Tag) |
LOGICAL | MiFreeLowMemory (IN PVOID BaseAddress, IN ULONG Tag) |
VOID | MmProbeAndLockPages (IN OUT PMDL MemoryDescriptorList, IN KPROCESSOR_MODE AccessMode, IN LOCK_OPERATION Operation) |
NTKERNELAPI VOID | MmProbeAndLockProcessPages (IN OUT PMDL MemoryDescriptorList, IN PEPROCESS Process, IN KPROCESSOR_MODE AccessMode, IN LOCK_OPERATION Operation) |
LOGICAL | MiFreeMdlTracker (IN OUT PMDL MemoryDescriptorList, IN PFN_NUMBER NumberOfPages) |
NTKERNELAPI VOID | MmProbeAndLockSelectedPages (IN OUT PMDL MemoryDescriptorList, IN PFILE_SEGMENT_ELEMENT SegmentArray, IN KPROCESSOR_MODE AccessMode, IN LOCK_OPERATION Operation) |
VOID | MmUnlockPages (IN OUT PMDL MemoryDescriptorList) |
VOID | MmBuildMdlForNonPagedPool (IN OUT PMDL MemoryDescriptorList) |
VOID | MiInitializeIoTrackers (VOID) |
PVOID | MiGetHighestPteConsumer (OUT PULONG_PTR NumberOfPtes) |
PVOID | MmMapLockedPages (IN PMDL MemoryDescriptorList, IN KPROCESSOR_MODE AccessMode) |
PVOID | MmMapLockedPagesSpecifyCache (IN PMDL MemoryDescriptorList, IN KPROCESSOR_MODE AccessMode, IN MEMORY_CACHING_TYPE CacheType, IN PVOID RequestedAddress, IN ULONG BugCheckOnFailure, IN MM_PAGE_PRIORITY Priority) |
PVOID | MiMapSinglePage (IN PVOID VirtualAddress OPTIONAL, IN PFN_NUMBER PageFrameIndex, IN MEMORY_CACHING_TYPE CacheType, IN MM_PAGE_PRIORITY Priority) |
VOID | MiUnmapSinglePage (IN PVOID VirtualAddress) |
VOID | MiPhysicalViewInserter (IN PEPROCESS Process, IN PMI_PHYSICAL_VIEW PhysicalView) |
VOID | MiPhysicalViewRemover (IN PEPROCESS Process, IN PMMVAD Vad) |
VOID | MiPhysicalViewAdjuster (IN PEPROCESS Process, IN PMMVAD OldVad, IN PMMVAD NewVad) |
VOID | MmUnmapLockedPages (IN PVOID BaseAddress, IN PMDL MemoryDescriptorList) |
PVOID | MmMapIoSpace (IN PHYSICAL_ADDRESS PhysicalAddress, IN SIZE_T NumberOfBytes, IN MEMORY_CACHING_TYPE CacheType) |
VOID | MmUnmapIoSpace (IN PVOID BaseAddress, IN SIZE_T NumberOfBytes) |
PVOID | MmAllocateContiguousMemorySpecifyCache (IN SIZE_T NumberOfBytes, IN PHYSICAL_ADDRESS LowestAcceptableAddress, IN PHYSICAL_ADDRESS HighestAcceptableAddress, IN PHYSICAL_ADDRESS BoundaryAddressMultiple OPTIONAL, IN MEMORY_CACHING_TYPE CacheType) |
PVOID | MmAllocateContiguousMemory (IN SIZE_T NumberOfBytes, IN PHYSICAL_ADDRESS HighestAcceptableAddress) |
PVOID | MmAllocateIndependentPages (IN SIZE_T NumberOfBytes) |
BOOLEAN | MmSetPageProtection (IN PVOID VirtualAddress, IN SIZE_T NumberOfBytes, IN ULONG NewProtect) |
PMDL | MmAllocatePagesForMdl (IN PHYSICAL_ADDRESS LowAddress, IN PHYSICAL_ADDRESS HighAddress, IN PHYSICAL_ADDRESS SkipBytes, IN SIZE_T TotalBytes) |
VOID | MmFreePagesFromMdl (IN PMDL MemoryDescriptorList) |
NTSTATUS | MmMapUserAddressesToPage (IN PVOID BaseAddress, IN SIZE_T NumberOfBytes, IN PVOID PageAddress) |
VOID | MmFreeContiguousMemory (IN PVOID BaseAddress) |
VOID | MmFreeContiguousMemorySpecifyCache (IN PVOID BaseAddress, IN SIZE_T NumberOfBytes, IN MEMORY_CACHING_TYPE CacheType) |
PHYSICAL_ADDRESS | MmGetPhysicalAddress (IN PVOID BaseAddress) |
PVOID | MmGetVirtualForPhysical (IN PHYSICAL_ADDRESS PhysicalAddress) |
PVOID | MmAllocateNonCachedMemory (IN SIZE_T NumberOfBytes) |
VOID | MmFreeNonCachedMemory (IN PVOID BaseAddress, IN SIZE_T NumberOfBytes) |
SIZE_T | MmSizeOfMdl (IN PVOID Base, IN SIZE_T Length) |
PMDL | MmCreateMdl (IN PMDL MemoryDescriptorList OPTIONAL, IN PVOID Base, IN SIZE_T Length) |
BOOLEAN | MmSetAddressRangeModified (IN PVOID Address, IN SIZE_T Length) |
PVOID | MiCheckForContiguousMemory (IN PVOID BaseAddress, IN PFN_NUMBER BaseAddressPages, IN PFN_NUMBER SizeInPages, IN PFN_NUMBER LowestPfn, IN PFN_NUMBER HighestPfn, IN PFN_NUMBER BoundaryPfn) |
VOID | MmLockPagableSectionByHandle (IN PVOID ImageSectionHandle) |
VOID | MiLockCode (IN PMMPTE FirstPte, IN PMMPTE LastPte, IN ULONG LockType) |
NTSTATUS | MmGetSectionRange (IN PVOID AddressWithinSection, OUT PVOID *StartingSectionAddress, OUT PULONG SizeofSection) |
PVOID | MmLockPagableDataSection (IN PVOID AddressWithinSection) |
PLDR_DATA_TABLE_ENTRY | MiLookupDataTableEntry (IN PVOID AddressWithinSection, IN ULONG ResourceHeld) |
VOID | MmUnlockPagableImageSection (IN PVOID ImageSectionHandle) |
VOID | MmMapMemoryDumpMdl (IN OUT PMDL MemoryDumpMdl) |
VOID | MmReleaseDumpAddresses (IN PFN_NUMBER Pages) |
NTSTATUS | MmSetBankedSection (IN HANDLE ProcessHandle, IN PVOID VirtualAddress, IN ULONG BankLength, IN BOOLEAN ReadWriteBank, IN PBANKED_SECTION_ROUTINE BankRoutine, IN PVOID Context) |
PVOID | MmMapVideoDisplay (IN PHYSICAL_ADDRESS PhysicalAddress, IN SIZE_T NumberOfBytes, IN MEMORY_CACHING_TYPE CacheType) |
VOID | MmUnmapVideoDisplay (IN PVOID BaseAddress, IN SIZE_T NumberOfBytes) |
VOID | MmLockPagedPool (IN PVOID Address, IN SIZE_T SizeInBytes) |
NTKERNELAPI VOID | MmUnlockPagedPool (IN PVOID Address, IN SIZE_T SizeInBytes) |
NTKERNELAPI ULONG | MmGatherMemoryForHibernate (IN PMDL Mdl, IN BOOLEAN Wait) |
NTKERNELAPI VOID | MmReturnMemoryForHibernate (IN PMDL Mdl) |
VOID | MmSetKernelDumpRange (IN OUT PVOID pDumpContext) |
Variables | |
PFN_NUMBER | MmSystemLockPagesCount |
ULONG | MmTotalSystemDriverPages |
LOGICAL | MmTrackPtes = FALSE |
BOOLEAN | MiTrackPtesAborted = FALSE |
SYSPTES_HEADER | MiPteHeader |
LIST_ENTRY | MiDeadPteTrackerListHead |
KSPIN_LOCK | MiPteTrackerLock |
LOCK_HEADER | MmLockedPagesHead |
BOOLEAN | MiTrackingAborted = FALSE |
LOGICAL | MiNoLowMemory |
POOL_DESCRIPTOR | NonPagedPoolDescriptor |
PFN_NUMBER | MmMdlPagesAllocated |
KEVENT | MmCollidedLockEvent |
ULONG | MmCollidedLockWait |
SIZE_T | MmLockedCode |
BOOLEAN | MiWriteCombiningPtes = FALSE |
ULONG | MiProbeRaises [MI_PROBE_RAISE_SIZE] |
ULONG | MmReferenceCountCheck = 2500 |
PFN_NUMBER | MiLastCallLowPage |
PFN_NUMBER | MiLastCallHighPage |
ULONG | MiLastCallColor |
|
Value:
Definition at line 225 of file iosup.c. Referenced by MmProbeAndLockPages(). |
|
|
|
Referenced by MiGetHighestPteConsumer(), MiInsertPteTracker(), and MiRemovePteTracker(). |
|
|
|
|
|
|
|
Definition at line 879 of file iosup.c. References ASSERT, _LOCK_TRACKER::CallersCaller, _LOCK_TRACKER::CallingAddress, _LOCK_HEADER::Count, _LOCK_TRACKER::Count, ExAllocatePoolWithTag, _LOCK_TRACKER::GlobalListEntry, KeBugCheckEx(), _LOCK_TRACKER::Length, _LOCK_TRACKER::ListEntry, _LOCK_HEADER::ListHead, LOCK_PFN2, LOCK_TRACKER, _EPROCESS::LockedPagesList, _LOCK_TRACKER::Mdl, MiTrackingAborted, MmLockedPagesHead, MmTrackLockedPages, NonPagedPool, NULL, _LOCK_TRACKER::Offset, _LOCK_TRACKER::Page, PLOCK_HEADER, PLOCK_TRACKER, _LOCK_TRACKER::Process, _LOCK_TRACKER::StartVa, TRUE, UNLOCK_PFN2, and _LOCK_TRACKER::Who. Referenced by MmProbeAndLockPages(), and MmProbeAndLockSelectedPages().
|
|
Definition at line 4107 of file iosup.c. References APC_LEVEL, ASSERT, BYTES_TO_PAGES, ExAllocatePoolWithTag, ExFreePool(), FALSE, KeDelayExecutionThread(), KernelMode, MiAllocateLowMemory(), MiCheckForContiguousMemory(), MiDelayPageFaults, MiEmptyAllWorkingSets(), MiFindContiguousMemory(), MiFlushAllPages(), MiNoLowMemory, MmHalfSecond, NonPagedPoolCacheAligned, NULL, and TRUE. Referenced by MmAllocateContiguousMemory(), and MmAllocateContiguousMemorySpecifyCache().
|
|
|
|
Definition at line 6052 of file iosup.c. References ASSERT, MI_CONVERT_PHYSICAL_TO_PFN, MI_GET_PAGE_FRAME_FROM_PTE, MI_IS_PHYSICAL_ADDRESS, MiGetPteAddress, MiGetVirtualAddressMappedByPte, NULL, PAGE_SHIFT, and _MMPTE::u. Referenced by MiAllocateContiguousMemory(), and MiFindContiguousMemory().
|
|
|
|
Definition at line 1041 of file iosup.c. References ASSERT, _LOCK_HEADER::Count, _LOCK_TRACKER::Count, ExFreePool(), _LOCK_TRACKER::GlobalListEntry, KeBugCheckEx(), _LOCK_TRACKER::ListEntry, _LOCK_HEADER::ListHead, LOCK_PFN2, _LOCK_TRACKER::Mdl, MiTrackingAborted, MmLockedPagesHead, NULL, _LOCK_TRACKER::Page, TRUE, and UNLOCK_PFN2. Referenced by MmProbeAndLockSelectedPages(), and MmUnlockPages().
|
|
Definition at line 1901 of file iosup.c. References _PTE_TRACKER::CallingAddress, _PTE_TRACKER::Count, FALSE, _SYSPTES_HEADER::ListHead, MiPteHeader, MiTrackPtesAborted, MmTrackPtes, NULL, PPTE_TRACKER, PsLoadedModuleList, and TRUE. Referenced by MiReserveSystemPtes2().
|
|
Definition at line 2030 of file sysptes.c. References FALSE, HighPagePriority, Index, MM_PTE_TABLE_LIMIT, MmSysPteListBySizeCount, MmSysPteMinimumFree, MmSysPteTables, MmTotalFreeSystemPtes, NormalPagePriority, SystemPteSpace, and TRUE. Referenced by MiMapSinglePage(), and MmMapLockedPagesSpecifyCache().
|
|
Definition at line 1595 of file iosup.c. References KeInitializeSpinLock(), _SYSPTES_HEADER::ListHead, _LOCK_HEADER::ListHead, MiDeadPteTrackerListHead, MiPteHeader, MiPteTrackerLock, MmLockedPagesHead, MmTrackLockedPages, MmTrackPtes, and TRUE. Referenced by MmInitSystem().
|
|
Definition at line 1823 of file iosup.c. References MiDeadPteTrackerListHead, and MiPteTrackerLock. Referenced by MmUnmapIoSpace(), and MmUnmapLockedPages().
|
|
Definition at line 1611 of file iosup.c. References _PTE_TRACKER::CallersCaller, _PTE_TRACKER::CallingAddress, _SYSPTES_HEADER::Count, _PTE_TRACKER::Count, _PTE_TRACKER::Length, _PTE_TRACKER::ListEntry, _SYSPTES_HEADER::ListHead, _PTE_TRACKER::Mdl, MiGetPteAddress, MiPteHeader, _PTE_TRACKER::Offset, _PTE_TRACKER::Page, PPTE_TRACKER, _PTE_TRACKER::PteAddress, _PTE_TRACKER::StartVa, and _PTE_TRACKER::SystemVa. Referenced by MmMapIoSpace(), and MmMapLockedPagesSpecifyCache().
|
|
Definition at line 6461 of file iosup.c. References ActiveAndValid, APC_LEVEL, ASSERT, FALSE, _MMWSL::FirstDynamic, LOCK_PFN, MI_ADD_LOCKED_PAGE_CHARGE, MI_GET_PAGE_FRAME_FROM_TRANSITION_PTE, MI_IS_PHYSICAL_ADDRESS, MI_IS_SESSION_IMAGE_ADDRESS, MI_MAKE_VALID_PTE, MI_PFN_ELEMENT, MI_REMOVE_LOCKED_PAGE_CHARGE, MI_SET_PTE_IN_WORKING_SET, MI_WRITE_VALID_PTE, MI_ZERO_WSINDEX, MiGetPteAddress, MiGetVirtualAddressMappedByPte, MiLocateAndReserveWsle(), MiLocateWsle(), MiMakeSystemAddressValidPfnSystemWs(), MiReleaseWsle(), MiRemoveWsle(), MiSwapWslEntries(), MiUnlinkPageFromList(), MiUpdateWsle(), MM_BUMP_COUNTER, MM_LOCK_BY_REFCOUNT, MM_PFN_LOCK_ASSERT, MmLockedCode, MmPagedPoolEnd, MmPagedPoolStart, MmResidentAvailablePages, MmSessionSpace, MmSpecialPoolEnd, MmSpecialPoolStart, MmSystemCacheWorkingSetList, MmSystemCacheWs, MmTotalSystemDriverPages, _MMPFN::OriginalPte, PMMSUPPORT, PsGetCurrentThread, _MMPFN::PteAddress, TRUE, _MMPTE::u, _MMPFN::u1, _MMWSLE::u1, _MMPFN::u2, _MMPFN::u3, UNLOCK_PFN, _MM_SESSION_SPACE::Vm, _MMSUPPORT::VmWorkingSetList, _MM_SESSION_SPACE::Wsle, WSLE_NUMBER, and ZeroKernelPte. Referenced by MmLockPagableSectionByHandle(), MmLockPagedPool(), and MmResetDriverPaging().
|
|
Definition at line 6991 of file iosup.c. References ExAcquireResourceShared, ExReleaseResource, KeEnterCriticalRegion, KeLeaveCriticalRegion, NULL, PAGED_CODE, PsLoadedModuleList, PsLoadedModuleResource, and TRUE. Referenced by MmAddVerifierThunks(), MmGetSectionRange(), MmLockPagableDataSection(), MmPageEntireDriver(), and MmResetDriverPaging().
|
|
Definition at line 2785 of file iosup.c. References _EPROCESS::AddressSpaceDeleted, ASSERT, COMPUTE_PAGES_SPANNED, _MMVAD::ControlArea, _MMVAD::EndingVpn, _MI_PHYSICAL_VIEW::EndVa, ExAllocatePoolWithTag, EXCEPTION_EXECUTE_HANDLER, ExFreePool(), ExRaiseStatus(), FALSE, _MMVAD::FirstPrototypePte, KeFlushEntireTb(), KeInvalidateAllCaches(), LOCK_WS_AND_ADDRESS_SPACE, MDL_IO_SPACE, MI_DISABLE_CACHING, MI_GET_USED_PTES_HANDLE, MI_INCREMENT_USED_PTES_BY_HANDLE, MI_PFN_ELEMENT, MI_PHYSICAL_VIEW_KEY, MI_SET_PTE_WRITE_COMBINE, MI_VA_TO_VPN, MI_WRITE_VALID_PTE, MiCheckForConflictingVad, MiFindEmptyAddressRange(), MiGetPdeAddress, MiGetPteAddress, MiInsertVad(), MiMakePdeExistAndMakeValid(), MiMakePpeExistAndMakeValid, MiPhysicalViewInserter(), MiSweepCacheMachineDependent(), MiWriteCombiningPtes, MM_EMPTY_LIST, MM_HIGHEST_VAD_ADDRESS, MM_READWRITE, MmCached, MmHardwareCoherentCached, MmHighestPhysicalPage, MmNonCached, MmNonCachedUnordered, MmWriteCombined, NonPagedPool, NULL, PAGE_SIZE, PAGED_CODE, PsGetCurrentProcess, _MMVAD::StartingVpn, _MI_PHYSICAL_VIEW::StartVa, TRUE, _MMPTE::u, _MMVAD::u, _MMPFN::u2, _MMVAD::u4, UNLOCK_WS_AND_ADDRESS_SPACE, _MI_PHYSICAL_VIEW::Vad, ValidUserPte, and X64K. Referenced by MmMapLockedPagesSpecifyCache().
|
|
Definition at line 2395 of file iosup.c. References ASSERT, FALSE, HighPagePriority, KeFlushEntireTb(), KeFlushSingleTb(), KeInvalidateAllCaches(), MI_DISABLE_CACHING, MI_IS_PHYSICAL_ADDRESS, MI_SET_PTE_WRITE_COMBINE, MI_WRITE_INVALID_PTE, MI_WRITE_VALID_PTE, MiGetPteAddress, MiGetSystemPteAvailability(), MiGetVirtualAddressMappedByPte, MiReserveSystemPtes(), MiSweepCacheMachineDependent(), MiWriteCombiningPtes, MM_COLOR_ALIGNMENT, MmCached, MmHardwareCoherentCached, MmNonCached, MmNonCachedUnordered, MmWriteCombined, NULL, PAGE_SIZE, PAGED_CODE, SystemPteSpace, TRUE, _MMPTE::u, ValidKernelPte, and ZeroPte. Referenced by MiCloneProcessAddressSpace().
|
|
Definition at line 2721 of file iosup.c. References ASSERT, FALSE, LOCK_AWE, LOCK_PFN2, UNLOCK_AWE, UNLOCK_PFN2, and _MI_PHYSICAL_VIEW::Vad. Referenced by MmSecureVirtualMemory().
|
|
Definition at line 2583 of file iosup.c. References LOCK_AWE, LOCK_PFN2, MiActiveWriteWatch, MiMarkProcessAsWriteWatch(), UNLOCK_AWE, and UNLOCK_PFN2. Referenced by MiMapLockedPagesInUserSpace(), and NtAllocateVirtualMemory().
|
|
Definition at line 2641 of file iosup.c. References ASSERT, BitMap, _MI_PHYSICAL_VIEW::BitMap, ExFreePool(), FALSE, LOCK_AWE, LOCK_PFN2, MiActiveWriteWatch, NonPagedPool, NULL, PsReturnPoolQuota(), UNLOCK_AWE, UNLOCK_PFN2, and _MI_PHYSICAL_VIEW::Vad. Referenced by MiUnmapLockedPagesInUserSpace(), MmCleanProcessAddressSpace(), and NtFreeVirtualMemory().
|
|
Definition at line 150 of file allocpag.c. References KeFlushSingleTb(), MI_IS_PHYSICAL_ADDRESS, MiGetPteAddress, PAGE_SIZE, TRUE, and _MMPTE::u. Referenced by MiAllocatePoolPages(), MiFindContiguousMemory(), MiFreePoolPages(), MiProtectedPoolInsertList(), MiProtectedPoolRemoveEntryList(), and MmSetKernelDumpRange().
|
|
Definition at line 1859 of file iosup.c. References ASSERT, DISPATCH_LEVEL, ExFreePool(), MiDeadPteTrackerListHead, and MiPteTrackerLock. Referenced by MmMapIoSpace(), and MmMapLockedPagesSpecifyCache().
|
|
Definition at line 1675 of file iosup.c. References _SYSPTES_HEADER::Count, _PTE_TRACKER::Count, FALSE, KeBugCheckEx(), _PTE_TRACKER::ListEntry, _SYSPTES_HEADER::ListHead, MiGetVirtualAddressMappedByPte, MiPteHeader, MiTrackPtesAborted, NULL, _PTE_TRACKER::Page, PPTE_TRACKER, _PTE_TRACKER::PteAddress, _PTE_TRACKER::StartVa, and _PTE_TRACKER::SystemVa. Referenced by MmUnmapIoSpace(), and MmUnmapLockedPages().
|
|
Definition at line 3253 of file iosup.c. References ASSERT, ASSERT64, COMPUTE_PAGES_SPANNED, ExFreePool(), ExPageLockHandle, FALSE, KeFlushSingleTb(), LOCK_PFN, LOCK_WS_AND_ADDRESS_SPACE, MI_DECREMENT_USED_PTES_BY_HANDLE, MI_GET_PAGE_FRAME_FROM_PTE, MI_GET_USED_PTES_FROM_HANDLE, MI_GET_USED_PTES_HANDLE, MiDecrementShareAndValidCount, MiDeletePte(), MiGetPdeAddress, MiGetPteAddress, MiGetVirtualAddressMappedByPte, MiLocateAddress(), MiPhysicalViewRemover(), MiRemoveVad(), MM_EMPTY_LIST, MmLockPagableSectionByHandle(), MmUnlockPagableImageSection(), NULL, PAGE_SIZE, PsGetCurrentProcess, TRUE, _MMPTE::u, UNLOCK_PFN, UNLOCK_WS_AND_ADDRESS_SPACE, VOID(), and ZeroPte. Referenced by MmUnmapLockedPages().
|
|
Definition at line 2543 of file iosup.c. References ASSERT, MI_IS_PHYSICAL_ADDRESS, MiGetPteAddress, MiReleaseSystemPtes(), PAGED_CODE, and SystemPteSpace. Referenced by MiCloneProcessAddressSpace().
|
|
Definition at line 209 of file allocpag.c. References FALSE, MI_IS_PHYSICAL_ADDRESS, MI_WRITE_VALID_PTE, MiGetPteAddress, TRUE, and _MMPTE::u. Referenced by MiAllocatePoolPages(), MiFindContiguousMemory(), MiFreePoolPages(), MiProtectedPoolInsertList(), MiProtectedPoolRemoveEntryList(), and MmSetKernelDumpRange().
|
|
Definition at line 3881 of file iosup.c. References MiAllocateContiguousMemory(), PAGE_SHIFT, and RtlGetCallersAddress(). Referenced by IopGetDumpStack(), and Ki386AllocateContiguousMemory().
|
|
Definition at line 3744 of file iosup.c. References ASSERT, BYTE_OFFSET, KeSweepDcache(), MiAllocateContiguousMemory(), MiGetPteAddress, MmCached, MmFreeContiguousMemory(), MmGetPhysicalAddress(), MmMapIoSpace(), NULL, PAGE_SHIFT, PAGE_SIZE, RtlGetCallersAddress(), TRUE, and _MMPTE::u.
|
|
Definition at line 3942 of file iosup.c. References ASSERT, BYTES_TO_PAGES, FALSE, LOCK_PFN, MI_GET_PAGE_COLOR_FROM_PTE, MI_MAKE_VALID_PTE, MI_NONPAGABLE_MEMORY_AVAILABLE, MI_SET_PTE_DIRTY, MI_WRITE_VALID_PTE, MiChargeCommitmentCantExpand(), MiEnsureAvailablePageOrWait(), MiGetVirtualAddressMappedByPte, MiInitializePfn(), MiReleaseSystemPtes(), MiRemoveAnyPage(), MiReserveSystemPtes(), MM_BUMP_COUNTER, MM_DBG_COMMIT_INDEPENDENT_PAGES, MM_READWRITE, MM_TRACK_COMMIT, MmResidentAvailablePages, NULL, SystemPteSpace, TRUE, _MMPTE::u, and UNLOCK_PFN. Referenced by KiI386PentiumLockErrataFixup().
|
|
Definition at line 5581 of file iosup.c. References ASSERT, BYTES_TO_PAGES, ExPageLockHandle, FALSE, KeFlushEntireTb(), KeSweepDcache(), LOCK_PFN, MI_DISABLE_CACHING, MI_GET_PAGE_COLOR_FROM_PTE, MI_MAKE_VALID_PTE, MI_NONPAGABLE_MEMORY_AVAILABLE, MI_SET_PTE_DIRTY, MI_WRITE_VALID_PTE, MiChargeCommitmentCantExpand(), MiEnsureAvailablePageOrWait(), MiGetVirtualAddressMappedByPte, MiInitializePfn(), MiReleaseSystemPtes(), MiRemoveAnyPage(), MiReserveSystemPtes(), MiReturnCommitment(), MiSweepCacheMachineDependent(), MM_BUMP_COUNTER, MM_DBG_COMMIT_NONCACHED_PAGES, MM_READWRITE, MM_TRACK_COMMIT, MmLockPagableSectionByHandle(), MmNonCached, MmResidentAvailablePages, MmUnlockPagableImageSection(), NULL, SystemPteSpace, TRUE, _MMPTE::u, and UNLOCK_PFN. Referenced by IopGetDumpStack().
|
|
Definition at line 4270 of file iosup.c. References ActiveAndValid, ADDRESS_AND_SIZE_TO_SPAN_PAGES, APC_LEVEL, ASSERT, _PHYSICAL_MEMORY_RUN::BasePage, _MMPFNLIST::Blink, _MMCOLOR_TABLES::Blink, BYTE_OFFSET, _MDL::ByteCount, DbgPrint, ExAllocatePoolWithTag, ExFreePool(), ExPageLockHandle, FALSE, _MMPFNLIST::Flink, _MMCOLOR_TABLES::Flink, FreePageList, LOCK_PFN, MI_MAGIC_AWE_PTEFRAME, MI_NONPAGABLE_MEMORY_AVAILABLE, MI_PFN_ELEMENT, MI_SET_PFN_DELETED, MiChargeCommitmentCantExpand(), MiLastCallColor, MiLastCallHighPage, MiLastCallLowPage, MiRestoreTransitionPte(), MiReturnCommitment(), MiUnlinkFreeOrZeroedPage(), MiUnlinkPageFromList(), MiZeroPhysicalPage(), MM_BUMP_COUNTER, MM_DBG_COMMIT_MDL_PAGES, MM_DEMAND_ZERO_WRITE_PTE, MM_EMPTY_LIST, MM_TRACK_COMMIT, MmCreateMdl(), MmDynamicMemoryMutex, MmFreePagesByColor, MmHighestPhysicalPage, MMLISTS, MmLockPagableSectionByHandle(), MmMdlPagesAllocated, MmPageLocationList, MmPfnDatabase, MmPhysicalMemoryBlock, MmResidentAvailablePages, MmSecondaryColors, MmUnlockPagableImageSection(), NonPagedPool, NULL, _PHYSICAL_MEMORY_DESCRIPTOR::NumberOfRuns, _MMPFN::OriginalPte, PAGE_SHIFT, PAGE_SIZE, _PHYSICAL_MEMORY_RUN::PageCount, _MMPFN::PteFrame, _PHYSICAL_MEMORY_DESCRIPTOR::Run, StandbyPageList, TRUE, _MMPTE::u, _MMPFN::u1, _MMPFN::u2, _MMPFN::u3, UNLOCK_PFN, and ZeroedPageList. Referenced by NtAllocateUserPhysicalPages().
|
|
Definition at line 1500 of file iosup.c. References ASSERT, MDL_MAPPED_TO_SYSTEM_VA, MDL_PAGES_LOCKED, MDL_PARTIAL, MDL_SOURCE_IS_NONPAGED_POOL, MI_CONVERT_PHYSICAL_TO_PFN, MI_GET_PAGE_FRAME_FROM_PTE, MI_IS_PHYSICAL_ADDRESS, MiGetPteAddress, MmIsNonPagedSystemAddressValid(), and NULL. Referenced by CcZeroData(), MiCreateImageFileMap(), and UdfPrepareBuffers().
|
|
Definition at line 5852 of file iosup.c. References ExAllocatePoolWithTag, MmInitializeMdl, MmSizeOfMdl(), NonPagedPool, NonPagedPoolMustSucceed, and POOL_BUDDY_MAX. Referenced by IoWriteCrashDump(), MiCheckForCrashDump(), MiCreateImageFileMap(), MmAllocatePagesForMdl(), and NtFreeUserPhysicalPages().
|
|
Definition at line 5372 of file iosup.c. References ExFreePool(), MiFreeLowMemory(), MiNoLowMemory, PAGED_CODE, and TRUE. Referenced by IoFreeDumpStack(), Ki386ClearIdentityMap(), and MmAllocateContiguousMemorySpecifyCache().
|
|
Definition at line 5414 of file iosup.c. References ASSERT, ExFreePool(), MiFreeLowMemory(), MiGetPteAddress, MiNoLowMemory, MmCached, MmNonPagedSystemStart, MmNumberOfSystemPtes, MmUnmapIoSpace(), PAGE_SHIFT, PAGE_SIZE, PAGED_CODE, TRUE, and _MMPTE::u.
|
|
Definition at line 5721 of file iosup.c. References ASSERT, BYTES_TO_PAGES, ExPageLockHandle, LOCK_PFN, MI_GET_PAGE_FRAME_FROM_PTE, MI_MAKING_MULTIPLE_PTES_INVALID, MI_PFN_ELEMENT, MI_SET_PFN_DELETED, MiDecrementShareAndValidCount, MiDecrementShareCountOnly, MiGetPteAddress, MiReleaseSystemPtes(), MiReturnCommitment(), MM_BUMP_COUNTER, MM_DBG_COMMIT_RETURN_NONCACHED_PAGES, MM_TRACK_COMMIT, MmLockPagableSectionByHandle(), MmResidentAvailablePages, MmUnlockPagableImageSection(), PAGE_ALIGN, _MMPFN::PteFrame, SystemPteSpace, TRUE, _MMPFN::u2, and UNLOCK_PFN.
|
|
Definition at line 5051 of file iosup.c. References ADDRESS_AND_SIZE_TO_SPAN_PAGES, APC_LEVEL, ASSERT, ExPageLockHandle, LOCK_PFN, MDL_IO_SPACE, MDL_PHYSICAL_VIEW, MI_IS_PFN_DELETED, MI_MAGIC_AWE_PTEFRAME, MI_MAKING_MULTIPLE_PTES_INVALID, MI_PFN_ELEMENT, MI_PFN_IS_AWE, MiDecrementReferenceCount(), MiReturnCommitment(), MM_BUMP_COUNTER, MM_DBG_COMMIT_RETURN_MDL_PAGES, MM_EMPTY_LIST, MM_TRACK_COMMIT, MmHighestPhysicalPage, MmLockPagableSectionByHandle(), MmMdlPagesAllocated, MmResidentAvailablePages, MmUnlockPagableImageSection(), PAGE_SIZE, StandbyPageList, TRUE, _MMPFN::u2, and UNLOCK_PFN. Referenced by MiCleanPhysicalProcessPages(), NtAllocateUserPhysicalPages(), and NtFreeUserPhysicalPages().
|
|
Definition at line 7930 of file iosup.c. References APC_LEVEL, FALSE, KeDelayExecutionThread(), KernelMode, LOCK_PFN2, MDL_PAGES_LOCKED, MI_GET_PAGE_COLOR_FROM_PTE, MI_PFN_ELEMENT, MI_SET_PFN_DELETED, MiDelayPageFaults, MiEmptyAllWorkingSets(), MiFlushAllPages(), MiRemoveAnyPage(), Mm30Milliseconds, MM_DEMAND_ZERO_WRITE_PTE, MmAvailablePages, NULL, _MMPFN::OriginalPte, PAGE_SHIFT, TRUE, _MMPTE::u, _MMPFN::u3, and UNLOCK_PFN2.
|
|
Definition at line 5490 of file iosup.c. References BYTE_OFFSET, MI_CONVERT_PHYSICAL_TO_PFN, MI_GET_PAGE_FRAME_FROM_PTE, MI_IS_PHYSICAL_ADDRESS, MiGetPteAddress, PAGE_SHIFT, _MMPTE::u, and ZERO_LARGE. Referenced by IoFreeDumpRange(), IopGetDumpStack(), IopInitializeDCB(), IopMapVirtualToPhysicalMdl(), IoSetDumpRange(), KdpStub(), KeStartAllProcessors(), Ki386BuildIdentityBuffer(), Ki386ConvertPte(), Ki386CreateIdentityMap(), KiGetPhysicalAddress(), MmAllocateContiguousMemorySpecifyCache(), MmDbgWriteCheck(), MmHibernateInformation(), and MmMapUserAddressesToPage().
|
|
Definition at line 6797 of file iosup.c. References ExAcquireResourceShared, ExReleaseResource, KeEnterCriticalRegion, KeLeaveCriticalRegion, MiLookupDataTableEntry(), NTSTATUS(), PAGED_CODE, PsLoadedModuleResource, RtlImageNtHeader(), Status, and TRUE.
|
|
Definition at line 5542 of file iosup.c. References BYTE_OFFSET, MI_PFN_ELEMENT, MiGetVirtualAddressMappedByPte, PAGE_SHIFT, and _MMPFN::PteAddress. Referenced by MmSetKernelDumpRange().
|
|
Definition at line 7167 of file iosup.c. References PsGetCurrentThread.
|
|
Definition at line 6864 of file iosup.c. References DbgPrint, ExAcquireResourceShared, ExReleaseResource, KeBugCheckEx(), KeEnterCriticalRegion, KeLeaveCriticalRegion, MI_IS_PHYSICAL_ADDRESS, MiLookupDataTableEntry(), MM_DBG_LOCK_CODE, MmLockPagableSectionByHandle(), NULL, PAGED_CODE, PsLoadedModuleResource, RtlImageNtHeader(), SECTION_BASE_ADDRESS, and TRUE. Referenced by SmbTraceStart().
|
|
Definition at line 6284 of file iosup.c. References ASSERT, FALSE, KeEnterCriticalRegion, KeLeaveCriticalRegion, KePulseEvent(), KernelMode, KeWaitForSingleObject(), LOCK_PFN2, LOCK_SYSTEM_WS, MI_IS_PHYSICAL_ADDRESS, MI_IS_SYSTEM_CACHE_ADDRESS, MiGetPteAddress, MiLockCode(), MiMakeSystemAddressValidPfnSystemWs(), MM_LOCK_BY_REFCOUNT, MmCollidedLockEvent, MmCollidedLockWait, MmSystemRangeStart, NULL, SECTION_BASE_ADDRESS, TRUE, UNLOCK_PFN2, UNLOCK_PFN_AND_THEN_WAIT, UNLOCK_SYSTEM_WS, UNLOCK_SYSTEM_WS_NO_IRQL, and WrVirtualMemory. Referenced by ExpGetLockInformation(), ExpGetLookasideInformation(), ExpGetPoolInformation(), ExpGetProcessInformation(), KeSetPhysicalCacheTypeRange(), KiAmdK6MtrrSetMemoryType(), MiEmptyAllWorkingSets(), MiFindContiguousMemory(), MiLoadSystemImage(), MiMapViewInSystemSpace(), MiSetPagingOfDriver(), MiShareSessionImage(), MiUnmapLockedPagesInUserSpace(), MiUnmapViewInSystemSpace(), MmAdjustWorkingSetSize(), MmAllocateNonCachedMemory(), MmAllocatePagesForMdl(), MmFreeDriverInitialization(), MmFreeNonCachedMemory(), MmFreePagesFromMdl(), MmLockPagableDataSection(), MmLockPagedPool(), MmMapViewOfSection(), MmResetDriverPaging(), MmShutdownSystem(), MmUnloadSystemImage(), MmUnlockPagedPool(), NtQueryVirtualMemory(), PspQueryPooledQuotaLimits(), PspQueryQuotaLimits(), PspQueryWorkingSetWatch(), and PspSetQuotaLimits().
|
|
Definition at line 7821 of file iosup.c. References ExPageLockHandle, LOCK_PFN, LOCK_SYSTEM_WS, MiGetPteAddress, MiLockCode(), MM_LOCK_BY_REFCOUNT, MmLockPagableSectionByHandle(), MmUnlockPagableImageSection(), UNLOCK_PFN, and UNLOCK_SYSTEM_WS. Referenced by Ke386SetDescriptorProcess(), and MiSetImageProtect().
|
|
Definition at line 3415 of file iosup.c. References ASSERT, BYTE_OFFSET, _MDL::ByteCount, _MDL::ByteOffset, COMPUTE_PAGES_SPANNED, ExAllocatePoolWithTag, FALSE, KeFeatureBits, KeFlushEntireTb(), KeInvalidateAllCaches(), KeSetPhysicalCacheTypeRange(), KF_PAT, _MDL::MappedSystemVa, MI_DISABLE_CACHING, MI_SET_PTE_WRITE_COMBINE, MI_WRITE_VALID_PTE, MiGetVirtualAddressMappedByPte, MiInsertPteTracker(), MiLockSystemSpace, MiReleaseDeadPteTrackers(), MiReleaseSystemPtes(), MiReserveSystemPtes(), MiSweepCacheMachineDependent(), MiTrackPtesAborted, MiUnlockSystemSpace, MiWriteCombiningPtes, MM_COLOR_ALIGNMENT, MM_COLOR_MASK_VIRTUAL, MmCached, MmMaximumCacheType, MmNonCached, MmTrackPtes, MmUSWCCached, MmWriteCombined, NonPagedPool, NT_SUCCESS, NTSTATUS(), NULL, PAGE_SHIFT, RtlGetCallersAddress(), _MDL::StartVa, Status, SystemPteSpace, TRUE, _MMPTE::u, and ValidKernelPte. Referenced by CmpFindACPITable(), DriverEntry(), MmAllocateContiguousMemorySpecifyCache(), MmMapVideoDisplay(), and VerifierMapIoSpace().
|
|
Definition at line 2009 of file iosup.c. References HighPagePriority, MmCached, MmMapLockedPagesSpecifyCache(), NULL, and TRUE. Referenced by VerifierMapLockedPages().
|
|
Definition at line 2058 of file iosup.c. References ASSERT, COMPUTE_PAGES_SPANNED, ExAllocatePoolWithTag, ExFreePool(), FALSE, HighPagePriority, KeFlushEntireTb(), KeInvalidateAllCaches(), KernelMode, LOCK_PFN2, MDL_IO_SPACE, MDL_MAPPED_TO_SYSTEM_VA, MDL_MAPPING_CAN_FAIL, MDL_PAGES_LOCKED, MDL_PARTIAL, MDL_PARTIAL_HAS_BEEN_MAPPED, MDL_PHYSICAL_VIEW, MDL_SOURCE_IS_NONPAGED_POOL, MI_DISABLE_CACHING, MI_PFN_ELEMENT, MI_SET_PTE_WRITE_COMBINE, MI_WRITE_VALID_PTE, MiGetPteAddress, MiGetSystemPteAvailability(), MiGetVirtualAddressMappedByPte, MiInsertPteTracker(), MiLockSystemSpace, MiMapLockedPagesInUserSpace(), MiReleaseDeadPteTrackers(), MiReleaseSystemPtes(), MiReserveSystemPtes(), MiSweepCacheMachineDependent(), MiTrackPtesAborted, MiUnlockSystemSpace, MiWriteCombiningPtes, MM_COLOR_ALIGNMENT, MM_COLOR_MASK, MM_COLOR_MASK_VIRTUAL, MM_EMPTY_LIST, MM_KSEG0_BASE, MmCached, MmHardwareCoherentCached, MmNonCached, MmNonCachedUnordered, MmSystemLockPagesCount, MmTrackPtes, MmWriteCombined, NonPagedPool, NULL, PAGE_SHIFT, PAGE_SIZE, PTE_SHIFT, RtlGetCallersAddress(), SystemPteSpace, TRUE, _MMPTE::u, _MMPFN::u3, UNLOCK_PFN2, and ValidKernelPte. Referenced by MiCloneProcessAddressSpace(), MiDoMappedCopy(), MmMapLockedPages(), NtStartProfile(), and VerifierMapLockedPagesSpecifyCache().
|
|
Definition at line 7197 of file iosup.c. References ASSERT, BYTES_TO_PAGES, KiFlushSingleTb(), MiGetVirtualAddressMappedByPte, MM_KERNEL_DEMAND_ZERO_PTE, MmCrashDumpPte, PAGE_SHIFT, PAGE_SIZE, TRUE, _MMPTE::u, and ValidKernelPte. Referenced by IopMapPhysicalMemory(), and IopWritePageToDisk().
|
|
Definition at line 5161 of file iosup.c. References _EPROCESS::AddressSpaceDeleted, ASSERT, _MMVAD::EndingVpn, KeFlushEntireTb(), KeFlushSingleTb(), LOCK_PFN, LOCK_WS_AND_ADDRESS_SPACE, MI_VA_TO_VPN, MI_VPN_TO_VA, MI_VPN_TO_VA_ENDING, MiFillMemoryPte, MiGetPteAddress, MiLocateAddress(), MmGetPhysicalAddress(), NTSTATUS(), NULL, PAGE_SHIFT, PAGED_CODE, PsGetCurrentProcess, _MMVAD::StartingVpn, Status, TRUE, _MMPTE::u, _MMVAD::u, UNLOCK_PFN, UNLOCK_WS_AND_ADDRESS_SPACE, and VOID().
|
|
Definition at line 7516 of file iosup.c. References ASSERT, BYTE_OFFSET, COMPUTE_PAGES_SPANNED, ExAllocatePoolWithTag, ExFreePool(), FALSE, MI_DISABLE_CACHING, MI_SET_GLOBAL_STATE, MI_WRITE_VALID_PTE, MiFillMemoryPte, MiGetSubsectionAddressForPte, MiGetVirtualAddressMappedByPte, MiProtoAddressForPte, MiReleaseSystemPtes(), MiReserveSystemPtes(), MM_NOCACHE, MM_READWRITE, MM_VA_MAPPED_BY_PDE, MM_ZERO_KERNEL_PTE, MmMapIoSpace(), MmPageSizeInfo, MMPTE, NonPagedPool, NULL, PAGE_SHIFT, PAGE_SIZE, PAGED_CODE, PagedPool, PTE_SHIFT, _SUBSECTION::PtesInSubsection, _SUBSECTION::StartingSector, _SUBSECTION::SubsectionBase, SystemPteSpace, TRUE, _SUBSECTION::u, _MMPTE::u, ValidKernelPte, X64K, and ZeroKernelPte.
|
|
Definition at line 238 of file iosup.c. References ADDRESS_AND_SIZE_TO_SPAN_PAGES, ASSERT, CHAR, COMPUTE_PAGES_SPANNED, DbgPrint, _MI_PHYSICAL_VIEW::EndVa, EXCEPTION_EXECUTE_HANDLER, ExRaiseStatus(), failure, FALSE, IoReadAccess, KernelMode, LOCK_PFN2, MDL_IO_SPACE, MDL_MAPPED_TO_SYSTEM_VA, MDL_PAGES_LOCKED, MDL_PARTIAL, MDL_PHYSICAL_VIEW, MDL_SOURCE_IS_NONPAGED_POOL, MDL_WRITE_OPERATION, MI_ADD_LOCKED_PAGE_CHARGE, MI_CONVERT_PHYSICAL_TO_PFN, MI_GET_PAGE_FRAME_FROM_PTE, MI_INSTRUMENT_PROBE_RAISES, MI_IS_PHYSICAL_ADDRESS, MI_IS_SYSTEM_CACHE_ADDRESS, MI_NONPAGABLE_MEMORY_AVAILABLE, MI_PFN_ELEMENT, MiAddMdlTracker(), MiGetPdeAddress, MiGetPpeAddress, MiGetPteAddress, MiIsPteOnPdeBoundary, MiIsPteOnPpeBoundary, MM_EMPTY_LIST, MM_PTE_WRITE_MASK, MM_READWRITE, MmAccessFault(), MmHighestPhysicalPage, MmLockPagesLimit, MmReferenceCountCheck, MmResetPageFaultReadAhead, MmSavePageFaultReadAhead, MmSetPageFaultReadAhead, MmSystemLockPagesCount, MmTrackLockedPages, MmUnlockPages(), NT_SUCCESS, NTSTATUS(), NULL, _EPROCESS::NumberOfLockedPages, PAGE_SIZE, _EPROCESS::PhysicalVadList, ProbeForWriteChar, PsGetCurrentProcess, PsGetCurrentThread, RtlGetCallersAddress(), _MI_PHYSICAL_VIEW::StartVa, TRUE, _MMPTE::u, _MMVAD::u, _MMPFN::u3, UNLOCK_PFN2, and _MI_PHYSICAL_VIEW::Vad. Referenced by BuildQueryDirectoryIrp(), CcMdlRead(), CcPrepareMdlWrite(), CcZeroData(), ExLockUserBuffer(), IoBuildAsynchronousFsdRequest(), IoBuildDeviceIoControlRequest(), IopSetEaOrQuotaInformationFile(), IopXxxControlFile(), MiDoMappedCopy(), MiGetWorkingSetInfo(), MmProbeAndLockProcessPages(), MmProbeAndLockSelectedPages(), NtNotifyChangeDirectoryFile(), NtQueryEaFile(), NtQueryQuotaInformationFile(), NtReadFile(), NtSetEaFile(), NtStartProfile(), NtWriteFile(), UdfCreateUserMdl(), VdmQueryDirectoryFile(), and VerifierProbeAndLockPages().
|
|
Definition at line 813 of file iosup.c. References EXCEPTION_EXECUTE_HANDLER, ExRaiseStatus(), FALSE, KeAttachProcess(), KeDetachProcess(), MmProbeAndLockPages(), NTSTATUS(), PsGetCurrentProcess, Status, and TRUE. Referenced by VerifierProbeAndLockProcessPages().
|
|
Definition at line 1152 of file iosup.c. References ASSERT, BYTES_TO_PAGES, MDL_IO_SPACE, MDL_MAPPED_TO_SYSTEM_VA, MDL_PAGES_LOCKED, MDL_PARTIAL, MDL_SOURCE_IS_NONPAGED_POOL, _MDL::MdlFlags, MiAddMdlTracker(), MiFreeMdlTracker(), MmInitializeMdl, MmProbeAndLockPages(), MmTrackLockedPages, MmUnlockPages(), PAGE_SHIFT, PAGE_SIZE, PAGED_CODE, _MDL::Process, RtlGetCallersAddress(), _MDL::StartVa, and TRUE. Referenced by NtReadFileScatter(), NtWriteFileGather(), and VerifierProbeAndLockSelectedPages().
|
|
Definition at line 7270 of file iosup.c. References KiFlushSingleTb(), MiGetVirtualAddressMappedByPte, MM_ZERO_PTE, MmCrashDumpPte, PAGE_SIZE, TRUE, and _MMPTE::u.
|
|
Definition at line 8038 of file iosup.c. References LOCK_PFN2, MiDecrementReferenceCount(), PAGE_SHIFT, and UNLOCK_PFN2.
|
|
Definition at line 5920 of file iosup.c. References Count, FALSE, KeFlushEntireTb(), KeFlushMultipleTb(), KeFlushSingleTb(), LOCK_PFN2, MI_IS_PTE_DIRTY, MI_PFN_ELEMENT, MI_SET_PTE_CLEAN, MI_WRITE_VALID_PTE_NEW_PROTECTION, MiGetPteAddress, MiReleasePageFileSpace(), MM_MAXIMUM_FLUSH_COUNT, NULL, _MMPFN::OriginalPte, PAGE_SIZE, TRUE, _MMPTE::u, _MMPFN::u3, UNLOCK_PFN2, VOID(), and ZeroPte. Referenced by CcFlushCache(), CcMapAndCopy(), CcPurgeAndClearCacheSection(), CcUnpinRepinnedBcb(), and CcZeroData().
|
|
Definition at line 7311 of file iosup.c. References ASSERT, _MMBANKED_SECTION::BankedRoutine, _MMBANKED_SECTION::BankShift, _MMBANKED_SECTION::BankSize, _MMBANKED_SECTION::BankTemplate, _MMBANKED_SECTION::BasedPte, _MMBANKED_SECTION::BasePhysicalPage, _MMBANKED_SECTION::Context, _MMBANKED_SECTION::CurrentMappedPte, _MMVAD::EndingVpn, ExAllocatePoolWithTag, KeAttachProcess(), KeDetachProcess(), KeFlushEntireTb(), KernelMode, LOCK_WS_AND_ADDRESS_SPACE, MI_GET_PAGE_FRAME_FROM_PTE, MI_MAKE_VALID_PTE, MI_SET_PTE_DIRTY, MI_VA_TO_VPN, MI_VPN_TO_VA, MiGetPteAddress, MiLocateAddress(), MM_READWRITE, MMBANKED_SECTION, NonPagedPool, NT_SUCCESS, NTSTATUS(), NULL, ObDereferenceObject, ObReferenceObjectByHandle(), PAGE_SHIFT, PAGE_SIZE, PAGED_CODE, PBANKED_SECTION_ROUTINE, PMMBANKED_SECTION, PsProcessType, PTE_SHIFT, _MMVAD::StartingVpn, Status, TRUE, _MMPTE::u, _MMVAD::u, _MMVAD::u4, UNLOCK_WS_AND_ADDRESS_SPACE, and ZeroPte.
|
|
|
Definition at line 4027 of file iosup.c. References BYTES_TO_PAGES, EXCEPTION_EXECUTE_HANDLER, FALSE, KeFlushSingleTb(), LOCK_PFN, MI_IS_PHYSICAL_ADDRESS, MI_MAKE_VALID_PTE, MiGetPteAddress, MiMakeProtectionMask(), PAGE_SHIFT, TRUE, _MMPTE::u, and UNLOCK_PFN. Referenced by KiI386PentiumLockErrataFixup().
|
|
Definition at line 5815 of file iosup.c. References ADDRESS_AND_SIZE_TO_SPAN_PAGES. Referenced by ExLockUserBuffer(), MiCreateImageFileMap(), MmCreateMdl(), and NtStartProfile().
|
|
Definition at line 7065 of file iosup.c. References ASSERT, FALSE, KePulseEvent(), LOCK_PFN2, MI_GET_PAGE_FRAME_FROM_PTE, MI_IS_PHYSICAL_ADDRESS, MI_PFN_ELEMENT, MI_REMOVE_LOCKED_PAGE_CHARGE, MiDecrementReferenceCount(), MiGetPteAddress, MmCollidedLockEvent, MmCollidedLockWait, MmLockedCode, SECTION_BASE_ADDRESS, _MMPTE::u, _MMPFN::u3, and UNLOCK_PFN2. Referenced by ExpGetLockInformation(), ExpGetLookasideInformation(), ExpGetPoolInformation(), ExpGetProcessInformation(), IoUnregisterShutdownNotification(), Ke386ConfigureCyrixProcessor(), KeSetPhysicalCacheTypeRange(), KiAmdK6MtrrSetMemoryType(), MiEmptyAllWorkingSets(), MiFindContiguousMemory(), MiFreeInitializationCode(), MiLoadSystemImage(), MiMapViewInSystemSpace(), MiSetPagingOfDriver(), MiShareSessionImage(), MiUnmapLockedPagesInUserSpace(), MiUnmapViewInSystemSpace(), MmAdjustWorkingSetSize(), MmAllocateNonCachedMemory(), MmAllocatePagesForMdl(), MmFreeDriverInitialization(), MmFreeNonCachedMemory(), MmFreePagesFromMdl(), MmLockPagedPool(), MmMapViewOfSection(), MmResetDriverPaging(), MmShutdownSystem(), MmUnloadSystemImage(), MmUnlockPagedPool(), NtQueryVirtualMemory(), PspQueryPooledQuotaLimits(), PspQueryQuotaLimits(), PspQueryWorkingSetWatch(), PspSetQuotaLimits(), and SmbTraceStop().
|
|
Definition at line 7869 of file iosup.c. References ASSERT, ExPageLockHandle, LOCK_PFN2, MI_GET_PAGE_FRAME_FROM_PTE, MI_PFN_ELEMENT, MI_REMOVE_LOCKED_PAGE_CHARGE, MiDecrementReferenceCount(), MiGetPteAddress, MmLockPagableSectionByHandle(), MmUnlockPagableImageSection(), _MMPTE::u, _MMPFN::u3, and UNLOCK_PFN2. Referenced by Ke386SetDescriptorProcess(), and MiSetImageProtect().
|
|
Definition at line 1347 of file iosup.c. References ADDRESS_AND_SIZE_TO_SPAN_PAGES, ASSERT, KeBugCheckEx(), _LOCK_HEADER::ListHead, LOCK_PFN2, _LOCK_TRACKER::Mdl, MDL_IO_SPACE, MDL_MAPPED_TO_SYSTEM_VA, MDL_PAGES_LOCKED, MDL_PARTIAL, MDL_PHYSICAL_VIEW, MDL_SOURCE_IS_NONPAGED_POOL, MDL_WRITE_OPERATION, MI_PFN_ELEMENT, MI_REMOVE_LOCKED_PAGE_CHARGE, MiDecrementReferenceCount(), MiFreeMdlTracker(), MiReleasePageFileSpace(), MM_EMPTY_LIST, MmHighestPhysicalPage, MmLockedPagesHead, MmTrackLockedPages, MmUnmapLockedPages(), NULL, _MMPFN::OriginalPte, TRUE, _MMPTE::u, _MMPFN::u3, Unlock, and UNLOCK_PFN2. Referenced by CcMdlRead(), CcMdlReadComplete2(), CcMdlWriteComplete2(), CcPrepareMdlWrite(), CcZeroData(), ExpProfileDelete(), ExUnlockUserBuffer(), MiDoMappedCopy(), MiGetWorkingSetInfo(), MmProbeAndLockPages(), MmProbeAndLockSelectedPages(), NtStartProfile(), NtStopProfile(), and VerifierUnlockPages().
|
|
Definition at line 3678 of file iosup.c. References ASSERT, COMPUTE_PAGES_SPANNED, MiGetPteAddress, MiInsertDeadPteTrackingBlock(), MiLockSystemSpace, MiReleaseSystemPtes(), MiRemovePteTracker(), MiUnlockSystemSpace, MmTrackPtes, NULL, PAGED_CODE, and SystemPteSpace. Referenced by CmpFindACPITable(), CmpMatchAcpiCreatorIdRule(), CmpMatchAcpiCreatorRevisionRule(), CmpMatchAcpiOemIdRule(), CmpMatchAcpiOemRevisionRule(), CmpMatchAcpiOemTableIdRule(), CmpMatchAcpiRevisionRule(), DriverEntry(), MmFreeContiguousMemorySpecifyCache(), MmUnmapVideoDisplay(), and VerifierUnmapIoSpace().
|
|
Definition at line 3124 of file iosup.c. References ASSERT, COMPUTE_PAGES_SPANNED, LOCK_PFN2, MDL_IO_SPACE, MDL_LOCK_HELD, MDL_MAPPED_TO_SYSTEM_VA, MDL_PARENT_MAPPED_SYSTEM_VA, MDL_PARTIAL_HAS_BEEN_MAPPED, MDL_PHYSICAL_VIEW, MI_GET_PAGE_FRAME_FROM_PTE, MI_IS_PHYSICAL_ADDRESS, MI_PFN_ELEMENT, MiGetPteAddress, MiInsertDeadPteTrackingBlock(), MiLockSystemSpace, MiReleaseSystemPtes(), MiRemovePteTracker(), MiUnlockSystemSpace, MiUnmapLockedPagesInUserSpace(), MmTrackPtes, SystemPteSpace, _MMPTE::u, _MMPFN::u3, and UNLOCK_PFN2. Referenced by CcZeroData(), ExpProfileDelete(), MiCheckForCrashDump(), MiCleanSection(), MiCloneProcessAddressSpace(), MiCreateImageFileMap(), MiDoMappedCopy(), MiFlushSectionInternal(), MiMakeOutswappedPageResident(), MiWaitForInPageComplete(), MiWriteComplete(), MmShutdownSystem(), MmUnlockPages(), NtStartProfile(), NtStopProfile(), and VerifierUnmapLockedPages().
|
|
Definition at line 7751 of file iosup.c. References ASSERT, COMPUTE_PAGES_SPANNED, ExFreePool(), FALSE, KSEG0_BASE, MiGetPteAddress, MiGetSubsectionAddress, MiPteToProto, MiReleaseSystemPtes(), MmUnmapIoSpace(), PAGED_CODE, _SUBSECTION::SubsectionBase, SystemPteSpace, _MMPTE::u, and X64K.
|
|
Definition at line 95 of file iosup.c. Referenced by MiInitializeIoTrackers(), MiInsertDeadPteTrackingBlock(), and MiReleaseDeadPteTrackers(). |
|
Definition at line 4266 of file iosup.c. Referenced by MmAllocatePagesForMdl(). |
|
Definition at line 4265 of file iosup.c. Referenced by MmAllocatePagesForMdl(). |
|
Definition at line 4264 of file iosup.c. Referenced by MmAllocatePagesForMdl(). |
|
Definition at line 141 of file iosup.c. Referenced by KdpCheckLowMemory(), MiAllocateContiguousMemory(), MiInitMachineDependent(), MiReloadBootLoadedDrivers(), MmFreeContiguousMemory(), and MmFreeContiguousMemorySpecifyCache(). |
|
|
|
Definition at line 94 of file iosup.c. Referenced by MiGetHighestPteConsumer(), MiInitializeIoTrackers(), MiInsertPteTracker(), and MiRemovePteTracker(). |
|
Definition at line 96 of file iosup.c. Referenced by MiInitializeIoTrackers(), MiInsertDeadPteTrackingBlock(), and MiReleaseDeadPteTrackers(). |
|
Definition at line 99 of file iosup.c. Referenced by MiAddMdlTracker(), MiFreeMdlTracker(), and MmCleanProcessAddressSpace(). |
|
Definition at line 93 of file iosup.c. Referenced by MiGetHighestPteConsumer(), MiRemovePteTracker(), MmMapIoSpace(), and MmMapLockedPagesSpecifyCache(). |
|
Definition at line 211 of file iosup.c. Referenced by MiMapLockedPagesInUserSpace(), MiMapSinglePage(), MiMapViewOfPhysicalSection(), MmMapIoSpace(), and MmMapLockedPagesSpecifyCache(). |
|
Definition at line 206 of file iosup.c. Referenced by MmInitSystem(), MmLockPagableSectionByHandle(), and MmUnlockPagableImageSection(). |
|
Definition at line 207 of file iosup.c. Referenced by MmLockPagableSectionByHandle(), and MmUnlockPagableImageSection(). |
|
Definition at line 209 of file iosup.c. Referenced by MiLockCode(), and MmUnlockPagableImageSection(). |
|
Definition at line 98 of file iosup.c. Referenced by MiAddMdlTracker(), MiFreeMdlTracker(), MiInitializeIoTrackers(), and MmUnlockPages(). |
|
Definition at line 204 of file iosup.c. Referenced by MmAllocatePagesForMdl(), and MmFreePagesFromMdl(). |
|
Definition at line 234 of file iosup.c. Referenced by MmProbeAndLockPages(). |
|
Definition at line 26 of file iosup.c. Referenced by MmMapLockedPagesSpecifyCache(), and MmProbeAndLockPages(). |
|
|
|
|
|
|