EtwpStartTrace

NTSTATUS __stdcall EtwpStartTrace(_ETW_SILODRIVERSTATE *SiloState, _WMI_LOGGER_INFORMATION *LoggerInfo){
  _ETHREAD *CurrentThread; 
  _KMUTANT *p_EtwpStartTraceMutex; 

  CurrentThread = (_ETHREAD *)KeGetCurrentThread();
  --CurrentThread->Tcb.KernelApcDisable;
  p_EtwpStartTraceMutex = &SiloState->EtwpStartTraceMutex;
  KeWaitForSingleObject((UINT64)&SiloState->EtwpStartTraceMutex, 0, 0, 0, 0i64);
  LODWORD(LoggerInfo) = EtwpStartLogger(SiloState, LoggerInfo);
  KeReleaseMutex(p_EtwpStartTraceMutex, 0);
  KeLeaveCriticalRegionThread(KeGetCurrentThread());
  return(int)LoggerInfo;
}

Referenced by:

EtwWmitraceWorker