Share via


DkmStackWalkFrameFlags Enum

Definition

Flags properties of a DkmStackWalkFrame.

This enumeration supports a bitwise combination of its member values.

public enum class DkmStackWalkFrameFlags
public enum class DkmStackWalkFrameFlags
enum DkmStackWalkFrameFlags
[System.Flags]
public enum DkmStackWalkFrameFlags
[<System.Flags>]
type DkmStackWalkFrameFlags = 
Public Enum DkmStackWalkFrameFlags
Inheritance
DkmStackWalkFrameFlags
Attributes

Fields

Name Value Description
None 0

No flags are set on this stack frame.

TopFrame 1

Stack frame is the top frame in the call stack. This is used to detect the top frame when the full stack frame collection is not available. Unwinders should set this on top frame when doing an unwind. Unwinders must decide if it makes sense for logical frames (such as inline frames) that appear above physical frame should also be marked. Doing so would result in multiple frames being marked as a top frame.

Hidden 2

Stack frame is located within hidden code.

NonuserCode 4

Stack frame is located within non-user code.

InlineOptimized 8

Stack frame is an inlined optimized frame, not a physical frame.

MaxFramesExceeded 16

Stack frame is used to indicate that the maximum number of walked stack frame has been exceeded.

ExceptionUnwindTarget 32

Stack frame can be unwound to after an exception has been thrown.

FuncEvalFrame 64

Stack frame is an annotated frame that shows what is being evaluated example 'Evaluation of: xyz'.

ReturnStackFrame 128

Indicates that this frame is part of an async return stack and is not actually executing on the current thread.

TaskCreationStackFrame 256

Indicates that this frame was logged from the call stack of the creation of an async task and is not actually executing on the current thread at this time.

UserStatusNotDetermined 512

Indicates that it is not yet known whether or not the frame is user code or non-user code. The stack provider will call back to find out.

SymbolsNotLoadedAnnotation 1024

Indicates that we are an annotated frame indicating that frames below may be missing or incorrect due binaries or symbols not being loaded for a module.

NonUserExceptionImplementation 2048

Indicates that we are in nonuser code that is known to be part of the implementation of throwing exceptions.

AsyncCallAnnotatedFrame 4096

Indicates that this is an annotated frame denoting an async call (i.e. [Async Call]).

AsyncContinuationAnnotatedFrame 8192

Indicates that this is an annotated frame denoting resuming an async method (i.e. [Resuming async method]).

FakeFrame 16384

Indicates that this frame is fake and not backed by a real frame in the target. This flag will never be used for stack frames obtained from stack walk, but can be used for pseudo-frames used to allow inspection.

BinaryNotLoadedAnnotation 32768

Indicates that we are an annotated frame and frames below may be missing due to binary not being loaded for a module.

HiddenExternal 65536

Indicates that the frame can be hidden if external code is not shown.

Applies to