ReactOS  0.4.13-dev-249-gcba1a2f
output.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

void InstallPrintkHook (void)
 
void DeInstallPrintkHook (void)
 
void InitPiceRunningTimer (void)
 
void RemovePiceRunningTimer (void)
 

Variables

ULONG(* ulPrintk )(PANSI_STRING String)
 
BOOLEAN bInPrintk
 
BOOLEAN bIsDebugPrint
 

Function Documentation

◆ DeInstallPrintkHook()

void DeInstallPrintkHook ( void  )

Definition at line 278 of file output.c.

279 {
280  ENTER_FUNC();
281 
282  DPRINT((0,"enter DeInstallPrintkHook()\n"));
284  {
285  // will be done on exit debugger
288  }
289  LEAVE_FUNC();
290 }
#define LEAVE_FUNC()
Definition: debug.h:43
void DPRINT(...)
Definition: polytest.cpp:61
BOOLEAN bIsPrintkPatched
Definition: output.c:56
BOOLEAN DeInstallSWBreakpoint(ULONG ulAddress)
Definition: bp.c:428
#define ENTER_FUNC()
Definition: debug.h:42
ULONG(* ulPrintk)(PANSI_STRING String)
Definition: output.c:52

Referenced by CleanUpPICE(), and COMMAND_PROTOTYPE().

◆ InitPiceRunningTimer()

void InitPiceRunningTimer ( void  )

Definition at line 221 of file output.c.

222 {
224 
225  ENTER_FUNC();
226 #if 0 //won't work. we have to intercept timer interrupt so dpc will never fire while we are in pice
229 
230  Interval.QuadPart=-1000000L; // 100 millisec. (unit is 100 nanosec.)
231 
233  Interval, 1000000L,
234  &PiceTimerDpc);
235 #endif
236  LEAVE_FUNC();
237 }
#define LEAVE_FUNC()
Definition: debug.h:43
BOOLEAN NTAPI KeSetTimerEx(IN OUT PKTIMER Timer, IN LARGE_INTEGER DueTime, IN LONG Period, IN PKDPC Dpc OPTIONAL)
Definition: timerobj.c:294
smooth NULL
Definition: ftsmooth.c:416
VOID NTAPI KeInitializeTimer(OUT PKTIMER Timer)
Definition: timerobj.c:233
DWORD Interval
Definition: netstat.c:30
VOID PiceRunningTimer(IN PKDPC Dpc, IN PVOID DeferredContext, IN PVOID SystemArgument1, IN PVOID SystemArgument2)
Definition: output.c:195
static const WCHAR L[]
Definition: oid.c:1250
KDPC PiceTimerDPC
Definition: output.c:192
KTIMER PiceTimer
Definition: output.c:191
#define ENTER_FUNC()
Definition: debug.h:42
VOID NTAPI KeInitializeDpc(IN PKDPC Dpc, IN PKDEFERRED_ROUTINE DeferredRoutine, IN PVOID DeferredContext)
Definition: dpc.c:711

Referenced by InitPICE().

◆ InstallPrintkHook()

void InstallPrintkHook ( void  )

Definition at line 252 of file output.c.

253 {
254 
255  ENTER_FUNC();
256 
257  if( bIsPrintkPatched )
258  return;
259 
260  DPRINT((0,"installing PrintString hook\n"));
261  ScanExports("_KdpPrintString",(PULONG)&ulPrintk);
262 
263  DPRINT((0,"_KdpPrintString @ %x\n", ulPrintk));
264  ASSERT( ulPrintk ); // temporary
265  if(ulPrintk)
266  {
268  DPRINT((0,"KdpPrintStringTest breakpoint installed? %d\n", bIsPrintkPatched));
269  }
270 
271  LEAVE_FUNC();
272 }
#define TRUE
Definition: types.h:120
#define LEAVE_FUNC()
Definition: debug.h:43
BOOLEAN InstallSWBreakpoint(ULONG ulAddress, BOOLEAN bPermanent, void(*SWBreakpointCallback)(void))
Definition: bp.c:236
void DPRINT(...)
Definition: polytest.cpp:61
void PrintkCallback(void)
Definition: output.c:157
ASSERT((InvokeOnSuccess||InvokeOnError||InvokeOnCancel) ?(CompletionRoutine !=NULL) :TRUE)
BOOLEAN bIsPrintkPatched
Definition: output.c:56
BOOLEAN ScanExports(const char *pFind, PULONG pValue)
Definition: symbols.c:327
unsigned int * PULONG
Definition: retypes.h:1
#define ENTER_FUNC()
Definition: debug.h:42
ULONG(* ulPrintk)(PANSI_STRING String)
Definition: output.c:52

Referenced by InitPICE(), and RealIsr().

◆ RemovePiceRunningTimer()

void RemovePiceRunningTimer ( void  )

Definition at line 243 of file output.c.

244 {
246 }
BOOLEAN NTAPI KeCancelTimer(IN OUT PKTIMER Timer)
Definition: timerobj.c:206
KTIMER PiceTimer
Definition: output.c:191

Referenced by CleanUpPICE().

Variable Documentation

◆ bInPrintk

BOOLEAN bInPrintk

Definition at line 54 of file output.c.

Referenced by HandleInDebuggerFault(), and PrintkCallback().

◆ bIsDebugPrint

BOOLEAN bIsDebugPrint

Definition at line 55 of file output.c.

Referenced by AddToRingBuffer(), PICE_KdpPrintString(), and printk().

◆ ulPrintk

ULONG(* ulPrintk) (PANSI_STRING String)

Definition at line 52 of file output.c.

Referenced by DeInstallPrintkHook(), and InstallPrintkHook().