StorPortQueryDpcWatchdogInformation-Funktion (storport.h)
StorPortQueryDpcWatchdogInformation abfragen DPC Watchdog-Zeitgeberwerte für den aktuellen Prozessor.
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 der die DPC-Watchdog-Informationen geschrieben werden.
Rückgabewert
Diese Funktion gibt einen der folgenden Statuscodes zurück.
Rückgabecode | Beschreibung |
---|---|
STOR_STATUS_SUCCESS | Die DPC-Watchdog-Informationen wurden erfolgreich abgefragt. |
STOR_STATUS_INVALID_PARAMETER | Ein Parameter ist ungültig; beispielsweise ist DpcWatchdogInformation NULL. |
STOR_STATUS_UNSUCCESSFUL | Wird aus anderen internen Systemgründen zurückgegeben. |
Bemerkungen
Ein Miniport kann StorPortQueryDpcWatchdogInformation- bei IRQL=DISPATCH_LEVEL aufrufen, um den Zeitraum zu bestimmen, der verbleibt, bevor ein Timeout für verzögerte Prozeduren (Deferred Procedure Call, DPC) auftritt. Das Betriebssystem implementiert einen DPC Watchdog-Timer, um zu erkennen, wann eine einzelne DPC-Routine zu lang 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, tritt eine DPC_WATCHDOG_VIOLATION (0x133) Fehlerüberprüfung auf.
StorPortQueryDpcWatchdogInformation aufgerufen werden muss, 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 viel Verarbeitung wie möglich an Arbeitsthreads delegieren. Um die Reaktionsfähigkeit des Systems zu vermeiden, sollte eine typische DPC-Routine bei jedem Aufruf nicht mehr als 100 Mikrosekunden ausgeführt werden. Allgemeine Informationen finden Sie unter Richtlinien zum Schreiben von DPC-Routinen.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Server- | Windows Server 2022 |
Header- | storport.h |
IRQL- | DISPATCH_LEVEL |