ntoskrnl header cleanups

svn path=/trunk/; revision=17846
This commit is contained in:
Alex Ionescu 2005-09-14 01:05:50 +00:00
parent a6f1511ecb
commit e8dcb74344
22 changed files with 1293 additions and 583 deletions

File diff suppressed because it is too large Load diff

View file

@ -28,7 +28,7 @@
#include "v86m.h" #include "v86m.h"
#include "fs.h" #include "fs.h"
#include "port.h" #include "port.h"
#include "nls.h" #include "rtl.h"
#ifdef KDBG #ifdef KDBG
#include "../kdbg/kdb.h" #include "../kdbg/kdb.h"
#endif #endif

View file

@ -10,32 +10,37 @@ extern ULONG NlsUnicodeTableOffset;
extern PUSHORT NlsUnicodeUpcaseTable; extern PUSHORT NlsUnicodeUpcaseTable;
extern PUSHORT NlsUnicodeLowercaseTable; extern PUSHORT NlsUnicodeLowercaseTable;
VOID VOID
STDCALL STDCALL
RtlpInitNls(VOID); RtlpInitNls(VOID);
VOID VOID
NTAPI
RtlpImportAnsiCodePage( RtlpImportAnsiCodePage(
PUSHORT TableBase, PUSHORT TableBase,
ULONG Size ULONG Size
); );
VOID VOID
NTAPI
RtlpImportOemCodePage( RtlpImportOemCodePage(
PUSHORT TableBase, PUSHORT TableBase,
ULONG Size ULONG Size
); );
VOID VOID
NTAPI
RtlpImportUnicodeCasemap( RtlpImportUnicodeCasemap(
PUSHORT TableBase, PUSHORT TableBase,
ULONG Size ULONG Size
); );
VOID VOID
NTAPI
RtlpCreateInitialNlsTables(VOID); RtlpCreateInitialNlsTables(VOID);
VOID VOID
NTAPI
RtlpCreateNlsSection(VOID); RtlpCreateNlsSection(VOID);
#endif /* __NTOSKRNL_INCLUDE_INTERNAL_NLS_H */ #endif /* __NTOSKRNL_INCLUDE_INTERNAL_NLS_H */

View file

@ -48,6 +48,7 @@
/* FUNCTIONS *****************************************************************/ /* FUNCTIONS *****************************************************************/
NTSTATUS NTSTATUS
NTAPI
MmWritePageVirtualMemory(PMADDRESS_SPACE AddressSpace, MmWritePageVirtualMemory(PMADDRESS_SPACE AddressSpace,
PMEMORY_AREA MemoryArea, PMEMORY_AREA MemoryArea,
PVOID Address, PVOID Address,
@ -129,6 +130,7 @@ MmWritePageVirtualMemory(PMADDRESS_SPACE AddressSpace,
} }
NTSTATUS NTSTATUS
NTAPI
MmPageOutVirtualMemory(PMADDRESS_SPACE AddressSpace, MmPageOutVirtualMemory(PMADDRESS_SPACE AddressSpace,
PMEMORY_AREA MemoryArea, PMEMORY_AREA MemoryArea,
PVOID Address, PVOID Address,
@ -232,6 +234,7 @@ MmPageOutVirtualMemory(PMADDRESS_SPACE AddressSpace,
} }
NTSTATUS NTSTATUS
NTAPI
MmNotPresentFaultVirtualMemory(PMADDRESS_SPACE AddressSpace, MmNotPresentFaultVirtualMemory(PMADDRESS_SPACE AddressSpace,
MEMORY_AREA* MemoryArea, MEMORY_AREA* MemoryArea,
PVOID Address, PVOID Address,
@ -789,6 +792,7 @@ MmFreeVirtualMemoryPage(PVOID Context,
} }
VOID VOID
NTAPI
MmFreeVirtualMemory(PEPROCESS Process, MmFreeVirtualMemory(PEPROCESS Process,
PMEMORY_AREA MemoryArea) PMEMORY_AREA MemoryArea)
{ {
@ -954,6 +958,7 @@ NtFreeVirtualMemory(IN HANDLE ProcessHandle,
} }
NTSTATUS NTSTATUS
NTAPI
MmProtectAnonMem(PMADDRESS_SPACE AddressSpace, MmProtectAnonMem(PMADDRESS_SPACE AddressSpace,
PMEMORY_AREA MemoryArea, PMEMORY_AREA MemoryArea,
PVOID BaseAddress, PVOID BaseAddress,

View file

@ -20,6 +20,7 @@ STATIC MADDRESS_SPACE KernelAddressSpace;
/* FUNCTIONS *****************************************************************/ /* FUNCTIONS *****************************************************************/
VOID VOID
NTAPI
MmLockAddressSpace(PMADDRESS_SPACE AddressSpace) MmLockAddressSpace(PMADDRESS_SPACE AddressSpace)
{ {
/* /*
@ -33,6 +34,7 @@ MmLockAddressSpace(PMADDRESS_SPACE AddressSpace)
} }
VOID VOID
NTAPI
MmUnlockAddressSpace(PMADDRESS_SPACE AddressSpace) MmUnlockAddressSpace(PMADDRESS_SPACE AddressSpace)
{ {
/* /*
@ -45,23 +47,30 @@ MmUnlockAddressSpace(PMADDRESS_SPACE AddressSpace)
ExReleaseFastMutex(&AddressSpace->Lock); ExReleaseFastMutex(&AddressSpace->Lock);
} }
VOID INIT_FUNCTION VOID
INIT_FUNCTION
NTAPI
MmInitializeKernelAddressSpace(VOID) MmInitializeKernelAddressSpace(VOID)
{ {
MmInitializeAddressSpace(NULL, &KernelAddressSpace); MmInitializeAddressSpace(NULL, &KernelAddressSpace);
} }
PMADDRESS_SPACE MmGetCurrentAddressSpace(VOID) PMADDRESS_SPACE
NTAPI
MmGetCurrentAddressSpace(VOID)
{ {
return(&PsGetCurrentProcess()->AddressSpace); return(&PsGetCurrentProcess()->AddressSpace);
} }
PMADDRESS_SPACE MmGetKernelAddressSpace(VOID) PMADDRESS_SPACE
NTAPI
MmGetKernelAddressSpace(VOID)
{ {
return(&KernelAddressSpace); return(&KernelAddressSpace);
} }
NTSTATUS NTSTATUS
NTAPI
MmInitializeAddressSpace(PEPROCESS Process, MmInitializeAddressSpace(PEPROCESS Process,
PMADDRESS_SPACE AddressSpace) PMADDRESS_SPACE AddressSpace)
{ {
@ -95,6 +104,7 @@ MmInitializeAddressSpace(PEPROCESS Process,
} }
NTSTATUS NTSTATUS
NTAPI
MmDestroyAddressSpace(PMADDRESS_SPACE AddressSpace) MmDestroyAddressSpace(PMADDRESS_SPACE AddressSpace)
{ {
if (AddressSpace->PageTableRefCountTable != NULL) if (AddressSpace->PageTableRefCountTable != NULL)

View file

@ -49,7 +49,9 @@ VOID MmPrintMemoryStatistic(VOID)
MmStats.NrFreePages); MmStats.NrFreePages);
} }
VOID INIT_FUNCTION VOID
INIT_FUNCTION
NTAPI
MmInitializeBalancer(ULONG NrAvailablePages, ULONG NrSystemPages) MmInitializeBalancer(ULONG NrAvailablePages, ULONG NrSystemPages)
{ {
memset(MiMemoryConsumers, 0, sizeof(MiMemoryConsumers)); memset(MiMemoryConsumers, 0, sizeof(MiMemoryConsumers));
@ -68,7 +70,9 @@ MmInitializeBalancer(ULONG NrAvailablePages, ULONG NrSystemPages)
MiMemoryConsumers[MC_NPPOOL].PagesUsed = NrSystemPages; MiMemoryConsumers[MC_NPPOOL].PagesUsed = NrSystemPages;
} }
VOID INIT_FUNCTION VOID
INIT_FUNCTION
NTAPI
MmInitializeMemoryConsumer(ULONG Consumer, MmInitializeMemoryConsumer(ULONG Consumer,
NTSTATUS (*Trim)(ULONG Target, ULONG Priority, NTSTATUS (*Trim)(ULONG Target, ULONG Priority,
PULONG NrFreed)) PULONG NrFreed))
@ -77,6 +81,7 @@ MmInitializeMemoryConsumer(ULONG Consumer,
} }
NTSTATUS NTSTATUS
NTAPI
MmReleasePageMemoryConsumer(ULONG Consumer, PFN_TYPE Page) MmReleasePageMemoryConsumer(ULONG Consumer, PFN_TYPE Page)
{ {
PMM_ALLOCATION_REQUEST Request; PMM_ALLOCATION_REQUEST Request;
@ -117,6 +122,7 @@ MmReleasePageMemoryConsumer(ULONG Consumer, PFN_TYPE Page)
} }
VOID VOID
NTAPI
MiTrimMemoryConsumer(ULONG Consumer) MiTrimMemoryConsumer(ULONG Consumer)
{ {
LONG Target; LONG Target;
@ -136,6 +142,7 @@ MiTrimMemoryConsumer(ULONG Consumer)
} }
VOID VOID
NTAPI
MmRebalanceMemoryConsumers(VOID) MmRebalanceMemoryConsumers(VOID)
{ {
LONG Target; LONG Target;
@ -168,6 +175,7 @@ MiIsBalancerThread(VOID)
} }
NTSTATUS NTSTATUS
NTAPI
MmRequestPageMemoryConsumer(ULONG Consumer, BOOLEAN CanWait, MmRequestPageMemoryConsumer(ULONG Consumer, BOOLEAN CanWait,
PPFN_TYPE AllocatedPage) PPFN_TYPE AllocatedPage)
{ {
@ -353,7 +361,9 @@ MiBalancerThread(PVOID Unused)
} }
} }
VOID INIT_FUNCTION VOID
INIT_FUNCTION
NTAPI
MiInitBalancerThread(VOID) MiInitBalancerThread(VOID)
{ {
KPRIORITY Priority; KPRIORITY Priority;

View file

@ -66,6 +66,7 @@ static ULONG UnzeroedPageCount = 0;
/* FUNCTIONS *************************************************************/ /* FUNCTIONS *************************************************************/
VOID VOID
NTAPI
MmTransferOwnershipPage(PFN_TYPE Pfn, ULONG NewConsumer) MmTransferOwnershipPage(PFN_TYPE Pfn, ULONG NewConsumer)
{ {
KIRQL oldIrql; KIRQL oldIrql;
@ -95,6 +96,7 @@ MmTransferOwnershipPage(PFN_TYPE Pfn, ULONG NewConsumer)
} }
PFN_TYPE PFN_TYPE
NTAPI
MmGetLRUFirstUserPage(VOID) MmGetLRUFirstUserPage(VOID)
{ {
PLIST_ENTRY NextListEntry; PLIST_ENTRY NextListEntry;
@ -114,6 +116,7 @@ MmGetLRUFirstUserPage(VOID)
} }
VOID VOID
NTAPI
MmSetLRULastPage(PFN_TYPE Pfn) MmSetLRULastPage(PFN_TYPE Pfn)
{ {
KIRQL oldIrql; KIRQL oldIrql;
@ -131,6 +134,7 @@ MmSetLRULastPage(PFN_TYPE Pfn)
} }
PFN_TYPE PFN_TYPE
NTAPI
MmGetLRUNextUserPage(PFN_TYPE PreviousPfn) MmGetLRUNextUserPage(PFN_TYPE PreviousPfn)
{ {
PLIST_ENTRY NextListEntry; PLIST_ENTRY NextListEntry;
@ -158,6 +162,7 @@ MmGetLRUNextUserPage(PFN_TYPE PreviousPfn)
} }
PFN_TYPE PFN_TYPE
NTAPI
MmGetContinuousPages(ULONG NumberOfBytes, MmGetContinuousPages(ULONG NumberOfBytes,
PHYSICAL_ADDRESS LowestAcceptableAddress, PHYSICAL_ADDRESS LowestAcceptableAddress,
PHYSICAL_ADDRESS HighestAcceptableAddress, PHYSICAL_ADDRESS HighestAcceptableAddress,
@ -261,6 +266,7 @@ MmGetContinuousPages(ULONG NumberOfBytes,
BOOLEAN BOOLEAN
NTAPI
MiIsPfnRam(PADDRESS_RANGE BIOSMemoryMap, MiIsPfnRam(PADDRESS_RANGE BIOSMemoryMap,
ULONG AddressRangeCount, ULONG AddressRangeCount,
PFN_TYPE Pfn) PFN_TYPE Pfn)
@ -301,7 +307,9 @@ MiIsPfnRam(PADDRESS_RANGE BIOSMemoryMap,
} }
PVOID INIT_FUNCTION PVOID
INIT_FUNCTION
NTAPI
MmInitializePageList(ULONG_PTR FirstPhysKernelAddress, MmInitializePageList(ULONG_PTR FirstPhysKernelAddress,
ULONG_PTR LastPhysKernelAddress, ULONG_PTR LastPhysKernelAddress,
ULONG MemorySizeInPages, ULONG MemorySizeInPages,
@ -536,6 +544,7 @@ MmInitializePageList(ULONG_PTR FirstPhysKernelAddress,
} }
VOID VOID
NTAPI
MmSetFlagsPage(PFN_TYPE Pfn, ULONG Flags) MmSetFlagsPage(PFN_TYPE Pfn, ULONG Flags)
{ {
KIRQL oldIrql; KIRQL oldIrql;
@ -547,18 +556,21 @@ MmSetFlagsPage(PFN_TYPE Pfn, ULONG Flags)
} }
VOID VOID
NTAPI
MmSetRmapListHeadPage(PFN_TYPE Pfn, struct _MM_RMAP_ENTRY* ListHead) MmSetRmapListHeadPage(PFN_TYPE Pfn, struct _MM_RMAP_ENTRY* ListHead)
{ {
MmPageArray[Pfn].RmapListHead = ListHead; MmPageArray[Pfn].RmapListHead = ListHead;
} }
struct _MM_RMAP_ENTRY* struct _MM_RMAP_ENTRY*
NTAPI
MmGetRmapListHeadPage(PFN_TYPE Pfn) MmGetRmapListHeadPage(PFN_TYPE Pfn)
{ {
return(MmPageArray[Pfn].RmapListHead); return(MmPageArray[Pfn].RmapListHead);
} }
VOID VOID
NTAPI
MmMarkPageMapped(PFN_TYPE Pfn) MmMarkPageMapped(PFN_TYPE Pfn)
{ {
KIRQL oldIrql; KIRQL oldIrql;
@ -577,6 +589,7 @@ MmMarkPageMapped(PFN_TYPE Pfn)
} }
VOID VOID
NTAPI
MmMarkPageUnmapped(PFN_TYPE Pfn) MmMarkPageUnmapped(PFN_TYPE Pfn)
{ {
KIRQL oldIrql; KIRQL oldIrql;
@ -600,6 +613,7 @@ MmMarkPageUnmapped(PFN_TYPE Pfn)
} }
ULONG ULONG
NTAPI
MmGetFlagsPage(PFN_TYPE Pfn) MmGetFlagsPage(PFN_TYPE Pfn)
{ {
KIRQL oldIrql; KIRQL oldIrql;
@ -615,6 +629,7 @@ MmGetFlagsPage(PFN_TYPE Pfn)
VOID VOID
NTAPI
MmSetSavedSwapEntryPage(PFN_TYPE Pfn, SWAPENTRY SavedSwapEntry) MmSetSavedSwapEntryPage(PFN_TYPE Pfn, SWAPENTRY SavedSwapEntry)
{ {
KIRQL oldIrql; KIRQL oldIrql;
@ -626,6 +641,7 @@ MmSetSavedSwapEntryPage(PFN_TYPE Pfn, SWAPENTRY SavedSwapEntry)
} }
SWAPENTRY SWAPENTRY
NTAPI
MmGetSavedSwapEntryPage(PFN_TYPE Pfn) MmGetSavedSwapEntryPage(PFN_TYPE Pfn)
{ {
SWAPENTRY SavedSwapEntry; SWAPENTRY SavedSwapEntry;
@ -640,6 +656,7 @@ MmGetSavedSwapEntryPage(PFN_TYPE Pfn)
} }
VOID VOID
NTAPI
MmReferencePageUnsafe(PFN_TYPE Pfn) MmReferencePageUnsafe(PFN_TYPE Pfn)
{ {
KIRQL oldIrql; KIRQL oldIrql;
@ -664,6 +681,7 @@ MmReferencePageUnsafe(PFN_TYPE Pfn)
} }
VOID VOID
NTAPI
MmReferencePage(PFN_TYPE Pfn) MmReferencePage(PFN_TYPE Pfn)
{ {
DPRINT("MmReferencePage(PysicalAddress %x)\n", Pfn << PAGE_SHIFT); DPRINT("MmReferencePage(PysicalAddress %x)\n", Pfn << PAGE_SHIFT);
@ -677,6 +695,7 @@ MmReferencePage(PFN_TYPE Pfn)
} }
ULONG ULONG
NTAPI
MmGetReferenceCountPage(PFN_TYPE Pfn) MmGetReferenceCountPage(PFN_TYPE Pfn)
{ {
KIRQL oldIrql; KIRQL oldIrql;
@ -704,6 +723,7 @@ MmGetReferenceCountPage(PFN_TYPE Pfn)
} }
BOOLEAN BOOLEAN
NTAPI
MmIsUsablePage(PFN_TYPE Pfn) MmIsUsablePage(PFN_TYPE Pfn)
{ {
@ -724,6 +744,7 @@ MmIsUsablePage(PFN_TYPE Pfn)
} }
VOID VOID
NTAPI
MmDereferencePage(PFN_TYPE Pfn) MmDereferencePage(PFN_TYPE Pfn)
{ {
KIRQL oldIrql; KIRQL oldIrql;
@ -795,6 +816,7 @@ MmDereferencePage(PFN_TYPE Pfn)
} }
ULONG ULONG
NTAPI
MmGetLockCountPage(PFN_TYPE Pfn) MmGetLockCountPage(PFN_TYPE Pfn)
{ {
KIRQL oldIrql; KIRQL oldIrql;
@ -822,6 +844,7 @@ MmGetLockCountPage(PFN_TYPE Pfn)
} }
VOID VOID
NTAPI
MmLockPageUnsafe(PFN_TYPE Pfn) MmLockPageUnsafe(PFN_TYPE Pfn)
{ {
KIRQL oldIrql; KIRQL oldIrql;
@ -846,6 +869,7 @@ MmLockPageUnsafe(PFN_TYPE Pfn)
} }
VOID VOID
NTAPI
MmLockPage(PFN_TYPE Pfn) MmLockPage(PFN_TYPE Pfn)
{ {
DPRINT("MmLockPage(PhysicalAddress %x)\n", Pfn << PAGE_SHIFT); DPRINT("MmLockPage(PhysicalAddress %x)\n", Pfn << PAGE_SHIFT);
@ -859,6 +883,7 @@ MmLockPage(PFN_TYPE Pfn)
} }
VOID VOID
NTAPI
MmUnlockPage(PFN_TYPE Pfn) MmUnlockPage(PFN_TYPE Pfn)
{ {
KIRQL oldIrql; KIRQL oldIrql;
@ -883,6 +908,7 @@ MmUnlockPage(PFN_TYPE Pfn)
} }
PFN_TYPE PFN_TYPE
NTAPI
MmAllocPage(ULONG Consumer, SWAPENTRY SavedSwapEntry) MmAllocPage(ULONG Consumer, SWAPENTRY SavedSwapEntry)
{ {
PFN_TYPE PfnOffset; PFN_TYPE PfnOffset;
@ -958,6 +984,7 @@ MmAllocPage(ULONG Consumer, SWAPENTRY SavedSwapEntry)
} }
LONG LONG
NTAPI
MmAllocPagesSpecifyRange(ULONG Consumer, MmAllocPagesSpecifyRange(ULONG Consumer,
PHYSICAL_ADDRESS LowestAddress, PHYSICAL_ADDRESS LowestAddress,
PHYSICAL_ADDRESS HighestAddress, PHYSICAL_ADDRESS HighestAddress,
@ -1174,7 +1201,9 @@ MmZeroPageThreadMain(PVOID Ignored)
} }
} }
NTSTATUS INIT_FUNCTION NTSTATUS
INIT_FUNCTION
NTAPI
MmInitZeroPageThread(VOID) MmInitZeroPageThread(VOID)
{ {
NTSTATUS Status; NTSTATUS Status;

View file

@ -195,7 +195,9 @@ ProtectToPTE(ULONG flProtect)
#define PAE_ADDR_TO_PTE_OFFSET(v) ((((ULONG_PTR)(v)) % (512 * PAGE_SIZE)) / PAGE_SIZE) #define PAE_ADDR_TO_PTE_OFFSET(v) ((((ULONG_PTR)(v)) % (512 * PAGE_SIZE)) / PAGE_SIZE)
NTSTATUS Mmi386ReleaseMmInfo(PEPROCESS Process) NTSTATUS
NTAPI
Mmi386ReleaseMmInfo(PEPROCESS Process)
{ {
PUSHORT LdtDescriptor; PUSHORT LdtDescriptor;
ULONG LdtBase; ULONG LdtBase;
@ -398,7 +400,9 @@ MmCopyMmInfo(PEPROCESS Src,
return(STATUS_SUCCESS); return(STATUS_SUCCESS);
} }
VOID MmDeletePageTable(PEPROCESS Process, PVOID Address) VOID
NTAPI
MmDeletePageTable(PEPROCESS Process, PVOID Address)
{ {
PEPROCESS CurrentProcess = PsGetCurrentProcess(); PEPROCESS CurrentProcess = PsGetCurrentProcess();
@ -429,7 +433,9 @@ VOID MmDeletePageTable(PEPROCESS Process, PVOID Address)
} }
} }
VOID MmFreePageTable(PEPROCESS Process, PVOID Address) VOID
NTAPI
MmFreePageTable(PEPROCESS Process, PVOID Address)
{ {
PEPROCESS CurrentProcess = PsGetCurrentProcess(); PEPROCESS CurrentProcess = PsGetCurrentProcess();
ULONG i; ULONG i;
@ -755,6 +761,7 @@ static ULONG MmGetPageEntryForProcess(PEPROCESS Process, PVOID Address)
} }
PFN_TYPE PFN_TYPE
NTAPI
MmGetPfnForProcess(PEPROCESS Process, MmGetPfnForProcess(PEPROCESS Process,
PVOID Address) PVOID Address)
{ {
@ -782,6 +789,7 @@ MmGetPfnForProcess(PEPROCESS Process,
} }
VOID VOID
NTAPI
MmDisableVirtualMapping(PEPROCESS Process, PVOID Address, BOOL* WasDirty, PPFN_TYPE Page) MmDisableVirtualMapping(PEPROCESS Process, PVOID Address, BOOL* WasDirty, PPFN_TYPE Page)
/* /*
* FUNCTION: Delete a virtual mapping * FUNCTION: Delete a virtual mapping
@ -867,6 +875,7 @@ MmDisableVirtualMapping(PEPROCESS Process, PVOID Address, BOOL* WasDirty, PPFN_T
} }
VOID VOID
NTAPI
MmRawDeleteVirtualMapping(PVOID Address) MmRawDeleteVirtualMapping(PVOID Address)
{ {
if (Ke386Pae) if (Ke386Pae)
@ -900,6 +909,7 @@ MmRawDeleteVirtualMapping(PVOID Address)
} }
VOID VOID
NTAPI
MmDeleteVirtualMapping(PEPROCESS Process, PVOID Address, BOOL FreePage, MmDeleteVirtualMapping(PEPROCESS Process, PVOID Address, BOOL FreePage,
BOOL* WasDirty, PPFN_TYPE Page) BOOL* WasDirty, PPFN_TYPE Page)
/* /*
@ -1043,6 +1053,7 @@ MmDeleteVirtualMapping(PEPROCESS Process, PVOID Address, BOOL FreePage,
} }
VOID VOID
NTAPI
MmDeletePageFileMapping(PEPROCESS Process, PVOID Address, MmDeletePageFileMapping(PEPROCESS Process, PVOID Address,
SWAPENTRY* SwapEntry) SWAPENTRY* SwapEntry)
/* /*
@ -1180,7 +1191,9 @@ Mmi386MakeKernelPageTableGlobal(PVOID PAddress)
return(FALSE); return(FALSE);
} }
BOOLEAN MmIsDirtyPage(PEPROCESS Process, PVOID Address) BOOLEAN
NTAPI
MmIsDirtyPage(PEPROCESS Process, PVOID Address)
{ {
if (Ke386Pae) if (Ke386Pae)
{ {
@ -1193,6 +1206,7 @@ BOOLEAN MmIsDirtyPage(PEPROCESS Process, PVOID Address)
} }
BOOLEAN BOOLEAN
NTAPI
MmIsAccessedAndResetAccessPage(PEPROCESS Process, PVOID Address) MmIsAccessedAndResetAccessPage(PEPROCESS Process, PVOID Address)
{ {
if (Address < MmSystemRangeStart && Process == NULL) if (Address < MmSystemRangeStart && Process == NULL)
@ -1258,7 +1272,9 @@ MmIsAccessedAndResetAccessPage(PEPROCESS Process, PVOID Address)
} }
} }
VOID MmSetCleanPage(PEPROCESS Process, PVOID Address) VOID
NTAPI
MmSetCleanPage(PEPROCESS Process, PVOID Address)
{ {
if (Address < MmSystemRangeStart && Process == NULL) if (Address < MmSystemRangeStart && Process == NULL)
{ {
@ -1321,7 +1337,9 @@ VOID MmSetCleanPage(PEPROCESS Process, PVOID Address)
} }
} }
VOID MmSetDirtyPage(PEPROCESS Process, PVOID Address) VOID
NTAPI
MmSetDirtyPage(PEPROCESS Process, PVOID Address)
{ {
if (Address < MmSystemRangeStart && Process == NULL) if (Address < MmSystemRangeStart && Process == NULL)
{ {
@ -1380,7 +1398,9 @@ VOID MmSetDirtyPage(PEPROCESS Process, PVOID Address)
} }
} }
VOID MmEnableVirtualMapping(PEPROCESS Process, PVOID Address) VOID
NTAPI
MmEnableVirtualMapping(PEPROCESS Process, PVOID Address)
{ {
if (Ke386Pae) if (Ke386Pae)
{ {
@ -1434,7 +1454,9 @@ VOID MmEnableVirtualMapping(PEPROCESS Process, PVOID Address)
} }
} }
BOOLEAN MmIsPagePresent(PEPROCESS Process, PVOID Address) BOOLEAN
NTAPI
MmIsPagePresent(PEPROCESS Process, PVOID Address)
{ {
if (Ke386Pae) if (Ke386Pae)
{ {
@ -1446,7 +1468,9 @@ BOOLEAN MmIsPagePresent(PEPROCESS Process, PVOID Address)
} }
} }
BOOLEAN MmIsPageSwapEntry(PEPROCESS Process, PVOID Address) BOOLEAN
NTAPI
MmIsPageSwapEntry(PEPROCESS Process, PVOID Address)
{ {
if (Ke386Pae) if (Ke386Pae)
{ {
@ -1463,6 +1487,7 @@ BOOLEAN MmIsPageSwapEntry(PEPROCESS Process, PVOID Address)
} }
NTSTATUS NTSTATUS
NTAPI
MmCreateVirtualMappingForKernel(PVOID Address, MmCreateVirtualMappingForKernel(PVOID Address,
ULONG flProtect, ULONG flProtect,
PPFN_TYPE Pages, PPFN_TYPE Pages,
@ -1590,6 +1615,7 @@ MmCreateVirtualMappingForKernel(PVOID Address,
} }
NTSTATUS NTSTATUS
NTAPI
MmCreatePageFileMapping(PEPROCESS Process, MmCreatePageFileMapping(PEPROCESS Process,
PVOID Address, PVOID Address,
SWAPENTRY SwapEntry) SWAPENTRY SwapEntry)
@ -1677,6 +1703,7 @@ MmCreatePageFileMapping(PEPROCESS Process,
NTSTATUS NTSTATUS
NTAPI
MmCreateVirtualMappingUnsafe(PEPROCESS Process, MmCreateVirtualMappingUnsafe(PEPROCESS Process,
PVOID Address, PVOID Address,
ULONG flProtect, ULONG flProtect,
@ -1882,6 +1909,7 @@ MmCreateVirtualMappingUnsafe(PEPROCESS Process,
} }
NTSTATUS NTSTATUS
NTAPI
MmCreateVirtualMapping(PEPROCESS Process, MmCreateVirtualMapping(PEPROCESS Process,
PVOID Address, PVOID Address,
ULONG flProtect, ULONG flProtect,
@ -1907,6 +1935,7 @@ MmCreateVirtualMapping(PEPROCESS Process,
} }
ULONG ULONG
NTAPI
MmGetPageProtect(PEPROCESS Process, PVOID Address) MmGetPageProtect(PEPROCESS Process, PVOID Address)
{ {
ULONG Entry; ULONG Entry;
@ -1952,6 +1981,7 @@ MmGetPageProtect(PEPROCESS Process, PVOID Address)
} }
VOID VOID
NTAPI
MmSetPageProtect(PEPROCESS Process, PVOID Address, ULONG flProtect) MmSetPageProtect(PEPROCESS Process, PVOID Address, ULONG flProtect)
{ {
ULONG Attributes = 0; ULONG Attributes = 0;
@ -2063,6 +2093,7 @@ MmGetPhysicalAddress(PVOID vaddr)
} }
PVOID PVOID
NTAPI
MmCreateHyperspaceMapping(PFN_TYPE Page) MmCreateHyperspaceMapping(PFN_TYPE Page)
{ {
PVOID Address; PVOID Address;
@ -2191,6 +2222,7 @@ MmCreateHyperspaceMapping(PFN_TYPE Page)
} }
PFN_TYPE PFN_TYPE
NTAPI
MmChangeHyperspaceMapping(PVOID Address, PFN_TYPE NewPage) MmChangeHyperspaceMapping(PVOID Address, PFN_TYPE NewPage)
{ {
PFN_TYPE Pfn; PFN_TYPE Pfn;
@ -2212,6 +2244,7 @@ MmChangeHyperspaceMapping(PVOID Address, PFN_TYPE NewPage)
} }
PFN_TYPE PFN_TYPE
NTAPI
MmDeleteHyperspaceMapping(PVOID Address) MmDeleteHyperspaceMapping(PVOID Address)
{ {
PFN_TYPE Pfn; PFN_TYPE Pfn;
@ -2232,7 +2265,9 @@ MmDeleteHyperspaceMapping(PVOID Address)
return Pfn; return Pfn;
} }
VOID MmUpdatePageDir(PEPROCESS Process, PVOID Address, ULONG Size) VOID
NTAPI
MmUpdatePageDir(PEPROCESS Process, PVOID Address, ULONG Size)
{ {
ULONG StartOffset, EndOffset, Offset; ULONG StartOffset, EndOffset, Offset;
@ -2315,7 +2350,9 @@ VOID MmUpdatePageDir(PEPROCESS Process, PVOID Address, ULONG Size)
} }
} }
VOID INIT_FUNCTION VOID
INIT_FUNCTION
NTAPI
MmInitGlobalKernelPageDirectory(VOID) MmInitGlobalKernelPageDirectory(VOID)
{ {
ULONG i; ULONG i;
@ -2361,12 +2398,15 @@ MmInitGlobalKernelPageDirectory(VOID)
} }
ULONG ULONG
NTAPI
MiGetUserPageDirectoryCount(VOID) MiGetUserPageDirectoryCount(VOID)
{ {
return Ke386Pae ? PAE_ADDR_TO_PDE_OFFSET(MmSystemRangeStart) : ADDR_TO_PDE_OFFSET(MmSystemRangeStart); return Ke386Pae ? PAE_ADDR_TO_PDE_OFFSET(MmSystemRangeStart) : ADDR_TO_PDE_OFFSET(MmSystemRangeStart);
} }
VOID INIT_FUNCTION VOID
INIT_FUNCTION
NTAPI
MiInitPageDirectoryMap(VOID) MiInitPageDirectoryMap(VOID)
{ {
MEMORY_AREA* kernel_map_desc = NULL; MEMORY_AREA* kernel_map_desc = NULL;

View file

@ -18,6 +18,7 @@
/* FUNCTIONS ***************************************************************/ /* FUNCTIONS ***************************************************************/
NTSTATUS NTSTATUS
NTAPI
MiZeroPage(PFN_TYPE Page) MiZeroPage(PFN_TYPE Page)
{ {
PVOID TempAddress; PVOID TempAddress;
@ -33,6 +34,7 @@ MiZeroPage(PFN_TYPE Page)
} }
NTSTATUS NTSTATUS
NTAPI
MiCopyFromUserPage(PFN_TYPE DestPage, PVOID SourceAddress) MiCopyFromUserPage(PFN_TYPE DestPage, PVOID SourceAddress)
{ {
PVOID TempAddress; PVOID TempAddress;

View file

@ -705,7 +705,9 @@ MmFindGapAtAddress(
* Initialize the memory area list implementation. * Initialize the memory area list implementation.
*/ */
NTSTATUS INIT_FUNCTION NTSTATUS
INIT_FUNCTION
NTAPI
MmInitMemoryAreas(VOID) MmInitMemoryAreas(VOID)
{ {
DPRINT("MmInitMemoryAreas()\n",0); DPRINT("MmInitMemoryAreas()\n",0);

View file

@ -55,7 +55,9 @@ MmAdvanceMdl (
} }
VOID INIT_FUNCTION VOID
INIT_FUNCTION
NTAPI
MmInitializeMdlImplementation(VOID) MmInitializeMdlImplementation(VOID)
{ {
MEMORY_AREA* Result; MEMORY_AREA* Result;
@ -97,6 +99,7 @@ MmInitializeMdlImplementation(VOID)
PVOID PVOID
NTAPI
MmGetMdlPageAddress(PMDL Mdl, PVOID Offset) MmGetMdlPageAddress(PMDL Mdl, PVOID Offset)
{ {
PPFN_NUMBER MdlPages; PPFN_NUMBER MdlPages;
@ -298,6 +301,7 @@ MmUnmapReservedMapping (
VOID VOID
NTAPI
MmBuildMdlFromPages(PMDL Mdl, PPFN_TYPE Pages) MmBuildMdlFromPages(PMDL Mdl, PPFN_TYPE Pages)
{ {
memcpy(Mdl + 1, Pages, sizeof(PFN_TYPE) * (PAGE_ROUND_UP(Mdl->ByteOffset+Mdl->ByteCount)/PAGE_SIZE)); memcpy(Mdl + 1, Pages, sizeof(PFN_TYPE) * (PAGE_ROUND_UP(Mdl->ByteOffset+Mdl->ByteCount)/PAGE_SIZE));

View file

@ -69,7 +69,9 @@ NTSTATUS MmReleaseMemoryArea(PEPROCESS Process, PMEMORY_AREA Marea)
return(STATUS_SUCCESS); return(STATUS_SUCCESS);
} }
NTSTATUS MmReleaseMmInfo(PEPROCESS Process) NTSTATUS
NTAPI
MmReleaseMmInfo(PEPROCESS Process)
{ {
DPRINT("MmReleaseMmInfo(Process %x (%s))\n", Process, DPRINT("MmReleaseMmInfo(Process %x (%s))\n", Process,
Process->ImageFileName); Process->ImageFileName);
@ -136,7 +138,9 @@ BOOLEAN STDCALL MmIsAddressValid(PVOID VirtualAddress)
return(TRUE); return(TRUE);
} }
NTSTATUS MmAccessFault(KPROCESSOR_MODE Mode, NTSTATUS
NTAPI
MmAccessFault(KPROCESSOR_MODE Mode,
ULONG_PTR Address, ULONG_PTR Address,
BOOLEAN FromMdl) BOOLEAN FromMdl)
{ {
@ -234,7 +238,9 @@ NTSTATUS MmAccessFault(KPROCESSOR_MODE Mode,
return(Status); return(Status);
} }
NTSTATUS MmCommitPagedPoolAddress(PVOID Address, BOOLEAN Locked) NTSTATUS
NTAPI
MmCommitPagedPoolAddress(PVOID Address, BOOLEAN Locked)
{ {
NTSTATUS Status; NTSTATUS Status;
PFN_TYPE AllocatedPage; PFN_TYPE AllocatedPage;
@ -258,7 +264,9 @@ NTSTATUS MmCommitPagedPoolAddress(PVOID Address, BOOLEAN Locked)
return(Status); return(Status);
} }
NTSTATUS MmNotPresentFault(KPROCESSOR_MODE Mode, NTSTATUS
NTAPI
MmNotPresentFault(KPROCESSOR_MODE Mode,
ULONG_PTR Address, ULONG_PTR Address,
BOOLEAN FromMdl) BOOLEAN FromMdl)
{ {

View file

@ -69,10 +69,14 @@ MM_SYSTEM_SIZE STDCALL MmQuerySystemSize(VOID)
return(MmSystemSize); return(MmSystemSize);
} }
VOID MiShutdownMemoryManager(VOID) VOID
NTAPI
MiShutdownMemoryManager(VOID)
{} {}
VOID INIT_FUNCTION VOID
INIT_FUNCTION
NTAPI
MmInitVirtualMemory(ULONG_PTR LastKernelAddress, MmInitVirtualMemory(ULONG_PTR LastKernelAddress,
ULONG KernelLength) ULONG KernelLength)
/* /*
@ -277,7 +281,9 @@ MmInitVirtualMemory(ULONG_PTR LastKernelAddress,
MmInitializeMemoryConsumer(MC_USER, MmTrimUserMemory); MmInitializeMemoryConsumer(MC_USER, MmTrimUserMemory);
} }
VOID INIT_FUNCTION VOID
INIT_FUNCTION
NTAPI
MmInit1(ULONG_PTR FirstKrnlPhysAddr, MmInit1(ULONG_PTR FirstKrnlPhysAddr,
ULONG_PTR LastKrnlPhysAddr, ULONG_PTR LastKrnlPhysAddr,
ULONG_PTR LastKernelAddress, ULONG_PTR LastKernelAddress,
@ -423,7 +429,9 @@ MmInit1(ULONG_PTR FirstKrnlPhysAddr,
MmInitializeMdlImplementation(); MmInitializeMdlImplementation();
} }
VOID INIT_FUNCTION VOID
NTAPI
INIT_FUNCTION
MmInit2(VOID) MmInit2(VOID)
{ {
MmInitializeRmapList(); MmInitializeRmapList();
@ -432,7 +440,9 @@ MmInit2(VOID)
MmInitPagingFile(); MmInitPagingFile();
} }
VOID INIT_FUNCTION VOID
INIT_FUNCTION
NTAPI
MmInit3(VOID) MmInit3(VOID)
{ {
/* /*
@ -469,6 +479,7 @@ MiFreeInitMemoryPage(PVOID Context, MEMORY_AREA* MemoryArea, PVOID Address,
} }
VOID VOID
NTAPI
MiFreeInitMemory(VOID) MiFreeInitMemory(VOID)
{ {
MmLockAddressSpace(MmGetKernelAddressSpace()); MmLockAddressSpace(MmGetKernelAddressSpace());

View file

@ -93,7 +93,9 @@ MmMpwThreadMain(PVOID Ignored)
} }
} }
NTSTATUS MmInitMpwThread(VOID) NTSTATUS
NTAPI
MmInitMpwThread(VOID)
{ {
KPRIORITY Priority; KPRIORITY Priority;
NTSTATUS Status; NTSTATUS Status;

View file

@ -776,6 +776,7 @@ MiDumpTagStats(ULONG CurrentTag, ULONG CurrentNrBlocks, ULONG CurrentSize)
#endif /* defined(TAG_STATISTICS_TRACKING) */ #endif /* defined(TAG_STATISTICS_TRACKING) */
VOID VOID
NTAPI
MiDebugDumpNonPagedPoolStats(BOOLEAN NewOnly) MiDebugDumpNonPagedPoolStats(BOOLEAN NewOnly)
{ {
#if defined(TAG_STATISTICS_TRACKING) #if defined(TAG_STATISTICS_TRACKING)
@ -857,6 +858,7 @@ MiDebugDumpNonPagedPoolStats(BOOLEAN NewOnly)
} }
VOID VOID
NTAPI
MiDebugDumpNonPagedPool(BOOLEAN NewOnly) MiDebugDumpNonPagedPool(BOOLEAN NewOnly)
{ {
#if defined(POOL_DEBUG_APIS) #if defined(POOL_DEBUG_APIS)
@ -1577,7 +1579,9 @@ ExAllocateNonPagedPoolWithTag(POOL_TYPE Type, ULONG Size, ULONG Tag, PVOID Calle
return(block); return(block);
} }
VOID INIT_FUNCTION VOID
INIT_FUNCTION
NTAPI
MiInitializeNonPagedPool(VOID) MiInitializeNonPagedPool(VOID)
{ {
NTSTATUS Status; NTSTATUS Status;

View file

@ -135,6 +135,7 @@ MmIsFileAPagingFile(PFILE_OBJECT FileObject)
} }
VOID VOID
NTAPI
MmShowOutOfSpaceMessagePagingFile(VOID) MmShowOutOfSpaceMessagePagingFile(VOID)
{ {
if (!MmSwapSpaceMessage) if (!MmSwapSpaceMessage)
@ -201,7 +202,9 @@ MmGetOffsetPageFile(PRETRIEVAL_POINTERS_BUFFER RetrievalPointers, LARGE_INTEGER
#endif #endif
} }
NTSTATUS MmWriteToSwapPage(SWAPENTRY SwapEntry, PFN_TYPE Page) NTSTATUS
NTAPI
MmWriteToSwapPage(SWAPENTRY SwapEntry, PFN_TYPE Page)
{ {
ULONG i, offset; ULONG i, offset;
LARGE_INTEGER file_offset; LARGE_INTEGER file_offset;
@ -255,7 +258,9 @@ NTSTATUS MmWriteToSwapPage(SWAPENTRY SwapEntry, PFN_TYPE Page)
return(Status); return(Status);
} }
NTSTATUS MmReadFromSwapPage(SWAPENTRY SwapEntry, PFN_TYPE Page) NTSTATUS
NTAPI
MmReadFromSwapPage(SWAPENTRY SwapEntry, PFN_TYPE Page)
{ {
ULONG i, offset; ULONG i, offset;
LARGE_INTEGER file_offset; LARGE_INTEGER file_offset;
@ -309,7 +314,9 @@ NTSTATUS MmReadFromSwapPage(SWAPENTRY SwapEntry, PFN_TYPE Page)
return(Status); return(Status);
} }
VOID INIT_FUNCTION VOID
INIT_FUNCTION
NTAPI
MmInitPagingFile(VOID) MmInitPagingFile(VOID)
{ {
ULONG i; ULONG i;
@ -344,6 +351,7 @@ MmInitPagingFile(VOID)
} }
BOOLEAN BOOLEAN
NTAPI
MmReserveSwapPages(ULONG Nr) MmReserveSwapPages(ULONG Nr)
{ {
KIRQL oldIrql; KIRQL oldIrql;
@ -363,6 +371,7 @@ MmReserveSwapPages(ULONG Nr)
} }
VOID VOID
NTAPI
MmDereserveSwapPages(ULONG Nr) MmDereserveSwapPages(ULONG Nr)
{ {
KIRQL oldIrql; KIRQL oldIrql;
@ -400,6 +409,7 @@ MiAllocPageFromPagingFile(PPAGINGFILE PagingFile)
} }
VOID VOID
NTAPI
MmFreeSwapPage(SWAPENTRY Entry) MmFreeSwapPage(SWAPENTRY Entry)
{ {
ULONG i; ULONG i;
@ -435,12 +445,14 @@ MmFreeSwapPage(SWAPENTRY Entry)
} }
BOOLEAN BOOLEAN
NTAPI
MmIsAvailableSwapPage(VOID) MmIsAvailableSwapPage(VOID)
{ {
return(MiFreeSwapPages > 0); return(MiFreeSwapPages > 0);
} }
SWAPENTRY SWAPENTRY
NTAPI
MmAllocSwapPage(VOID) MmAllocSwapPage(VOID)
{ {
KIRQL oldIrql; KIRQL oldIrql;

View file

@ -25,6 +25,7 @@ static NPAGED_LOOKASIDE_LIST MmPageOpLookasideList;
/* FUNCTIONS *****************************************************************/ /* FUNCTIONS *****************************************************************/
VOID VOID
NTAPI
MmReleasePageOp(PMM_PAGEOP PageOp) MmReleasePageOp(PMM_PAGEOP PageOp)
/* /*
* FUNCTION: Release a reference to a page operation descriptor * FUNCTION: Release a reference to a page operation descriptor
@ -65,6 +66,7 @@ MmReleasePageOp(PMM_PAGEOP PageOp)
} }
PMM_PAGEOP PMM_PAGEOP
NTAPI
MmCheckForPageOp(PMEMORY_AREA MArea, HANDLE Pid, PVOID Address, MmCheckForPageOp(PMEMORY_AREA MArea, HANDLE Pid, PVOID Address,
PMM_SECTION_SEGMENT Segment, ULONG Offset) PMM_SECTION_SEGMENT Segment, ULONG Offset)
{ {
@ -127,6 +129,7 @@ MmCheckForPageOp(PMEMORY_AREA MArea, HANDLE Pid, PVOID Address,
} }
PMM_PAGEOP PMM_PAGEOP
NTAPI
MmGetPageOp(PMEMORY_AREA MArea, HANDLE Pid, PVOID Address, MmGetPageOp(PMEMORY_AREA MArea, HANDLE Pid, PVOID Address,
PMM_SECTION_SEGMENT Segment, ULONG Offset, ULONG OpType, BOOL First) PMM_SECTION_SEGMENT Segment, ULONG Offset, ULONG OpType, BOOL First)
/* /*
@ -234,7 +237,9 @@ MmGetPageOp(PMEMORY_AREA MArea, HANDLE Pid, PVOID Address,
return(PageOp); return(PageOp);
} }
VOID INIT_FUNCTION VOID
INIT_FUNCTION
NTAPI
MmInitializePageOp(VOID) MmInitializePageOp(VOID)
{ {
memset(MmPageOpHashTable, 0, sizeof(MmPageOpHashTable)); memset(MmPageOpHashTable, 0, sizeof(MmPageOpHashTable));

View file

@ -43,7 +43,9 @@ static PR_POOL MmPagedPool = NULL;
/* FUNCTIONS *****************************************************************/ /* FUNCTIONS *****************************************************************/
VOID INIT_FUNCTION VOID
INIT_FUNCTION
NTAPI
MmInitializePagedPool(VOID) MmInitializePagedPool(VOID)
{ {
/* /*

View file

@ -105,6 +105,7 @@ MmSplitRegion(PMM_REGION InitialRegion, PVOID InitialBaseAddress,
} }
NTSTATUS NTSTATUS
NTAPI
MmAlterRegion(PMADDRESS_SPACE AddressSpace, PVOID BaseAddress, MmAlterRegion(PMADDRESS_SPACE AddressSpace, PVOID BaseAddress,
PLIST_ENTRY RegionListHead, PVOID StartAddress, ULONG Length, PLIST_ENTRY RegionListHead, PVOID StartAddress, ULONG Length,
ULONG NewType, ULONG NewProtect, PMM_ALTER_REGION_FUNC AlterFunc) ULONG NewType, ULONG NewProtect, PMM_ALTER_REGION_FUNC AlterFunc)
@ -237,6 +238,7 @@ MmAlterRegion(PMADDRESS_SPACE AddressSpace, PVOID BaseAddress,
} }
VOID VOID
NTAPI
MmInitialiseRegion(PLIST_ENTRY RegionListHead, ULONG Length, ULONG Type, MmInitialiseRegion(PLIST_ENTRY RegionListHead, ULONG Length, ULONG Type,
ULONG Protect) ULONG Protect)
{ {
@ -252,6 +254,7 @@ MmInitialiseRegion(PLIST_ENTRY RegionListHead, ULONG Length, ULONG Type,
} }
PMM_REGION PMM_REGION
NTAPI
MmFindRegion(PVOID BaseAddress, PLIST_ENTRY RegionListHead, PVOID Address, MmFindRegion(PVOID BaseAddress, PLIST_ENTRY RegionListHead, PVOID Address,
PVOID* RegionBaseAddress) PVOID* RegionBaseAddress)
{ {

View file

@ -34,7 +34,9 @@ static NPAGED_LOOKASIDE_LIST RmapLookasideList;
/* FUNCTIONS ****************************************************************/ /* FUNCTIONS ****************************************************************/
VOID INIT_FUNCTION VOID
INIT_FUNCTION
NTAPI
MmInitializeRmapList(VOID) MmInitializeRmapList(VOID)
{ {
ExInitializeFastMutex(&RmapListLock); ExInitializeFastMutex(&RmapListLock);
@ -48,6 +50,7 @@ MmInitializeRmapList(VOID)
} }
NTSTATUS NTSTATUS
NTAPI
MmWritePagePhysicalAddress(PFN_TYPE Page) MmWritePagePhysicalAddress(PFN_TYPE Page)
{ {
PMM_RMAP_ENTRY entry; PMM_RMAP_ENTRY entry;
@ -181,6 +184,7 @@ MmWritePagePhysicalAddress(PFN_TYPE Page)
} }
NTSTATUS NTSTATUS
NTAPI
MmPageOutPhysicalAddress(PFN_TYPE Page) MmPageOutPhysicalAddress(PFN_TYPE Page)
{ {
PMM_RMAP_ENTRY entry; PMM_RMAP_ENTRY entry;
@ -304,6 +308,7 @@ MmPageOutPhysicalAddress(PFN_TYPE Page)
} }
VOID VOID
NTAPI
MmSetCleanAllRmaps(PFN_TYPE Page) MmSetCleanAllRmaps(PFN_TYPE Page)
{ {
PMM_RMAP_ENTRY current_entry; PMM_RMAP_ENTRY current_entry;
@ -324,6 +329,7 @@ MmSetCleanAllRmaps(PFN_TYPE Page)
} }
VOID VOID
NTAPI
MmSetDirtyAllRmaps(PFN_TYPE Page) MmSetDirtyAllRmaps(PFN_TYPE Page)
{ {
PMM_RMAP_ENTRY current_entry; PMM_RMAP_ENTRY current_entry;
@ -344,6 +350,7 @@ MmSetDirtyAllRmaps(PFN_TYPE Page)
} }
BOOL BOOL
NTAPI
MmIsDirtyPageRmap(PFN_TYPE Page) MmIsDirtyPageRmap(PFN_TYPE Page)
{ {
PMM_RMAP_ENTRY current_entry; PMM_RMAP_ENTRY current_entry;
@ -369,6 +376,7 @@ MmIsDirtyPageRmap(PFN_TYPE Page)
} }
VOID VOID
NTAPI
MmInsertRmap(PFN_TYPE Page, PEPROCESS Process, MmInsertRmap(PFN_TYPE Page, PEPROCESS Process,
PVOID Address) PVOID Address)
{ {
@ -434,6 +442,7 @@ MmInsertRmap(PFN_TYPE Page, PEPROCESS Process,
} }
VOID VOID
NTAPI
MmDeleteAllRmaps(PFN_TYPE Page, PVOID Context, MmDeleteAllRmaps(PFN_TYPE Page, PVOID Context,
VOID (*DeleteMapping)(PVOID Context, PEPROCESS Process, VOID (*DeleteMapping)(PVOID Context, PEPROCESS Process,
PVOID Address)) PVOID Address))
@ -474,6 +483,7 @@ MmDeleteAllRmaps(PFN_TYPE Page, PVOID Context,
} }
VOID VOID
NTAPI
MmDeleteRmap(PFN_TYPE Page, PEPROCESS Process, MmDeleteRmap(PFN_TYPE Page, PEPROCESS Process,
PVOID Address) PVOID Address)
{ {

View file

@ -157,6 +157,7 @@ MmFreePageTablesSectionSegment(PMM_SECTION_SEGMENT Segment)
} }
VOID VOID
NTAPI
MmFreeSectionSegments(PFILE_OBJECT FileObject) MmFreeSectionSegments(PFILE_OBJECT FileObject)
{ {
if (FileObject->SectionObjectPointer->ImageSectionObject != NULL) if (FileObject->SectionObjectPointer->ImageSectionObject != NULL)
@ -202,18 +203,21 @@ MmFreeSectionSegments(PFILE_OBJECT FileObject)
} }
VOID VOID
NTAPI
MmLockSectionSegment(PMM_SECTION_SEGMENT Segment) MmLockSectionSegment(PMM_SECTION_SEGMENT Segment)
{ {
ExAcquireFastMutex(&Segment->Lock); ExAcquireFastMutex(&Segment->Lock);
} }
VOID VOID
NTAPI
MmUnlockSectionSegment(PMM_SECTION_SEGMENT Segment) MmUnlockSectionSegment(PMM_SECTION_SEGMENT Segment)
{ {
ExReleaseFastMutex(&Segment->Lock); ExReleaseFastMutex(&Segment->Lock);
} }
VOID VOID
NTAPI
MmSetPageEntrySectionSegment(PMM_SECTION_SEGMENT Segment, MmSetPageEntrySectionSegment(PMM_SECTION_SEGMENT Segment,
ULONG Offset, ULONG Offset,
ULONG Entry) ULONG Entry)
@ -250,6 +254,7 @@ MmSetPageEntrySectionSegment(PMM_SECTION_SEGMENT Segment,
ULONG ULONG
NTAPI
MmGetPageEntrySectionSegment(PMM_SECTION_SEGMENT Segment, MmGetPageEntrySectionSegment(PMM_SECTION_SEGMENT Segment,
ULONG Offset) ULONG Offset)
{ {
@ -280,6 +285,7 @@ MmGetPageEntrySectionSegment(PMM_SECTION_SEGMENT Segment,
} }
VOID VOID
NTAPI
MmSharePageEntrySectionSegment(PMM_SECTION_SEGMENT Segment, MmSharePageEntrySectionSegment(PMM_SECTION_SEGMENT Segment,
ULONG Offset) ULONG Offset)
{ {
@ -305,6 +311,7 @@ MmSharePageEntrySectionSegment(PMM_SECTION_SEGMENT Segment,
} }
BOOLEAN BOOLEAN
NTAPI
MmUnsharePageEntrySectionSegment(PSECTION_OBJECT Section, MmUnsharePageEntrySectionSegment(PSECTION_OBJECT Section,
PMM_SECTION_SEGMENT Segment, PMM_SECTION_SEGMENT Segment,
ULONG Offset, ULONG Offset,
@ -453,6 +460,7 @@ BOOL MiIsPageFromCache(PMEMORY_AREA MemoryArea,
} }
NTSTATUS NTSTATUS
NTAPI
MiReadPage(PMEMORY_AREA MemoryArea, MiReadPage(PMEMORY_AREA MemoryArea,
ULONG SegOffset, ULONG SegOffset,
PPFN_TYPE Page) PPFN_TYPE Page)
@ -624,6 +632,7 @@ MiReadPage(PMEMORY_AREA MemoryArea,
} }
NTSTATUS NTSTATUS
NTAPI
MmNotPresentFaultSectionView(PMADDRESS_SPACE AddressSpace, MmNotPresentFaultSectionView(PMADDRESS_SPACE AddressSpace,
MEMORY_AREA* MemoryArea, MEMORY_AREA* MemoryArea,
PVOID Address, PVOID Address,
@ -1142,6 +1151,7 @@ MmNotPresentFaultSectionView(PMADDRESS_SPACE AddressSpace,
} }
NTSTATUS NTSTATUS
NTAPI
MmAccessFaultSectionView(PMADDRESS_SPACE AddressSpace, MmAccessFaultSectionView(PMADDRESS_SPACE AddressSpace,
MEMORY_AREA* MemoryArea, MEMORY_AREA* MemoryArea,
PVOID Address, PVOID Address,
@ -1348,6 +1358,7 @@ MmPageOutDeleteMapping(PVOID Context, PEPROCESS Process, PVOID Address)
} }
NTSTATUS NTSTATUS
NTAPI
MmPageOutSectionView(PMADDRESS_SPACE AddressSpace, MmPageOutSectionView(PMADDRESS_SPACE AddressSpace,
MEMORY_AREA* MemoryArea, MEMORY_AREA* MemoryArea,
PVOID Address, PVOID Address,
@ -1693,6 +1704,7 @@ MmPageOutSectionView(PMADDRESS_SPACE AddressSpace,
} }
NTSTATUS NTSTATUS
NTAPI
MmWritePageSectionView(PMADDRESS_SPACE AddressSpace, MmWritePageSectionView(PMADDRESS_SPACE AddressSpace,
PMEMORY_AREA MemoryArea, PMEMORY_AREA MemoryArea,
PVOID Address, PVOID Address,
@ -1902,6 +1914,7 @@ MmAlterViewAttributes(PMADDRESS_SPACE AddressSpace,
} }
NTSTATUS NTSTATUS
NTAPI
MmProtectSectionView(PMADDRESS_SPACE AddressSpace, MmProtectSectionView(PMADDRESS_SPACE AddressSpace,
PMEMORY_AREA MemoryArea, PMEMORY_AREA MemoryArea,
PVOID BaseAddress, PVOID BaseAddress,
@ -1972,6 +1985,7 @@ MmQuerySectionView(PMEMORY_AREA MemoryArea,
} }
VOID VOID
NTAPI
MmpFreePageFileSegment(PMM_SECTION_SEGMENT Segment) MmpFreePageFileSegment(PMM_SECTION_SEGMENT Segment)
{ {
ULONG Length; ULONG Length;
@ -2087,7 +2101,9 @@ MmpCloseSection(PVOID ObjectBody,
ObjectBody, HandleCount, ObGetObjectPointerCount(ObjectBody)); ObjectBody, HandleCount, ObGetObjectPointerCount(ObjectBody));
} }
NTSTATUS INIT_FUNCTION NTSTATUS
INIT_FUNCTION
NTAPI
MmCreatePhysicalMemorySection(VOID) MmCreatePhysicalMemorySection(VOID)
{ {
PSECTION_OBJECT PhysSection; PSECTION_OBJECT PhysSection;
@ -2134,7 +2150,9 @@ MmCreatePhysicalMemorySection(VOID)
return(STATUS_SUCCESS); return(STATUS_SUCCESS);
} }
NTSTATUS INIT_FUNCTION NTSTATUS
INIT_FUNCTION
NTAPI
MmInitSectionImplementation(VOID) MmInitSectionImplementation(VOID)
{ {
OBJECT_TYPE_INITIALIZER ObjectTypeInitializer; OBJECT_TYPE_INITIALIZER ObjectTypeInitializer;
@ -2158,6 +2176,7 @@ MmInitSectionImplementation(VOID)
} }
NTSTATUS NTSTATUS
NTAPI
MmCreatePageFileSection(PSECTION_OBJECT *SectionObject, MmCreatePageFileSection(PSECTION_OBJECT *SectionObject,
ACCESS_MASK DesiredAccess, ACCESS_MASK DesiredAccess,
POBJECT_ATTRIBUTES ObjectAttributes, POBJECT_ATTRIBUTES ObjectAttributes,
@ -2229,6 +2248,7 @@ MmCreatePageFileSection(PSECTION_OBJECT *SectionObject,
NTSTATUS NTSTATUS
NTAPI
MmCreateDataFileSection(PSECTION_OBJECT *SectionObject, MmCreateDataFileSection(PSECTION_OBJECT *SectionObject,
ACCESS_MASK DesiredAccess, ACCESS_MASK DesiredAccess,
POBJECT_ATTRIBUTES ObjectAttributes, POBJECT_ATTRIBUTES ObjectAttributes,

View file

@ -62,7 +62,9 @@ RtlpInitNls(VOID)
RtlpCreateNlsSection(); RtlpCreateNlsSection();
} }
VOID INIT_FUNCTION VOID
INIT_FUNCTION
NTAPI
RtlpImportAnsiCodePage(PUSHORT TableBase, RtlpImportAnsiCodePage(PUSHORT TableBase,
ULONG Size) ULONG Size)
{ {
@ -71,7 +73,9 @@ RtlpImportAnsiCodePage(PUSHORT TableBase,
} }
VOID INIT_FUNCTION VOID
INIT_FUNCTION
NTAPI
RtlpImportOemCodePage(PUSHORT TableBase, RtlpImportOemCodePage(PUSHORT TableBase,
ULONG Size) ULONG Size)
{ {
@ -80,7 +84,9 @@ RtlpImportOemCodePage(PUSHORT TableBase,
} }
VOID INIT_FUNCTION VOID
NTAPI
INIT_FUNCTION
RtlpImportUnicodeCasemap(PUSHORT TableBase, RtlpImportUnicodeCasemap(PUSHORT TableBase,
ULONG Size) ULONG Size)
{ {
@ -89,7 +95,9 @@ RtlpImportUnicodeCasemap(PUSHORT TableBase,
} }
VOID INIT_FUNCTION VOID
NTAPI
INIT_FUNCTION
RtlpCreateInitialNlsTables(VOID) RtlpCreateInitialNlsTables(VOID)
{ {
NLSTABLEINFO NlsTable; NLSTABLEINFO NlsTable;
@ -109,8 +117,9 @@ RtlpCreateInitialNlsTables(VOID)
RtlResetRtlTranslations (&NlsTable); RtlResetRtlTranslations (&NlsTable);
} }
VOID
VOID INIT_FUNCTION NTAPI
INIT_FUNCTION
RtlpCreateNlsSection(VOID) RtlpCreateNlsSection(VOID)
{ {
NLSTABLEINFO NlsTable; NLSTABLEINFO NlsTable;