Compartilhar via


PSHED_PI_INJECT_ERROR função de retorno de chamada (ntddk.h)

A função de retorno de chamada InjectError de um plug-in PSHED injeta um erro na plataforma de hardware.

Sintaxe

PSHED_PI_INJECT_ERROR PshedPiInjectError;

NTSTATUS PshedPiInjectError(
  [in, out, optional] PVOID PluginContext,
  [in]                ULONGLONG ErrorType,
  [in]                ULONGLONG Parameter1,
  [in]                ULONGLONG Parameter2,
  [in]                ULONGLONG Parameter3,
  [in]                ULONGLONG Parameter4
)
{...}

Parâmetros

[in, out, optional] PluginContext

Um ponteiro para a área de contexto especificada no membro Context da estrutura WHEA_PSHED_PLUGIN_REGISTRATION_PACKET quando o plug-in PSHED chamou a função PshedRegisterPlugin para se registrar no PSHED.

[in] ErrorType

O tipo de erro a ser injetado na plataforma de hardware. Os valores possíveis são:

INJECT_ERRTYPE_PROCESSOR_CORRECTABLE

Um erro de processador corrigível.

INJECT_ERRTYPE_PROCESSOR_UNCORRECTABLENONFATAL

Um erro de processador não fatal incorrecionável.

INJECT_ERRTYPE_PROCESSOR_UNCORRECTABLEFATAL

Um erro fatal do processador não corrigido.

INJECT_ERRTYPE_MEMORY_CORRECTABLE

Um erro de memória corrigível.

INJECT_ERRTYPE_MEMORY_UNCORRECTABLENONFATAL

Um erro de memória não fatal incorrecionável.

INJECT_ERRTYPE_MEMORY_UNCORRECTABLEFATAL

Um erro de memória fatal incorrecionável.

INJECT_ERRTYPE_PCIEXPRESS_CORRECTABLE

Um erro PCI Express corrigível.

INJECT_ERRTYPE_PCIEXPRESS_UNCORRECTABLENONFATAL

Um erro PCI Express não fatal incorrecionável.

INJECT_ERRTYPE_PCIEXPRESS_UNCORRECTABLEFATAL

Um erro fatal incorrecionável do PCI Express.

INJECT_ERRTYPE_PLATFORM_CORRECTABLE

Um erro de plataforma corrigível.

INJECT_ERRTYPE_PLATFORM_UNCORRECTABLENONFATAL

Um erro de plataforma não fatal incorrecionável.

INJECT_ERRTYPE_PLATFORM_UNCORRECTABLEFATAL

Um erro fatal de plataforma incorreção.

[in] Parameter1

Um parâmetro genérico que contém dados adicionais que são passados pelo aplicativo de gerenciamento WHEA que está injetando o erro.

[in] Parameter2

Um parâmetro genérico que contém dados adicionais que são passados pelo aplicativo de gerenciamento WHEA que está injetando o erro.

[in] Parameter3

Um parâmetro genérico que contém dados adicionais que são passados pelo aplicativo de gerenciamento WHEA que está injetando o erro.

[in] Parameter4

Um parâmetro genérico que contém dados adicionais que são passados pelo aplicativo de gerenciamento WHEA que está injetando o erro.

Retornar valor

A função de retorno de chamada InjectError de um plug-in PSHED retorna um dos seguintes códigos NTSTATUS:

Código de retorno Descrição
STATUS_SUCCESS O erro foi injetado com êxito na plataforma de hardware.
STATUS_UNSUCCESSFUL Ocorreu um erro. Para erros injetados que são fatais ou irrecuperáveis, essa função de retorno de chamada pode não retornar antes que o sistema operacional gere um bug marcar em resposta à condição de erro.

Comentários

Um plug-in PSHED que participa da injeção de erro define os membros Callbacks.GetInjectionCapabilities e Callbacks.InjectError da estrutura WHEA_PSHED_PLUGIN_REGISTRATION_PACKET para apontar para suas funções de retorno de chamada GetInjectionCapabilities e InjectError quando o plug-in chama a função PshedRegisterPlugin para se registrar no PSHED. O plug-in PSHED também deve definir o sinalizador PshedFAErrorInjection no membro FunctionalAreaMask da estrutura WHEA_PSHED_PLUGIN_REGISTRATION_PACKET.

Quando um aplicativo de gerenciamento whea faz uma solicitação para injetar um erro de hardware, o kernel do Windows chama o PSHED para injetar o erro na plataforma de hardware. Se um plug-in PSHED estiver registrado para participar da injeção de erro, o PSHED chamará a função de retorno de chamada InjectError do plug-in PSHED para executar a operação de injeção de erro.

O aplicativo de gerenciamento WHEA que está injetando o erro pode passar dados específicos de erro adicionais para a função de retorno de chamada InjectError do plug-in PSHED usando parâmetros Parameter1 a Parameter4. Por exemplo, em sistemas baseados em Itanium, algumas das operações de injeção de erro exigem um endereço de acompanhamento. Nessa situação, o aplicativo de gerenciamento WHEA pode passar o endereço para a função de retorno de chamada InjectError do plug-in PSHED usando um desses parâmetros.

Requisitos

Requisito Valor
Cliente mínimo com suporte Com suporte no Windows Server 2008, Windows Vista SP1 e versões posteriores do Windows.
Plataforma de Destino Área de Trabalho
Cabeçalho ntddk.h (inclua Ntddk.h)
IRQL IRQL = DISPATCH_LEVEL

Confira também

GetInjectionCapabilities

PshedRegisterPlugin

WHEA_PSHED_PLUGIN_REGISTRATION_PACKET