EVT_WDF_IO_QUEUE_IO_DEFAULT - NtDoc

Native API online documentation, based on the System Informer (formerly Process Hacker) phnt headers
// wdfio.h

EVT_WDF_IO_QUEUE_IO_DEFAULT EvtWdfIoQueueIoDefault;

VOID EvtWdfIoQueueIoDefault(
  [in] WDFQUEUE Queue,
  [in] WDFREQUEST Request
)
{...}
View the official Windows Driver Kit DDI reference

NtDoc

No description available.

Windows Driver Kit DDI reference (nc-wdfio-evt_wdf_io_queue_io_default)

EVT_WDF_IO_QUEUE_IO_DEFAULT callback function

Description

[Applies to KMDF and UMDF]

A driver's EvtIoDefault event callback function processes a specified I/O request.

Parameters

Queue [in]

A handle to the framework queue object that is associated with the I/O request.

Request [in]

A handle to a framework request object.

Remarks

A driver registers an EvtIoDefault callback function when it calls WdfIoQueueCreate. For more information about calling WdfIoQueueCreate, see Creating I/O Queues.

If a driver has registered an EvtIoDefault callback function for a device's I/O queue, the callback function receives every I/O request from the queue, unless request-specific callback functions have also been registered. For more information about request-specific callback functions, see Request Handlers.

A driver's EvtIoDefault callback function can also receive file creation requests. For more information about receiving file creation requests, see Framework File Objects.

The EvtIoDefault callback function must process each received I/O request in some manner. For more information, see Processing I/O Requests.

Most I/O operations require an input buffer, an output buffer, or both. For information about how the driver can access a request's buffers, see Accessing Data Buffers in Framework-Based Drivers.

This callback function can be called at IRQL <= DISPATCH_LEVEL, unless the ExecutionLevel member of the device or driver's WDF_OBJECT_ATTRIBUTES structure is set to WdfExecutionLevelPassive.

If the IRQL is PASSIVE_LEVEL, the framework calls the callback function within a critical region.

For more information about IRQL levels for request handlers, see Using Automatic Synchronization.

A driver's EvtIoDefault callback function should not call the following queue object methods:

WdfIoQueueDrainSynchronously

WdfIoQueuePurgeSynchronously

WdfIoQueueStopSynchronously

See also

EvtIoDeviceControl

EvtIoInternalDeviceControl

EvtIoRead

EvtIoWrite

WDF_OBJECT_ATTRIBUTES

WdfIoQueueCreate