pHalSetSystemInformation-Rückruffunktion (ntddk.h)

Registrieren Sie den MCA-Treiber bei der HAL.

Syntax

pHalSetSystemInformation Phalsetsysteminformation;

NTSTATUS Phalsetsysteminformation(
  [in]  HAL_SET_INFORMATION_CLASS InformationClass,
  [in]  ULONG BufferSize,
  [out] PVOID Buffer
)
{...}

Parameter

[in] InformationClass

Der HalMcaRegisterDriver zum Registrieren der Rückrufroutinen des MCA-Treibers bei der HAL. Es gibt zwei Rückrufroutinen: ExceptionCallback und DpcCallback. Die ExceptionCallback-Routine wird während der nicht neustartbaren Fehlerverarbeitung des MCE-Handlers (Machine Check Exception) aufgerufen, bevor sie eine Fehlerprüfung für das System ausgibt. Die DpcCallback-Routine wird aufgerufen, wenn der MCA-Fehler neu gestartet werden kann. Geben Sie für Itanium-Systeme HalCmcRegisterDriver an, um die DpcCallback-Routine eines Treibers mit korrigierten CPU-Fehlern zu registrieren, und halCpeRegisterDriver, um den korrigierten Plattformfehler des Treibers DpcCallback zu registrieren.

[in] BufferSize

Die Größe des Puffers, den der Aufrufer bereitstellt, in Byte.

[out] Buffer

Ein Zeiger auf einen vom Aufrufer bereitgestellten Puffer vom Typ MCA_DRIVER_INFO, der wie folgt definiert wird.

typedef struct _MCA_DRIVER_INFO {
  PDRIVER_EXCPTN_CALLBACK  ExceptionCallback; // NULL for Itanium corrected error registration
  PKDEFERRED_ROUTINE  DpcCallback;
  PVOID  DeviceContext;
} MCA_DRIVER_INFO, *PMCA_DRIVER_INFO;

Diese Struktur enthält die folgenden Member:

  • ExceptionCallback

    Die vom Treiber bereitgestellte Routine, die aufgerufen werden soll, wenn die Ausnahme für die Maschinelle Überprüfung (Machine Check Exception, MCE) für nicht korrigierte Fehler auftritt. Ein Treiber kann keine Kerneldienste oder Spinsperrroutinen explizit verwenden. Der Handler ist auf dieselben Einschränkungen beschränkt wie ein Treiber, der mit der höchsten IRQL-Instanz arbeitet.

  • DpcCallback

    Eine vom Treiber bereitgestellte Routine, die für korrigierte Fehler aufgerufen wird, die eine Ausnahme für die Maschinelle Überprüfung (Machine Check Exception, MCE) verursacht haben. Diese Routine muss bei DISPATCH_LEVEL aufgerufen werden.

  • DeviceContext

    Der gerätespezifische Kontext für diesen MCA-Treiber.

Rückgabewert

Gibt STATUS_SUCCESS zurück, wenn die Registrierung erfolgreich ist.

Hinweise

HalSetSystemInformation muss aufgerufen werden, bevor ein MCA-Treiber eine der anderen Schnittstellenroutinen verwenden kann. Zu einem bestimmten Zeitpunkt kann nur ein MCA-Treiber bei der HAL registriert werden.

Windows Vista und höhere Versionen von Windows unterstützen nicht den Typ der Berichte zur Machine Check Architecture (MCA) und Machine Check Exception (MCE), die in diesem Thema beschrieben werden. MCA- und MCE-Berichte werden stattdessen über die Windows-Hardwarefehlerarchitektur (WINDOWS Hardware Error Architecture, WHEA) unterstützt.

Anforderungen

Anforderung Wert
Zielplattform Desktop
Kopfzeile ntddk.h (include Ntddk.h)