Windows Driver Kit: Kernel-Mode Driver Framework
WDF_EXECUTION_LEVEL

The WDF_EXECUTION_LEVEL enumeration type specifies the maximum IRQL at which the framework will call the event callback functions that a driver has supplied for a framework object.

typedef enum _WDF_EXECUTION_LEVEL {
  WdfExecutionLevelInvalid = 0x00,
  WdfExecutionLevelInheritFromParent,
  WdfExecutionLevelPassive,
  WdfExecutionLevelDispatch,
} WDF_EXECUTION_LEVEL;

Values

WdfExecutionLevelInvalid
Reserved for system use.
WdfExecutionLevelInheritFromParent
The framework uses the maximum IRQL value of the object's parent, unless the object is one that requires IRQL = DISPATCH_LEVEL (such as a DPC object). This value is the default if a driver does not specify a WDF_EXECUTION_LEVEL-typed value.
WdfExecutionLevelPassive
The framework always calls the object's callback functions at IRQL = PASSIVE_LEVEL.
WdfExecutionLevelDispatch
The framework calls the object's callback functions at IRQL <= DISPATCH_LEVEL.

Comments

Drivers use the WDF_EXECUTION_LEVEL enumeration type to specify the ExecutionLevel member of an object's WDF_OBJECT_ATTRIBUTES structure.

You can specify an ExecutionLevel value for only the following objects:

  • Framework driver objects
  • Framework device objects
  • Framework file objects
  • Framework general objects
  • Framework queue objects (Framework versions 1.9 and later)
  • Framework timer objects (Framework versions 1.9 and later)

By default, the framework sets the ExecutionLevel value of framework driver objects to WdfExecutionLevelDispatch.

For more information about execution levels for event callback functions, see Synchronization Techniques for Framework-Based Drivers.

Requirements

Versions: The WDF_EXECUTION_LEVEL enumeration type is available in version 1.0 and later versions of KMDF.

Headers: Defined in Wdfobject.h. Include Wdf.h.

See Also

WDF_OBJECT_ATTRIBUTES


Send feedback on this topic
Built on October 01, 2009
Page view tracker