DXGKDDI_COLLECTDBGINFO Rückruffunktion (d3dkmddi.h)
Die DxgkDdiCollectDbgInfo-Funktion gibt Treiberinformationen für einen Debugbericht aus.
Syntax
DXGKDDI_COLLECTDBGINFO DxgkddiCollectdbginfo;
NTSTATUS DxgkddiCollectdbginfo(
[in] IN_CONST_HANDLE hAdapter,
[in/out] IN_CONST_PDXGKARG_COLLECTDBGINFO pCollectDbgInfo
)
{...}
Parameter
[in] hAdapter
Ein Handle für einen Kontextblock, der einer Grafikkarte zugeordnet ist. Der Anzeige-Miniport (KMD) hat dieses Handle zuvor für Dxgkrnl im MiniportDeviceContext-Ausgabeparameter von DxgkDdiAddDevice bereitgestellt.
[in/out] pCollectDbgInfo
Ein Zeiger auf eine DXGKARG_COLLECTDBGINFO Struktur, die Informationen für den Debugbericht enthält.
Rückgabewert
DxgkDdiCollectDbgInfo gibt einen der folgenden Werte zurück:
Rückgabecode | Beschreibung |
---|---|
STATUS_SUCCESS | DxgkDdiCollectDbgInfo gibt Treiberinformationen erfolgreich für einen Debugbericht aus. ODER das Betriebssystem ignorierte den Inhalt im Puffer, auf den pBuffer verweist, und hat dem Debugbericht keine Informationen aus DxgkDdiCollectDbgInfo hinzugefügt. |
STATUS_NO_MEMORY | DxgkDdiCollectDbgInfo konnte keinen Speicher zuordnen, der für den Abschluss erforderlich war. |
STATUS_UNSUCCESSFUL | Ein weiterer Fehler verhinderte, dass der Treiber gültige Debuginformationen sammelte. |
Hinweise
Dxgkrnl ruft die DxgkDdiCollectDbgInfo-Funktion von KMD auf, wenn das Betriebssystem einen treiberbezogenen Debugbericht generiert. DxgkDdiCollectDbgInfo kann entweder unmittelbar vor der Timeouterkennung und -wiederherstellung (Timeout Detection and Recovery, TDR) oder unmittelbar vor den Betriebssystemfehlerüberprüfungen aufgerufen werden. DxgkDdiCollectDbgInfo sollte zwar so schnell wie möglich zurückgegeben werden, es gibt jedoch keine systemdefinierte maximale Zeit, die der Treiber für diese Funktion aufwenden kann.
KMD sollte Debuginformationen sammeln. Wenn DxgkDdiCollectDbgInfo aufgerufen wird, empfängt der Treiber einen Fehlerprüfungscode in pCollectDbgInfo-Reason>, der den Typ der für den Debugbericht erforderlichen Informationen angibt. Der Treiber kopiert die erforderlichen Debuginformationen in den Puffer, auf den pCollectDbgInfo-pBuffer> zeigt. Die maximale Anzahl von Byte von Informationen, die der Treiber kopieren kann, wird von pCollectDbgInfo-BufferSize> angegeben.
DxgkDdiCollectDbgInfo wird in der Regel mit einem nicht definierten IRQL ausgeführt. Wenn pCollectDbgInfo-Reason> jedoch auf VIDEO_TDR_TIMEOUT_DETECTED (um eine adapterweite Zurücksetzung anzugeben) oder VIDEO_ENGINE_TIMEOUT_DETECTED (verfügbar ab Windows 8, um eine Zurücksetzung eines oder mehrerer Knoten innerhalb eines physischen Adapters anzugeben), muss der Treiber sicherstellen, dass DxgkDdiCollectDbgInfo ausgelagert werden kann, mit IRQL = PASSIVE_LEVEL ausgeführt wird und die Synchronisierung auf Nullebene unterstützt.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows Vista |
Zielplattform | Desktop |
Kopfzeile | d3dkmddi.h |
IRQL | PASSIVE_LEVEL |
Weitere Informationen
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für