Partilhar via


estrutura KBUGCHECK_ADD_PAGES (wdm.h)

A estrutura KBUGCHECK_ADD_PAGES descreve uma ou mais páginas de dados fornecidos pelo driver a serem gravados por uma função de retorno de chamada KBUGCHECK_REASON_CALLBACK_ROUTINE no arquivo de despejo de falha.

Sintaxe

typedef struct _KBUGCHECK_ADD_PAGES {
  PVOID     Context;
  ULONG     Flags;
  ULONG     BugCheckCode;
  ULONG_PTR Address;
  ULONG_PTR Count;
} KBUGCHECK_ADD_PAGES, *PKBUGCHECK_ADD_PAGES;

Membros

Context

Contém dados de contexto privados para o uso exclusivo da rotina de retorno de chamada. A rotina de retorno de chamada pode definir esse membro como qualquer valor. Normalmente, se a rotina de retorno de chamada precisar ser chamada mais de uma vez, a rotina definirá esse membro para apontar para um buffer fornecido pelo driver durante a chamada inicial. Durante as chamadas subsequentes, a rotina de retorno de chamada pode ler o conteúdo anterior desse buffer e atualizar seu conteúdo. Antes da chamada inicial para a rotina de retorno de chamada, de contexto é NULL.

Flags

Contém sinalizadores que descrevem a solicitação de página de adição. A rotina de retorno de chamada deve definir o valor desse membro. Defina esse membro como OR bit a bit de um ou mais dos seguintes bits de sinalizador:

KB_ADD_PAGES_FLAG_VIRTUAL_ADDRESS

Indica que o membro endereço contém um endereço virtual.

KB_ADD_PAGES_FLAG_PHYSICAL_ADDRESS

Indica que o membro endereço contém um endereço físico.

KB_ADD_PAGES_FLAG_ADDITIONAL_RANGES_EXIST

Indica que a rotina de retorno de chamada solicita que ela seja chamada novamente para que possa adicionar mais páginas.

A rotina de retorno de chamada deve definir o sinalizador KB_ADD_PAGES_FLAG_VIRTUAL_ADDRESS ou o sinalizador KB_ADD_PAGES_FLAG_PHYSICAL_ADDRESS, mas não ambos. Na entrada para a rotina de retorno de chamada, sinalizadores é inicializado como zero.

BugCheckCode

Contém um código de verificação de bug, que especifica o motivo da verificação de bugs. A rotina de retorno de chamada pode usar essas informações para decidir se deseja adicionar páginas ao arquivo de despejo de memória. Para obter uma lista completa de códigos de verificação de bugs, consulte o arquivo de cabeçalho Bugcodes.h incluído no WDK.

Address

Especifica o endereço físico ou virtual da página ou páginas que as solicitações de rotina de retorno de chamada serão adicionadas ao arquivo de despejo de memória.

Count

Especifica o número de páginas contíguas a serem adicionadas ao arquivo de despejo de falha, começando pelo endereço virtual ou físico especificado pelo Address membro. Se Count> 1 e Address for um endereço virtual, as páginas serão contíguas no espaço de memória virtual. Se Count> 1 e Address for um endereço físico, as páginas serão contíguas no espaço de memória física. A rotina de retorno de chamada pode definir esse membro como zero para indicar que ele não precisa adicionar nenhuma página ao arquivo de despejo de memória.

Observações

Em uma chamada para a rotina de retorno de chamada KbCallbackAddPages, o sistema operacional define o parâmetro Reason como KbCallbackAddPages e define o parâmetro ReasonSpecificData para apontar para uma estrutura KBUGCHECK_ADD_PAGES.

Para obter mais informações sobre como essa estrutura é usada, consulte Escrevendo um de rotina de retorno de chamada de verificação de bugs e KBUGCHECK_REASON_CALLBACK_ROUTINE função de retorno de chamada.

Requisitos

Requisito Valor
de cliente com suporte mínimo Com suporte no Windows Server 2008 e versões posteriores do Windows.
cabeçalho wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)

Consulte também

gravando uma rotina de retorno de chamada de verificação de bugs.