diff --git a/reactos/ntoskrnl/cc/copy.c b/reactos/ntoskrnl/cc/copy.c index 7162b6ab74e..c6ee11f2f23 100644 --- a/reactos/ntoskrnl/cc/copy.c +++ b/reactos/ntoskrnl/cc/copy.c @@ -645,7 +645,10 @@ CcZeroData (IN PFILE_OBJECT FileObject, KeWaitForSingleObject(&Event, Executive, KernelMode, FALSE, NULL); Status = Iosb.Status; } + if (Mdl->MdlFlags & MDL_MAPPED_TO_SYSTEM_VA) + { MmUnmapLockedPages(Mdl->MappedSystemVa, Mdl); + } if (!NT_SUCCESS(Status)) { return(FALSE); diff --git a/reactos/ntoskrnl/cc/view.c b/reactos/ntoskrnl/cc/view.c index 8819a83b3b0..bd52296509c 100644 --- a/reactos/ntoskrnl/cc/view.c +++ b/reactos/ntoskrnl/cc/view.c @@ -899,6 +899,7 @@ CcFreeCachePage(PVOID Context, MEMORY_AREA* MemoryArea, PVOID Address, ASSERT(SwapEntry == 0); if (Page != 0) { + ASSERT(MmGetReferenceCountPage(Page) == 1); MmReleasePageMemoryConsumer(MC_CACHE, Page); } }