// wdfobject.h
typedef enum _WDF_EXECUTION_LEVEL {
WdfExecutionLevelInvalid = 0x00,
WdfExecutionLevelInheritFromParent,
WdfExecutionLevelPassive,
WdfExecutionLevelDispatch
} WDF_EXECUTION_LEVEL;
View the official Windows Driver Kit DDI reference
No description available.
[Applies to KMDF and UMDF]
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.
WdfExecutionLevelInvalid:0x00
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. Not available in UMDF.
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 the following objects:
KMDF By default, the framework sets the ExecutionLevel value of framework driver objects to WdfExecutionLevelDispatch.
UMDF By default, the framework sets the ExecutionLevel value of framework driver objects to WdfExecutionLevelPassive.
The default ExecutionLevel value for all other objects is WdfExecutionLevelInheritFromParent.
For more information about execution levels for event callback functions, see Synchronization Techniques for Framework-Based Drivers.