Author: cgutman
Date: Wed Dec 21 05:30:16 2011
New Revision: 54725
URL:
http://svn.reactos.org/svn/reactos?rev=54725&view=rev
Log:
[NTOSKRNL]
- Wait to acquire locks in CcRosFlushDirtyPages
- This is needed because this path is used during critical times like shutdown and very
low memory situations when flushes cannot fail
Modified:
trunk/reactos/ntoskrnl/cc/view.c
Modified: trunk/reactos/ntoskrnl/cc/view.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/cc/view.c?rev=547…
==============================================================================
--- trunk/reactos/ntoskrnl/cc/view.c [iso-8859-1] (original)
+++ trunk/reactos/ntoskrnl/cc/view.c [iso-8859-1] Wed Dec 21 05:30:16 2011
@@ -225,20 +225,13 @@
current_entry = current_entry->Flink;
Locked = current->Bcb->Callbacks->AcquireForLazyWrite(
- current->Bcb->LazyWriteContext, FALSE);
+ current->Bcb->LazyWriteContext, TRUE);
if (!Locked)
{
continue;
}
- Locked = ExTryToAcquirePushLockExclusive(¤t->Lock);
- if (!Locked)
- {
- current->Bcb->Callbacks->ReleaseFromLazyWrite(
- current->Bcb->LazyWriteContext);
-
- continue;
- }
+ ExAcquirePushLockExclusive(¤t->Lock);
ASSERT(current->Dirty);
if (current->ReferenceCount > 1)