From f51b74ca6111a93ea08356fec0cbbd4bb7542e5a Mon Sep 17 00:00:00 2001 From: Pierre Schweitzer Date: Fri, 9 Feb 2018 12:25:58 +0100 Subject: [PATCH] [NTOSKRNL] Don't defer write through write operations --- ntoskrnl/cc/copy.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/ntoskrnl/cc/copy.c b/ntoskrnl/cc/copy.c index 63ad5aeb11a..4992ade2906 100644 --- a/ntoskrnl/cc/copy.c +++ b/ntoskrnl/cc/copy.c @@ -622,6 +622,12 @@ CcCanIWrite ( CCTRACE(CC_API_DEBUG, "FileObject=%p BytesToWrite=%lu Wait=%d Retrying=%d\n", FileObject, BytesToWrite, Wait, Retrying); + /* Write through is always OK */ + if (BooleanFlagOn(FileObject->Flags, FO_WRITE_THROUGH)) + { + return TRUE; + } + /* We cannot write if dirty pages count is above threshold */ if (CcTotalDirtyPages > CcDirtyPageThreshold) {