EVT_WDF_IO_WDM_IRP_FOR_FORWARD_PROGRESS callback function (wdfio.h)
[Applies to KMDF only]
A driver's EvtIoWdmIrpForForwardProgress callback function examines an I/O request packet (IRP) and determines whether to use a reserved request object to process the I/O request or to fail the I/O request.
Syntax
EVT_WDF_IO_WDM_IRP_FOR_FORWARD_PROGRESS EvtWdfIoWdmIrpForForwardProgress;
WDF_IO_FORWARD_PROGRESS_ACTION EvtWdfIoWdmIrpForForwardProgress(
[in] WDFQUEUE Queue,
[in] PIRP Irp
)
{...}
Parameters
[in] Queue
A handle to an I/O queue object.
[in] Irp
A pointer to an IRP structure.
Return value
The EvtIoWdmIrpForForwardProgress callback function must return a WDF_IO_FORWARD_PROGRESS_ACTION-typed value.
Remarks
A driver can register an EvtIoWdmIrpForForwardProgress callback function when it calls WdfIoQueueAssignForwardProgressPolicy.
If your driver registers an EvtIoWdmIrpForForwardProgress callback function, the framework calls the function if all of the following conditions exist:
- The framework has received a I/O request packet (IRP) that the I/O manager is sending to the driver.
- The framework has attempted to create a request object for the IRP, but the attempt failed.
- The driver has enabled guaranteed forward progress for the I/O queue that should receive the request object, with the policy type set to WdfIoForwardProgressReservedPolicyUseExamine.
For more information about the EvtIoWdmIrpForForwardProgress callback function, see Guaranteeing Forward Progress of I/O Operations.
This callback function can be called at IRQL <= DISPATCH_LEVEL. If the IRQL is PASSIVE_LEVEL, the framework calls the callback function within a critical region.
Requirements
Requirement | Value |
---|---|
Target Platform | Universal |
Minimum KMDF version | 1.9 |
Header | wdfio.h (include Wdf.h) |
IRQL | <= DISPATCH_LEVEL (see Remarks section) |
See also
Feedback
https://aka.ms/ContentUserFeedback.
Coming soon: Throughout 2024 we will be phasing out GitHub Issues as the feedback mechanism for content and replacing it with a new feedback system. For more information see:Submit and view feedback for