DXGKDDI_COLLECTDIAGNOSTICINFO fungsi panggilan balik (dispmprt.h)

Rutinitas panggilan balik DxgkDdiCollectDiagnosticInfo mengumpulkan informasi driver pribadi karena alasan yang ditentukan oleh DXGK_DIAGNOSTICINFO_TYPE.

Dalam Windows 10, versi 1903, driver akan dipanggil untuk mengumpulkan informasi pribadi jika panggilan fungsi ke DxgkDdiAddDevice atau DxgkDdiStartDevice gagal.

Sintaks

DXGKDDI_COLLECTDIAGNOSTICINFO DxgkddiCollectdiagnosticinfo;

NTSTATUS DxgkddiCollectdiagnosticinfo(
  [in]      IN_CONST_PDEVICE_OBJECT PhysicalDeviceObject,
  [in, out] INOUT_PDXGKARG_COLLECTDIAGNOSTICINFO pCollectDiagnosticInfo
)
{...}

Parameter

[in] PhysicalDeviceObject

Penunjuk ke objek perangkat fisik (PDO) yang mengidentifikasi adaptor tampilan.

[in, out] pCollectDiagnosticInfo

Penunjuk ke struktur DXGKARG_COLLECTDIAGNOSTICINFO yang menjelaskan informasi yang dikumpulkan oleh driver.

Nilai kembali

Mengembalikan STATUS_SUCCESS jika informasi data privat berhasil dikumpulkan. Jika tidak, ia mengembalikan kode kesalahan seperti salah satu hal berikut ini.

Kode Kesalahan Makna
STATUS_DRIVER_INTERNAL_ERROR Kesalahan SW generik terjadi di dalam driver.
STATUS_ACCESS_DENIED Perangkat keras saat ini sedang digunakan oleh utas lain dan DDI ini tidak bisa mendapatkan akses ke dalamnya.
STATUS_DEVICE_HARDWARE_ERROR Terjadi kesalahan HW generik.
STATUS_DEVICE_POWERED_OFF Perangkat dimatikan.

Keterangan

Fungsi ini dipanggil pada tingkat PASSIVE, kapan saja di antara panggilan ke DxgkDdiAddDevice dan DxgkDdiStartDevice, dan harus mendukung tingkat nol sinkronisasi. Data yang dikumpulkan tidak boleh berisi informasi pengguna privat apa pun.

Driver WDDM 2.7 dan yang lebih baru diperlukan untuk mendukung jenis enum DXGK_DIAGNOSTICINFO_TYPE DXGK_DI_BLACKSCREEN untuk pengumpulan data kotak hitam layar hitam.

Untuk skenario layar hitam, OS akan terlebih dahulu mengumpulkan data kotak putih dari driver dengan memanggil DxgkDdiGetDisplayStateNonIntrusive dan DxgkDdiGetDisplayStateIntrusive sebelum memanggil DDI ini untuk mengumpulkan informasi kotak hitam.

Disarankan untuk menggunakan pCollectDiagnosticInfo-BucketingString> untuk melakukan bucketize data kotak hitam jika memungkinkan. Jika ukuran buffer input BufferSizeIn tidak cukup untuk semua data kotak hitam maka driver harus melakukan tradeoff mereka sendiri dalam meninggalkan data yang paling tidak penting dalam sebagian besar analisis akar penyebab layar hitam.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 10, versi 1903
Header dispmprt.h
IRQL PASSIVE_LEVEL

Lihat juga

DXGKARG_COLLECTDIAGNOSTICINFO

DxgkDdiAddDevice

DxgkDdiStartDevice