diff --git a/NTOSKRNL/CC/ccloghandler.cpp b/NTOSKRNL/CC/ccloghandler.cpp index 9e32236..d63709e 100644 --- a/NTOSKRNL/CC/ccloghandler.cpp +++ b/NTOSKRNL/CC/ccloghandler.cpp @@ -477,4 +477,22 @@ CcGetCachedDirtyPageCountForFile(PSECTION_OBJECT_POINTERS SectionObjectPointer) return DIRTYPAGES; } +VOID NTAPI CcGetNumberOfMappedPages( + PSECTION_OBJECT_POINTERS SectionObjectPointers, + PULONG NoMappedVacbPage, + PULONG NoActivePages) +{ + PSHARED_CACHE_MAP SharedCacheMap = SectionObjectPointers->SharedCacheMap; + *NoMappedVacbPage = nullptr; + *NoActivePages = nullptr; + if (SharedCacheMap) + { + + SpinLockSharedGuard guard(&SharedCacheMap->VacbLock); + /*Calculate the number of pages based on NumMappedVacb and NumActiveVacb by Doing Half Page Shift*/ + NoMappedVacbPage = &SharedCacheMap->NumMappedVacb << 6; + NoActivePages = &SharedCacheMap->NumActiveVacb << 6; + } + return; +}