[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:
parent
be6f37b4dc
commit
bf0136ce21
@ -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);
|
||||||
|
Loading…
Reference in New Issue
Block a user