mirror of
https://github.com/reactos/reactos.git
synced 2024-10-01 06:57:08 +00:00
[NTOS]: Sanity checks when dealing with creating/cleaning process address space.
[NTOS]: Set the VmDeleted flag when the process address space is being nuked. svn path=/trunk/; revision=49434
This commit is contained in:
parent
f6fa150d19
commit
8c212103be
|
@ -190,6 +190,7 @@ MmDeleteTeb(IN PEPROCESS Process,
|
|||
ASSERT((Vad->StartingVpn == ((ULONG_PTR)Teb >> PAGE_SHIFT) &&
|
||||
(Vad->EndingVpn == (TebEnd >> PAGE_SHIFT))));
|
||||
ASSERT(Vad->u.VadFlags.NoChange == TRUE);
|
||||
ASSERT(Vad->u2.VadFlags2.OneSecured == TRUE);
|
||||
ASSERT(Vad->u2.VadFlags2.MultipleSecured == FALSE);
|
||||
|
||||
/* Lock the working set */
|
||||
|
@ -1169,9 +1170,15 @@ MmCleanProcessAddressSpace(IN PEPROCESS Process)
|
|||
PMM_AVL_TABLE VadTree;
|
||||
PETHREAD Thread = PsGetCurrentThread();
|
||||
|
||||
/* Only support this */
|
||||
ASSERT(Process->AddressSpaceInitialized == 2);
|
||||
|
||||
/* Lock the process address space from changes */
|
||||
MmLockAddressSpace(&Process->Vm);
|
||||
|
||||
/* VM is deleted now */
|
||||
Process->VmDeleted = TRUE;
|
||||
|
||||
/* Enumerate the VADs */
|
||||
VadTree = &Process->VadRoot;
|
||||
while (VadTree->NumberGenericTableElements)
|
||||
|
|
Loading…
Reference in a new issue