Freigeben über


StorPortQueryDpcWatchdogInformation-Funktion (storport.h)

StorPortQueryDpcWatchdogInformation fragt DPC-Watchdog-Timerwerte für den aktuellen Prozessor ab.

Syntax

ULONG StorPortQueryDpcWatchdogInformation(
  [in]  PVOID                          HwDeviceExtension,
  [out] PSTOR_DPC_WATCHDOG_INFORMATION DpcWatchdogInformation
);

Parameter

[in] HwDeviceExtension

Ein Zeiger auf die Geräteerweiterung des Miniports.

[out] DpcWatchdogInformation

Zeiger auf eine STOR_DPC_WATCHDOG_INFORMATION Struktur, in die die DPC-Watchdog-Informationen geschrieben werden.

Rückgabewert

Diese Funktion gibt einen der folgenden status Codes zurück.

Rückgabecode Beschreibung
STOR_STATUS_SUCCESS Die DPC-Watchdog-Informationen wurden erfolgreich abgefragt.
STOR_STATUS_INVALID_PARAMETER Ein Parameter ist ungültig. DpcWatchdogInformation ist z. B. NULL.
STOR_STATUS_UNSUCCESSFUL Wird aus anderen internen Systemgründen zurückgegeben.

Hinweise

Ein Miniport kann StorPortQueryDpcWatchdogInformation unter IRQL=DISPATCH_LEVEL aufrufen, um die Zeitspanne zu bestimmen, die bis zum Timeout eines verzögerten Prozeduraufrufs (DPC) verbleibt. Das Betriebssystem implementiert einen DPC-Watchdog-Timer, um zu erkennen, wann eine einzelne DPC-Routine zu lange ausgeführt wird oder wenn eine Reihe von DPC-Routinen in der Warteschlange zu lange ausgeführt wird. Wenn DPC-Timeoutfehler aktiviert sind und entweder eine DPC-Routine das Zeitlimit für eine einzelne Routine überschreitet oder eine Reihe von DPC-Routinen das aggregierte Zeitlimit überschreitet, wird eine DPC_WATCHDOG_VIOLATION -Fehlerüberprüfung (0x133) durchgeführt.

StorPortQueryDpcWatchdogInformation muss aufgerufen werden, während ein DPC unter IRQL= DISPATCH_LEVEL oder höher auf dem aktuellen Prozessor ausgeführt oder aufgerufen wird. Andernfalls schlägt der Aufruf fehl und gibt STOR_STATUS_UNSUCCESSFUL zurück.

DPC-Routinen sollten nur für kurze Zeiträume ausgeführt werden und sollten so viele Verarbeitungsvorgänge wie möglich an Workerthreads delegieren. Um eine beeinträchtigte Systemreaktion zu vermeiden, sollte eine typische DPC-Routine bei jedem Aufruf maximal 100 Mikrosekunden lang ausgeführt werden. Allgemeine Informationen finden Sie unter Richtlinien zum Schreiben von DPC-Routinen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Server) Windows Server 2022
Kopfzeile storport.h
IRQL DISPATCH_LEVEL

Weitere Informationen

STOR_DPC_WATCHDOG_INFORMATION