EVT_WDF_IO_WDM_IRP_FOR_FORWARD_PROGRESS funzione di callback (wdfio.h)

[Si applica solo a KMDF]

La funzione di callback EvtIoWdmIrpForForwardProgress di un driver esamina un pacchetto di richiesta I/O e determina se usare un oggetto richiesta riservata per elaborare la richiesta di I/O o per non riuscire la richiesta di I/O.

Sintassi

EVT_WDF_IO_WDM_IRP_FOR_FORWARD_PROGRESS EvtWdfIoWdmIrpForForwardProgress;

WDF_IO_FORWARD_PROGRESS_ACTION EvtWdfIoWdmIrpForForwardProgress(
  [in] WDFQUEUE Queue,
  [in] PIRP Irp
)
{...}

Parametri

[in] Queue

Handle per un oggetto coda di I/O.

[in] Irp

Puntatore a una struttura IRP.

Valore restituito

La funzione di callback EvtIoWdmIrpForForwardProgress deve restituire un valore tipizzato WDF_IO_FORWARD_PROGRESS_ACTION.

Commenti

Un driver può registrare una funzione di callback EvtIoWdmIrpForForwardProgress quando chiama WdfIoQueueAssignForwardProgressPolicy.

Se il driver registra una funzione di callback EvtIoWdmIrpForForwardProgress , il framework chiama la funzione se esistono tutte le condizioni seguenti:

  • Il framework ha ricevuto un pacchetto di richiesta di I/O (IRP) che il gestore di I/O sta inviando al driver.
  • Il framework ha tentato di creare un oggetto richiesta per l'IRP, ma il tentativo non è riuscito.
  • Il driver ha abilitato lo stato di avanzamento garantito per la coda di I/O che deve ricevere l'oggetto richiesta, con il tipo di criterio impostato su WdfIoForwardProgressReservedPolicyUseExamine.
Il framework passa l'IRP alla funzione di callback EvtIoWdmIrpForForwardProgress . La funzione di callback deve esaminare l'IRP e determinare se il framework deve usare uno degli oggetti di richiesta riservati per l'IRP o (se l'IRP non è importante quando la memoria disponibile del computer è insufficiente) non riesce la richiesta di I/O senza recapitarla al driver. Il valore restituito della funzione di callback specifica l'azione che deve essere eseguita dal framework.

Per altre informazioni sulla funzione di callback EvtIoWdmIrpForForwardProgress , vedere Garanzia dello stato di avanzamento delle operazioni di I/O.

Questa funzione di callback può essere chiamata in IRQL <= DISPATCH_LEVEL. Se IRQL è PASSIVE_LEVEL, il framework chiama la funzione di callback all'interno di un'area critica.

Requisiti

Requisito Valore
Piattaforma di destinazione Universale
Versione KMDF minima 1,9
Intestazione wdfio.h (include Wdf.h)
IRQL <= DISPATCH_LEVEL (vedere la sezione Osservazioni)

Vedi anche

EvtIoAllocateRequestResources

EvtIoAllocateResourcesForReservedRequest