[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
This commit is contained in:
Dibyamartanda Samanta 2024-06-20 19:12:51 +02:00
parent be6f37b4dc
commit bf0136ce21

View File

@ -356,10 +356,10 @@ CcPrepareMdlWrite(IN PFILE_OBJECT FileObject,
RtlRaiseStatus(STATUS_INSUFFICIENT_RESOURCES ); RtlRaiseStatus(STATUS_INSUFFICIENT_RESOURCES );
currentThread = KeGetCurrentThread(); currentThread = KeGetCurrentThread();
SavedState = currentThread->UserIdealProcessor + 2; SavedState = currentThread->UserIdealProcessor ;
currentThread->UserIdealProcessor = 1; currentThread->UserIdealProcessor = 1;
MmProbeAndLockPages(Mdl, KernelMode, IoWriteAccess); MmProbeAndLockPages(Mdl, KernelMode, IoWriteAccess);
currentThread->UserIdealProcessor = SavedState - 2; currentThread->UserIdealProcessor = SavedState;
SavedState SavedState
/* Update the Read Aheas Stats*/ /* Update the Read Aheas Stats*/
KeAcquireInStackQueuedSpinLock(&SharedCacheMap->BcbSpinLock, &LockHandle); KeAcquireInStackQueuedSpinLock(&SharedCacheMap->BcbSpinLock, &LockHandle);