Leaked source code of windows server 2003
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
/*++
Copyright (c) 1992 Microsoft Corporation
Module Name:
stktrace.h
Abstract:
This header file defines the format of the stack trace data base used to track caller backtraces. This is a header file so debugger extensions can lookup entries in the database remotely.
Author:
Steve Wood (stevewo) 13-Sep-1992
Revision History:
--*/
#ifndef _STKTRACE_H_
#define _STKTRACE_H_
//
// RTL_STACK_TRACE_ENTRY
//
typedef struct _RTL_STACK_TRACE_ENTRY {
struct _RTL_STACK_TRACE_ENTRY * HashChain;
ULONG TraceCount; USHORT Index; USHORT Depth; PVOID BackTrace [MAX_STACK_DEPTH];
} RTL_STACK_TRACE_ENTRY, *PRTL_STACK_TRACE_ENTRY;
//
// RTL_STACK_TRACE_DATABASE
//
typedef struct _STACK_TRACE_DATABASE { union { RTL_CRITICAL_SECTION CriticalSection; ERESOURCE Resource; PVOID Lock; // real lock (the other two kept for compatibility)
};
PVOID Reserved[3]; // fields no longer used but kept for compatibility
BOOLEAN PreCommitted; BOOLEAN DumpInProgress;
PVOID CommitBase; PVOID CurrentLowerCommitLimit; PVOID CurrentUpperCommitLimit;
PCHAR NextFreeLowerMemory; PCHAR NextFreeUpperMemory;
ULONG NumberOfEntriesLookedUp; ULONG NumberOfEntriesAdded;
PRTL_STACK_TRACE_ENTRY *EntryIndexArray; // Indexed by [-1 .. -NumberOfEntriesAdded]
ULONG NumberOfBuckets; PRTL_STACK_TRACE_ENTRY Buckets [1];
} STACK_TRACE_DATABASE, *PSTACK_TRACE_DATABASE;
PSTACK_TRACE_DATABASE RtlpAcquireStackTraceDataBase ( VOID );
VOID RtlpReleaseStackTraceDataBase ( VOID );
NTSTATUS RtlInitializeStackTraceDataBase( IN PVOID CommitBase, IN SIZE_T CommitSize, IN SIZE_T ReserveSize );
#endif // _STKTRACE_H_
|