From: Etaash Mathamsetty etaash.mathamsetty@gmail.com
use NULL for lpAddress --- dlls/ntoskrnl.exe/ntoskrnl.c | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-)
diff --git a/dlls/ntoskrnl.exe/ntoskrnl.c b/dlls/ntoskrnl.exe/ntoskrnl.c index 031e9900544..8d97f3ae46d 100644 --- a/dlls/ntoskrnl.exe/ntoskrnl.c +++ b/dlls/ntoskrnl.exe/ntoskrnl.c @@ -2777,8 +2777,23 @@ PVOID WINAPI MmAllocateContiguousMemorySpecifyCache( SIZE_T size, PHYSICAL_ADDRESS BoundaryAddressMultiple, MEMORY_CACHING_TYPE CacheType ) { - FIXME(": stub\n"); - return NULL; + DWORD protect = PAGE_READWRITE; + FIXME( ": ( %Iu %s %s %s %x ) semi-stub\n", size, wine_dbgstr_longlong(lowest_valid_address.QuadPart), + wine_dbgstr_longlong(highest_valid_address.QuadPart), + wine_dbgstr_longlong(BoundaryAddressMultiple.QuadPart), CacheType ); + switch (CacheType) + { + case MmNonCached: + protect |= PAGE_NOCACHE; + break; + case MmWriteCombined: + protect |= PAGE_NOCACHE; + protect |= PAGE_WRITECOMBINE; + break; + default: + break; + } + return VirtualAlloc( NULL, size, MEM_RESERVE|MEM_COMMIT, protect ); }
/***********************************************************************