From bf0136ce216f4f16b309b39e12f47051a7227377 Mon Sep 17 00:00:00 2001 From: Dibyamartanda Samanta Date: Thu, 20 Jun 2024 19:12:51 +0200 Subject: [PATCH] [NTOSKRNL:CC] Fix Probing and locking of pages, Set Ideal processor to 1 before probing and locking pages, then restore it back to original state --- NTOSKRNL/CC/ccmdlhandler.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/NTOSKRNL/CC/ccmdlhandler.cpp b/NTOSKRNL/CC/ccmdlhandler.cpp index 9c72441..c21defb 100644 --- a/NTOSKRNL/CC/ccmdlhandler.cpp +++ b/NTOSKRNL/CC/ccmdlhandler.cpp @@ -356,10 +356,10 @@ CcPrepareMdlWrite(IN PFILE_OBJECT FileObject, RtlRaiseStatus(STATUS_INSUFFICIENT_RESOURCES ); currentThread = KeGetCurrentThread(); - SavedState = currentThread->UserIdealProcessor + 2; + SavedState = currentThread->UserIdealProcessor ; currentThread->UserIdealProcessor = 1; MmProbeAndLockPages(Mdl, KernelMode, IoWriteAccess); - currentThread->UserIdealProcessor = SavedState - 2; + currentThread->UserIdealProcessor = SavedState; SavedState /* Update the Read Aheas Stats*/ KeAcquireInStackQueuedSpinLock(&SharedCacheMap->BcbSpinLock, &LockHandle);