https://git.reactos.org/?p=reactos.git;a=commitdiff;h=de897cbe3d5e95d006fbeae3e8a8683b569bbd5c

commit de897cbe3d5e95d006fbeae3e8a8683b569bbd5c
Author:     Pierre Schweitzer <pie...@reactos.org>
AuthorDate: Thu Feb 8 13:40:54 2018 +0100
Commit:     Pierre Schweitzer <pie...@reactos.org>
CommitDate: Thu Feb 8 13:40:54 2018 +0100

    [NTOSKRNL] Revert 2362e0f and 07e6e9c (partly) they seem to have caused 
high instability in Cc.
    This reverts BCB being lazy written when marked dirty.
    
    We'll go back to this behavior when this part will have been reworked and 
stabilized.
    
    CORE-14263
    CORE-14279
    CORE-14285
---
 ntoskrnl/cc/pin.c  | 4 ----
 ntoskrnl/cc/view.c | 3 +--
 2 files changed, 1 insertion(+), 6 deletions(-)

diff --git a/ntoskrnl/cc/pin.c b/ntoskrnl/cc/pin.c
index 955bbd0ca7..7b8d878731 100644
--- a/ntoskrnl/cc/pin.c
+++ b/ntoskrnl/cc/pin.c
@@ -247,10 +247,6 @@ CcSetDirtyPinnedData (
         Bcb, Lsn);
 
     iBcb->Dirty = TRUE;
-    if (!iBcb->Vacb->Dirty)
-    {
-        CcRosMarkDirtyVacb(iBcb->Vacb);
-    }
 }
 
 
diff --git a/ntoskrnl/cc/view.c b/ntoskrnl/cc/view.c
index 0d6d51b2f8..94fcff6b7a 100644
--- a/ntoskrnl/cc/view.c
+++ b/ntoskrnl/cc/view.c
@@ -231,8 +231,7 @@ CcRosFlushDirtyPages (
         ASSERT(current->Dirty);
 
         /* One reference is added above */
-        if ((current->ReferenceCount > 2 && current->PinCount == 0) ||
-            (current->ReferenceCount > 3 && current->PinCount > 1))
+        if (current->ReferenceCount > 2)
         {
             CcRosReleaseVacbLock(current);
             current->SharedCacheMap->Callbacks->ReleaseFromLazyWrite(

Reply via email to