[PATCH 3/5] ntoskrnl.exe: Add stub for MmMapLockedPagesSpecifyCache.

Christian Costa titan.costa at gmail.com
Sat Sep 29 15:28:16 CDT 2012


---
 dlls/ntoskrnl.exe/ntoskrnl.c        |   13 +++++++++++++
 dlls/ntoskrnl.exe/ntoskrnl.exe.spec |    2 +-
 include/ddk/wdm.h                   |   20 +++++++++++++-------
 3 files changed, 27 insertions(+), 8 deletions(-)

diff --git a/dlls/ntoskrnl.exe/ntoskrnl.c b/dlls/ntoskrnl.exe/ntoskrnl.c
index 94ae7b4..85dad4c 100644
--- a/dlls/ntoskrnl.exe/ntoskrnl.c
+++ b/dlls/ntoskrnl.exe/ntoskrnl.c
@@ -1445,6 +1445,19 @@ PVOID WINAPI MmMapIoSpace( PHYSICAL_ADDRESS PhysicalAddress, DWORD NumberOfBytes
     return NULL;
 }
 
+
+/***********************************************************************
+ *           MmMapLockedPagesSpecifyCache  (NTOSKRNL.EXE.@)
+ */
+PVOID MmMapLockedPagesSpecifyCache(PMDLX MemoryDescriptorList, KPROCESSOR_MODE AccessMode, MEMORY_CACHING_TYPE CacheType,
+                                   PVOID BaseAddress, ULONG BugCheckOnFailure, MM_PAGE_PRIORITY Priority)
+{
+    FIXME("(%p, %u, %u, %p, %u, %u): stub\n", MemoryDescriptorList, AccessMode, CacheType, BaseAddress, BugCheckOnFailure, Priority);
+
+    return NULL;
+}
+
+
 /***********************************************************************
  *           MmPageEntireDriver   (NTOSKRNL.EXE.@)
  */
diff --git a/dlls/ntoskrnl.exe/ntoskrnl.exe.spec b/dlls/ntoskrnl.exe/ntoskrnl.exe.spec
index 2201d06..561c8e1 100644
--- a/dlls/ntoskrnl.exe/ntoskrnl.exe.spec
+++ b/dlls/ntoskrnl.exe/ntoskrnl.exe.spec
@@ -690,7 +690,7 @@
 @ stub MmLockPagableSectionByHandle
 @ stdcall MmMapIoSpace(long long long long)
 @ stub MmMapLockedPages
-@ stub MmMapLockedPagesSpecifyCache
+@ stdcall MmMapLockedPagesSpecifyCache(ptr long long ptr long long)
 @ stub MmMapLockedPagesWithReservedMapping
 @ stub MmMapMemoryDumpMdl
 @ stub MmMapUserAddressesToPage
diff --git a/include/ddk/wdm.h b/include/ddk/wdm.h
index a868e88..183c950 100644
--- a/include/ddk/wdm.h
+++ b/include/ddk/wdm.h
@@ -1051,15 +1051,21 @@ typedef struct _KUSER_SHARED_DATA {
 } KSHARED_USER_DATA, *PKSHARED_USER_DATA;
 
 typedef enum _MEMORY_CACHING_TYPE {
-  MmNonCached = 0,
-  MmCached = 1,
-  MmWriteCombined = 2,
-  MmHardwareCoherentCached = 3,
-  MmNonCachedUnordered = 4,
-  MmUSWCCached = 5,
-  MmMaximumCacheType = 6
+    MmNonCached = 0,
+    MmCached = 1,
+    MmWriteCombined = 2,
+    MmHardwareCoherentCached = 3,
+    MmNonCachedUnordered = 4,
+    MmUSWCCached = 5,
+    MmMaximumCacheType = 6
 } MEMORY_CACHING_TYPE;
 
+typedef enum _MM_PAGE_PRIORITY {
+    LowPagePriority,
+    NormalPagePriority = 16,
+    HighPagePriority = 32
+} MM_PAGE_PRIORITY;
+
 typedef enum _MM_SYSTEM_SIZE
 {
     MmSmallSystem,




More information about the wine-patches mailing list