PfTAccessTracingInitialize
VOID __stdcall PfTAccessTracingInitialize(
_PFP_TRACING_GLOBALS *TGlobals,
_PF_KERNEL_GLOBALS *KGlobals,
UINT64 Reinitialize){
_EX_RUNDOWN_REF *p_AccessBufferRef;
if( !(_DWORD)Reinitialize )
{
*((_QWORD *)TGlobals + 2) = 0i64;
TGlobals[3] = 3;
}
KGlobals->AccessBufferMax = 0;
p_AccessBufferRef = &KGlobals->AccessBufferRef;
if( (_DWORD)Reinitialize )
{
_InterlockedExchange64((volatile __int64 *)p_AccessBufferRef, 0i64);
}
else
{
ExInitializePushLock(&p_AccessBufferRef->Count);
InitializeSListHead(&KGlobals->AccessBufferList);
KeInitializeEvent((INT64)KGlobals->gap10, 0, 0);
}
}Referenced by:
PfTAccessTracingCleanup
PfTInitialize