Freigeben über


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

Siehe auch

STOR_DPC_WATCHDOG_INFORMATION