alcyone/CC/ccmdlhandler.cpp

42 lines
732 B
C++

/*
* PROJECT: Alcyone Kernel
* LICENSE: BSD Clause 3
* PURPOSE: Cache Controller:: MDL Handler
* NT KERNEL: 5.11.9360
* COPYRIGHT: 2023-2029 Dibymartanda Samanta <>
*
*/
#include <ntoskrnl.h>
#define NTDEBUG
#include <debug.h>
#include "ccinternal.hpp"
#include "ccmdl.hpp"
/* Intenal Functions */
VOID
NTAPI
CcMdlReadComplete2 (
IN PFILE_OBJECT FileObject,
IN PMDL MdlChain
)
{
/* Check if MDL Chain is Valid */
if (MdlChain)
{
/*Iterate Through the MDL CHain*/
for( auto it = begin(MdlChain); it != end(MdlChain);++it)
{
/*Unlock the memory pages associated with the MDL*/
MmUnlockPages(*it);
/*Free The MDL */
IoFreeMdl(*it);
}
}
}