EVT_WDF_IO_WDM_IRP_FOR_FORWARD_PROGRESS fungsi panggilan balik (wdfio.h)

[Berlaku untuk KMDF saja]

Fungsi panggilan balik EvtIoWdmIrpForwardProgress driver memeriksa paket permintaan I/O (IRP) dan menentukan apakah akan menggunakan objek permintaan yang dipesan untuk memproses permintaan I/O atau gagal dalam permintaan I/O.

Sintaks

EVT_WDF_IO_WDM_IRP_FOR_FORWARD_PROGRESS EvtWdfIoWdmIrpForForwardProgress;

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

Parameter

[in] Queue

Handel ke objek antrean I/O.

[in] Irp

Penunjuk ke struktur IRP.

Nilai kembali

Fungsi panggilan balik EvtIoWdmIrpForwardProgress harus mengembalikan nilai yang ditik WDF_IO_FORWARD_PROGRESS_ACTION.

Keterangan

Driver dapat mendaftarkan fungsi panggilan balik EvtIoWdmIrpForwardProgress saat memanggil WdfIoQueueAssignForwardProgressPolicy.

Jika driver Anda mendaftarkan fungsi panggilan balik EvtIoWdmIrpForwardProgress , kerangka kerja memanggil fungsi jika semua kondisi berikut ada:

  • Kerangka kerja telah menerima paket permintaan I/O (IRP) yang dikirim manajer I/O ke driver.
  • Kerangka kerja telah mencoba membuat objek permintaan untuk IRP, tetapi upaya gagal.
  • Driver telah mengaktifkan kemajuan penerusan terjamin untuk antrean I/O yang harus menerima objek permintaan, dengan jenis kebijakan diatur ke WdfIoForwardProgressReservedPolicyUseExamine.
Kerangka kerja meneruskan IRP ke fungsi panggilan balik EvtIoWdmIrpForwardProgress . Fungsi panggilan balik harus memeriksa IRP dan menentukan apakah kerangka kerja harus menggunakan salah satu objek permintaan yang dipesan untuk IRP atau (jika IRP tidak penting ketika memori komputer yang tersedia rendah) gagal permintaan I/O tanpa mengirimkannya ke driver. Nilai pengembalian fungsi panggilan balik menentukan tindakan yang harus diambil kerangka kerja.

Untuk informasi selengkapnya tentang fungsi panggilan balik EvtIoWdmIrpForwardProgress , lihat Menjamin Kemajuan Penerusan Operasi I/O.

Fungsi panggilan balik ini dapat dipanggil di IRQL <= DISPATCH_LEVEL. Jika IRQL PASSIVE_LEVEL, kerangka kerja memanggil fungsi panggilan balik dalam wilayah penting.

Persyaratan

Persyaratan Nilai
Target Platform Universal
Versi KMDF minimum 1.9
Header wdfio.h (termasuk Wdf.h)
IRQL <= DISPATCH_LEVEL (lihat bagian Keterangan)

Lihat juga

EvtIoAllocateRequestResources

EvtIoAllocateResourcesForReservedRequest