Author: tkreuzer Date: Wed Oct 8 00:30:37 2014 New Revision: 64585
URL: http://svn.reactos.org/svn/reactos?rev=64585&view=rev Log: [NTOSKRNL] Small impovement to NtFreeVirtualMemory to make things clearer
Modified: trunk/reactos/ntoskrnl/mm/ARM3/virtual.c
Modified: trunk/reactos/ntoskrnl/mm/ARM3/virtual.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/mm/ARM3/virtual.c?... ============================================================================== --- trunk/reactos/ntoskrnl/mm/ARM3/virtual.c [iso-8859-1] (original) +++ trunk/reactos/ntoskrnl/mm/ARM3/virtual.c [iso-8859-1] Wed Oct 8 00:30:37 2014 @@ -5134,7 +5134,7 @@ PMEMORY_AREA MemoryArea; SIZE_T PRegionSize; PVOID PBaseAddress; - LONG_PTR CommitReduction = 0; + LONG_PTR AlreadyDecommitted, CommitReduction = 0; ULONG_PTR StartingAddress, EndingAddress; PMMVAD Vad; NTSTATUS Status; @@ -5530,13 +5530,15 @@ // Decommit the PTEs for the range plus the actual backing pages for the // range, then reduce that amount from the commit charge in the VAD // + AlreadyDecommitted = MiDecommitPages((PVOID)StartingAddress, + MiAddressToPte(EndingAddress), + Process, + Vad); CommitReduction = MiAddressToPte(EndingAddress) - MiAddressToPte(StartingAddress) + 1 - - MiDecommitPages((PVOID)StartingAddress, - MiAddressToPte(EndingAddress), - Process, - Vad); + AlreadyDecommitted; + ASSERT(CommitReduction >= 0); Vad->u.VadFlags.CommitCharge -= CommitReduction; ASSERT(Vad->u.VadFlags.CommitCharge >= 0);