[NTOS:CC] Avoid some magic numbers.

This commit is contained in:
Thomas Faber 2018-02-20 13:18:34 +01:00
parent b8741e2bb3
commit 56e2bf2f92
No known key found for this signature in database
GPG key ID: 076E7C3D44720826
3 changed files with 6 additions and 3 deletions

View file

@ -228,7 +228,7 @@ CcScheduleReadAhead (
/* It's active now! /* It's active now!
* Be careful with the mask, you don't want to mess with node code * Be careful with the mask, you don't want to mess with node code
*/ */
InterlockedOr((volatile long *)&PrivateCacheMap->UlongFlags, 0x10000); InterlockedOr((volatile long *)&PrivateCacheMap->UlongFlags, PRIVATE_CACHE_MAP_READ_AHEAD_ACTIVE);
KeReleaseSpinLock(&PrivateCacheMap->ReadAheadSpinLock, OldIrql); KeReleaseSpinLock(&PrivateCacheMap->ReadAheadSpinLock, OldIrql);
/* Get a work item */ /* Get a work item */
@ -250,7 +250,7 @@ CcScheduleReadAhead (
/* Fail path: lock again, and revert read ahead active */ /* Fail path: lock again, and revert read ahead active */
KeAcquireSpinLock(&PrivateCacheMap->ReadAheadSpinLock, &OldIrql); KeAcquireSpinLock(&PrivateCacheMap->ReadAheadSpinLock, &OldIrql);
InterlockedAnd((volatile long *)&PrivateCacheMap->UlongFlags, 0xFFFEFFFF); InterlockedAnd((volatile long *)&PrivateCacheMap->UlongFlags, ~PRIVATE_CACHE_MAP_READ_AHEAD_ACTIVE);
} }
/* Done (fail) */ /* Done (fail) */

View file

@ -594,7 +594,7 @@ Clear:
{ {
/* Mark read ahead as unactive */ /* Mark read ahead as unactive */
KeAcquireSpinLockAtDpcLevel(&PrivateCacheMap->ReadAheadSpinLock); KeAcquireSpinLockAtDpcLevel(&PrivateCacheMap->ReadAheadSpinLock);
InterlockedAnd((volatile long *)&PrivateCacheMap->UlongFlags, 0xFFFEFFFF); InterlockedAnd((volatile long *)&PrivateCacheMap->UlongFlags, ~PRIVATE_CACHE_MAP_READ_AHEAD_ACTIVE);
KeReleaseSpinLockFromDpcLevel(&PrivateCacheMap->ReadAheadSpinLock); KeReleaseSpinLockFromDpcLevel(&PrivateCacheMap->ReadAheadSpinLock);
} }
KeReleaseQueuedSpinLock(LockQueueMasterLock, OldIrql); KeReleaseQueuedSpinLock(LockQueueMasterLock, OldIrql);

View file

@ -61,6 +61,9 @@ typedef struct _PRIVATE_CACHE_MAP_FLAGS
ULONG Available:14; ULONG Available:14;
} PRIVATE_CACHE_MAP_FLAGS; } PRIVATE_CACHE_MAP_FLAGS;
#define PRIVATE_CACHE_MAP_READ_AHEAD_ACTIVE (1 << 16)
#define PRIVATE_CACHE_MAP_READ_AHEAD_ENABLED (1 << 17)
typedef struct _PRIVATE_CACHE_MAP typedef struct _PRIVATE_CACHE_MAP
{ {
union union