PSHED_PI_GET_ERROR_SOURCE_INFO回调函数 (ntddk.h)

PSHED 插件的 GetErrorSourceInfo 回调函数返回一个错误源描述符结构,该结构表示由硬件平台实现的特定错误源。

语法

PSHED_PI_GET_ERROR_SOURCE_INFO PshedPiGetErrorSourceInfo;

NTSTATUS PshedPiGetErrorSourceInfo(
  [in, out, optional] PVOID PluginContext,
  [in, out]           PWHEA_ERROR_SOURCE_DESCRIPTOR ErrorSource
)
{...}

参数

[in, out, optional] PluginContext

指向在 WHEA_PSHED_PLUGIN_REGISTRATION_PACKET上下文 结构成员中指定的上下文区域的指针,当 PSHED 插件调用 PshedRegisterPlugin 函数以向 PSHED 注册自身时。

[in, out] ErrorSource

指向 WHEA_ERROR_SOURCE_DESCRIPTOR 结构的指针,该结构表示由硬件平台实现的特定错误源。

返回值

PSHED 插件的 GetErrorSourceInfo 回调函数返回以下 NTSTATUS 代码之一:

返回代码 描述
STATUS_SUCCESS 错误源信息已成功更新。
STATUS_UNSUCCESSFUL 发生错误。

言论

参与错误源发现的 PSHED 插件将设置 Callbacks.GetAllErrorSources 成员, (可选)Callbacks.GetErrorSourceInfoWHEA_PSHED_PLUGIN_REGISTRATION_PACKET 结构的成员指向其 GetAllErrorSources,并在插件调用 PshedRegisterPlugin 函数时 GetErrorSourceInfo 回调函数来注册自身。 PSHED 插件还必须在 WHEA_PSHED_PLUGIN_REGISTRATION_PACKET 结构的 FunctionalAreaMask 成员中设置 PshedFADiscovery 标志。

Windows 内核调用 PSHED 以获取有关特定错误源的其他详细信息。 当总线驱动程序将新的错误源添加到系统时,会出现这种情况。 例如,当 PCI 驱动程序发现能够报告 PCIe 错误的 PCI Express(PCIe)设备时,它会将错误源报告给作系统。

如果注册 PSHED 插件以参与错误源发现,并且已实现 GetErrorSourceInfo 回调函数, PSHED 将错误源描述符结构更新为有关错误源的信息后,PSHED 调用 PSHED 插件的 GetErrorSourceInfo 回调函数,以便 PSHED 插件可以提供有关错误源的其他详细信息。 GetErrorSourceInfo 回调函数更新错误源描述符结构的内容,以便它准确表示由硬件平台实现的错误源。

要求

要求 价值
目标平台 桌面
标头 ntddk.h (包括 Ntddk.h)
IRQL IRQL = DISPATCH_LEVEL

另请参阅

GetAllErrorSources

PshedRegisterPlugin

WHEA_ERROR_SOURCE_DESCRIPTOR

WHEA_PSHED_PLUGIN_REGISTRATION_PACKET