update for HEAD-2002110701
[reactos.git] / ntoskrnl / mm / cont.c
index 37af4a1..8d3bbc6 100644 (file)
@@ -63,11 +63,13 @@ MmAllocateContiguousAlignedMemory(IN ULONG NumberOfBytes,
                                Alignment);
    if (PBase.QuadPart == 0LL)
      {
+       MmLockAddressSpace(MmGetKernelAddressSpace());
        MmFreeMemoryArea(MmGetKernelAddressSpace(),
                        BaseAddress,
                        0,
                        NULL,
                        NULL);
+       MmUnlockAddressSpace(MmGetKernelAddressSpace());
        return(NULL);
      }
    for (i = 0; i < (PAGE_ROUND_UP(NumberOfBytes) / 4096); i++)
@@ -142,11 +144,13 @@ MmAllocateContiguousMemory (IN ULONG NumberOfBytes,
 VOID STDCALL 
 MmFreeContiguousMemory(IN PVOID BaseAddress)
 {
+   MmLockAddressSpace(MmGetKernelAddressSpace());
    MmFreeMemoryArea(MmGetKernelAddressSpace(),
                    BaseAddress,
                    0,
                    MmFreeContinuousPage,
                    NULL);
+   MmUnlockAddressSpace(MmGetKernelAddressSpace());
 }