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) {