Compartilhar via


0xC4 de Verificação de Bugs: DRIVER_VERIFIER_DETECTED_VIOLATION

A marcar de bugs DRIVER_VERIFIER_DETECTED_VIOLATION tem um valor de 0x000000C4. Esse é o bug geral marcar código para erros fatais encontrados pelo Verificador de Driver. Para obter mais informações, consulte Manipulando uma verificação de bugs quando o verificador de driver está habilitado.

Importante

Este artigo é para programadores. Se você for um cliente que recebeu um código de erro de tela azul ao usar o computador, consulte Solucionar erros de tela azul.

Parâmetros de DRIVER_VERIFIER_DETECTED_VIOLATION

O parâmetro 1 identifica o tipo de violação. O significado dos parâmetros restantes varia de acordo com o valor do Parâmetro 1. Os valores de parâmetro são descritos na tabela a seguir.

Nota Se você tiver problemas para exibir todas as cinco colunas nesta tabela, tente o seguinte:

  • Expanda a janela do navegador para o tamanho total.
  • Coloque o cursor na tabela e use as teclas de direção para rolar para a esquerda e para a direita.

0x00 0x70

Parâmetro 1 Parâmetro 2 Parâmetro 3 Parâmetro 4 Causa do erro
0x00 IRQL atual Tipo de pool Número de bytes O driver solicitou uma alocação de pool de bytes zero.
0x01 IRQL atual Tipo de pool Tamanho da alocação, em bytes O driver tentou alocar memória paginada com APC_LEVEL IRQL > .
0x02 IRQL atual Tipo de pool Tamanho da alocação, em bytes O driver tentou alocar memória nãopagada com DISPATCH_LEVEL IRQL > .
0x03 O chamador está tentando alocar mais de uma página do deve ter êxito no pool, mas uma página é o máximo permitido por essa API.
0x10 Endereço inválido 0 0 O driver tentou liberar um endereço que não foi retornado de uma chamada alocada.
0x11 IRQL atual Tipo de pool Endereço do pool O driver tentou liberar o pool de páginas com APC_LEVEL IRQL > .
0x12 IRQL atual Tipo de pool Endereço do pool O driver tentou liberar o pool nãopagado com DISPATCH_LEVEL IRQL > .
0x13 ou 0x14 Reservado Ponteiro para o cabeçalho do pool Conteúdo do cabeçalho do pool O driver tentou liberar o pool de memória que já foi liberado.
0x15 Entrada do temporizador Tipo de pool Endereço do pool sendo liberado O pool que o chamador está tentando liberar contém um temporizador ativo.
0x16 Reservado Endereço do pool 0 O driver tentou liberar o pool em um endereço incorreto ou o driver passou parâmetros inválidos para uma rotina de memória.
0X17 Entrada de recurso Tipo de pool Endereço do pool sendo liberado O pool que o chamador está tentando liberar contém um ERESOURCE ativo.
0x30 IRQL atual IRQL solicitado 0 O driver passou um parâmetro inválido para KeRaiseIrql. (O parâmetro era um valor menor que o IRQL atual ou um valor maior que HIGH_LEVEL. Isso pode ser o resultado do uso de um parâmetro não inicializado.)
0x31 IRQL atual IRQL solicitado 0: Novo IRQL é ruim 1: o novo IRQL é inválido dentro de uma rotina de DPC O driver passou um parâmetro inválido para KeLowerIrql. (O parâmetro era um valor maior que o IRQL atual ou um valor maior que HIGH_LEVEL. Isso pode ser o resultado do uso de um parâmetro não inicializado.)
0x32 IRQL atual Endereço de bloqueio de rotação 0 O driver chamou KeReleaseSpinLock em um IRQL diferente de DISPATCH_LEVEL. (Isso pode ser devido a uma versão dupla de um bloqueio de rotação.)
0x33 IRQL atual Endereço mutex rápido 0 O driver tentou adquirir mutex rápido com APC_LEVEL IRQL > .
0x34 IRQL atual Contagem de desabilitação do Thread APC Endereço mutex rápido O driver tentou liberar mutex rápido em um IRQL diferente de APC_LEVEL.
0x35 IRQL atual Endereço de bloqueio de rotação IRQL antigo O kernel liberou um bloqueio de rotação com IRQL não igual a DISPATCH_LEVEL.
0x36 IRQL atual Número do bloqueio de rotação IRQL antigo O kernel liberou um bloqueio de rotação enfileirado com IRQL não igual a DISPATCH_LEVEL.
0x37 IRQL atual Contagem de desabilitação do Thread APC Recurso O driver tentou adquirir um recurso, mas as APCs não estão desabilitadas.
0x38 IRQL atual Contagem de desabilitação do Thread APC Recurso O driver tentou liberar um recurso, mas as APCs não estão desabilitadas.
0x39 IRQL atual Contagem de desabilitação do Thread APC Mutex O driver tentou adquirir um mutex "inseguro" com IRQL não igual a APC_LEVEL na entrada.
0x3A IRQL atual Contagem de desabilitação do Thread APC Mutex O driver tentou liberar um mutex "inseguro" com IRQL não igual a APC_LEVEL na entrada.
0x3B IRQL atual Objeto para aguardar Parâmetro de tempo limite A rotina KeWaitXxx está sendo chamada em DISPATCH_LEVEL ou superior.
0x3C Identificador passado para a rotina Tipo de objeto 0 O driver chamado ObReferenceObjectByHandle com uma alça incorreta.
0x3D 0 0 Endereço do recurso inválido O driver passou um recurso inválido (desalinhado) para ExAcquireResourceExclusive.
0x3E 0 0 0 O driver chamado KeLeaveCriticalRegion para um thread que não está atualmente em uma região crítica.
0x3F Endereço do objeto Nova contagem de referência de objeto. -1: caso de desreferência 1: caso de referência 0 O driver aplicou ObReferenceObject a um objeto que tem uma contagem de referência de zero ou o driver aplicou ObDereferenceObject a um objeto que tem uma contagem de referência de zero.
0x40 IRQL atual Endereço de bloqueio de rotação 0 O driver chamado KeAcquireSpinLockAtDpcLevel com IRQL < DISPATCH_LEVEL.
0x41 IRQL atual Endereço de bloqueio de rotação 0 O driver chamado KeReleaseSpinLockFromDpcLevel com IRQL < DISPATCH_LEVEL.
0x42 IRQL atual Endereço de bloqueio de rotação 0 O driver chamado KeAcquireSpinLock com IRQL > DISPATCH_LEVEL.
0x51 Endereço base da alocação Endereço da referência além da alocação Número de bytes cobrados O driver tentou liberar memória depois de ter gravado após o final da alocação. Um bug marcar com esse parâmetro ocorre somente quando a opção De rastreamento de pool do Verificador de Driver está ativa.
0x52 Endereço base da alocação Entrada de hash Número de bytes cobrados O driver tentou liberar memória depois de ter gravado após o final da alocação. Um bug marcar com esse parâmetro ocorre somente quando a opção De rastreamento de pool do Verificador de Driver está ativa.
0x53 Endereço base da alocação parâmetro Reservado O driver tentou liberar memória depois de ter gravado após o final da alocação. Um bug marcar com esse parâmetro ocorre somente quando a opção De rastreamento de pool do Verificador de Driver está ativa.
0x54 Endereço base da alocação Reservado Tamanho do hash do pool O driver tentou liberar memória depois de ter gravado após o final da alocação. Um bug marcar com esse parâmetro ocorre somente quando a opção De rastreamento de pool do Verificador de Driver está ativa.
0x59 Endereço base da alocação Listindex Reservado O driver tentou liberar memória depois de ter gravado após o final da alocação. Um bug marcar com esse parâmetro ocorre somente quando a opção De rastreamento de pool do Verificador de Driver está ativa.
0x60 Bytes alocados do pool de páginas Bytes alocados do pool nãopagado Número total de alocações que não foram liberadas O driver está descarregando sem primeiro liberar suas alocações de pool. Um bug marcar com esse parâmetro ocorre somente quando a opção De rastreamento de pool do Verificador de Driver está ativa.
0x61 Bytes alocados do pool de páginas Bytes alocados do pool nãopagado Número total de alocações que não foram liberadas Um thread de driver está tentando alocar memória do pool enquanto o driver está descarregando. Um bug marcar com esse parâmetro ocorre somente quando a opção De rastreamento de pool do Verificador de Driver está ativa.
0x62 Nome do driver Reservado Número total de alocações que não foram liberadas, incluindo pool paginado e nãopagado O driver está descarregando sem primeiro liberar suas alocações de pool. Um bug marcar com esse parâmetro ocorre somente quando a opção De rastreamento de pool do Verificador de Driver está ativa. Digite !verifier 3 drivername.sys para obter informações sobre as alocações que vazaram que causaram a verificação de bugs.
0x6F Endereço MDL Página física sendo bloqueada Página física mais alta do sistema MmProbeAndLockPages chamado em páginas que não estão no banco de dados PFN. Normalmente, esse é um driver que chama essa rotina para bloquear sua própria RAM de dualport privado. Isso não só não é necessário, como também pode corromper a memória em computadores com RAM física não contígua.

0x70 0x91

Parâmetro 1 Parâmetro 2 Parâmetro 3 Parâmetro 4 Causa do erro
0x70 IRQL atual Endereço MDL Modo de acesso O driver chamado MmProbeAndLockPages com DISPATCH_LEVEL IRQL > .
0x71 IRQL atual Endereço MDL Endereço do processo O driver chamado MmProbeAndLockProcessPages com DISPATCH_LEVEL IRQL > .
0x72 IRQL atual Endereço MDL Endereço do processo O driver chamado MmProbeAndLockSelectedPages com DISPATCH_LEVEL IRQL > .
0x73 IRQL atual No Windows de 32 bits: 32 bits baixos do endereço físico no Windows de 64 bits: o endereço físico de 64 bits Número de bytes O driver chamado MmMapIoSpace com IRQL > DISPATCH_LEVEL.
0x74 IRQL atual Endereço MDL Modo de acesso O driver chamado MmMapLockedPages no modo kernel com IRQL > DISPATCH_LEVEL.
0x75 IRQL atual Endereço MDL Modo de acesso O driver chamado MmMapLockedPages no modo de usuário com IRQL > APC_LEVEL.
0x76 IRQL atual Endereço MDL Modo de acesso O driver chamado MmMapLockedPagesSpecifyCache no modo kernel com IRQL > DISPATCH_LEVEL.
0x77 IRQL atual Endereço MDL Modo de acesso O driver chamado MmMapLockedPagesSpecifyCache no modo de usuário com IRQL > APC_LEVEL.
0x78 IRQL atual Endereço MDL 0 O driver chamado MmUnlockPages com IRQL > DISPATCH_LEVEL.
0x79 IRQL atual Endereço virtual não mapeado Endereço MDL O driver chamado MmUnmapLockedPages no modo kernel com IRQL > DISPATCH_LEVEL.
0x7A IRQL atual Endereço virtual não mapeado Endereço MDL O driver chamado MmUnmapLockedPages no modo de usuário com IRQL > APC_LEVEL.
0x7B IRQL atual Endereço virtual não mapeado Número de bytes O driver chamado MmUnmapIoSpace com APC_LEVEL IRQL > .
0x7C Endereço MDL Sinalizadores MDL 0 O driver chamou MmUnlockPages e passou um MDL cujas páginas nunca foram bloqueadas com êxito.
0x7D Endereço MDL Sinalizadores MDL 0 O driver chamado MmUnlockPages passou um MDL cujas páginas são do pool nãopagado. (Eles nunca devem ser desbloqueados.)
0x7E IRQL atual DISPATCH_LEVEL 0 O driver chamado MmAllocatePagesForMdl, MmAllocatePagesForMdlEx ou MmFreePagesFromMdl com IRQL > DISPATCH_LEVEL.
0x7F IRQL atual Endereço MDL Sinalizadores MDL O driver chamado BuildMdlForNonPagedPool passou um MDL cujas páginas são do pool paginado.
0x80 IRQL atual Endereço do evento 0 O driver chamado KeSetEvent com DISPATCH_LEVEL IRQL > .
0x81 Endereço MDL Sinalizadores MDL 0 O driver chamado MmMapLockedPages. (Em vez disso, você deve usar MmMapLockedPagesSpecifyCache , com o parâmetro BugCheckOnFailure definido como FALSE.)
0x82 Endereço MDL Sinalizadores MDL 0 O driver chamado MmMapLockedPagesSpecifyCache com o parâmetro BugCheckOnFailure igual a TRUE. (Esse parâmetro deve ser definido como FALSE.)
0x83 Início do intervalo de endereços físicos a ser mapeado Número de bytes a serem mapeados Número do primeiro quadro de página que não está bloqueado O driver chamado MmMapIoSpace sem ter bloqueado as páginas MDL. As páginas físicas representadas pelo intervalo de endereços físicos que está sendo mapeado devem ter sido bloqueadas antes de fazer essa chamada.
0x85 Endereço MDL Número de páginas a serem mapeadas Número do primeiro quadro de página que não está bloqueado O driver chamado MmMapLockedPages sem ter bloqueado as páginas MDL.
0x89 Endereço MDL Ponteiro para a página que não é de memória no MDL O número da página sem memória no MDL Um MDL não está marcado como "E/S", mas contém endereços de página que não são de memória.
0x91 Reservado Reservado Reservado O driver alternou as pilhas usando um método que não é compatível com o sistema operacional. A única maneira com suporte para estender uma pilha de modo kernel é usando KeExpandKernelStackAndCallout.

0xA0 para 0x140

Parâmetro 1 Parâmetro 2 Parâmetro 3 Parâmetro 4 Causa do erro
0xA0 Ponteiro para o IRP que está fazendo a solicitação de leitura ou gravação Objeto device do dispositivo inferior Número do setor no qual o erro foi detectado Um erro de CRC (marcar de redundância cíclica) foi detectado em um disco rígido. Um bug marcar com esse parâmetro ocorre somente quando a opção Verificação de Integridade do Disco do Verificador de Driver está ativa.
0xA1 Cópia do IRP que está fazendo a solicitação de leitura ou gravação. (O IRP real foi concluído.) Objeto device do dispositivo inferior Número do setor no qual o erro foi detectado Um erro de CRC foi detectado em um setor (de forma assíncrona). Um bug marcar com esse parâmetro ocorre somente quando a opção Verificação de Integridade do Disco do Verificador de Driver está ativa.
0xA2 IRP fazendo a solicitação de leitura ou gravação ou uma cópia desse IRP Objeto device do dispositivo inferior Número do setor no qual o erro foi detectado As cópias da soma de verificação do CRCDISK não correspondem. Isso pode ser um erro de paginação. Um bug marcar com esse parâmetro ocorre somente quando a opção Verificação de Integridade do Disco do Verificador de Driver está ativa.
0xB0 Endereço MDL Sinalizadores MDL Sinalizadores MDL incorretos O driver chamado MmProbeAndLockPages para um MDL com sinalizadores incorretos. Por exemplo, o driver passou um MDL criado por MmBuildMdlForNonPagedPool para MmProbeAndLockPages.
0xB1 Endereço MDL Sinalizadores MDL Sinalizadores MDL incorretos O driver chamado MmProbeAndLockProcessPages para um MDL com sinalizadores incorretos. Por exemplo, o driver passou um MDL criado por MmBuildMdlForNonPagedPool para MmProbeAndLockProcessPages.
0xB2 Endereço MDL Sinalizadores MDL Sinalizadores MDL incorretos O driver chamado MmMapLockedPages para um MDL com sinalizadores incorretos. Por exemplo, o driver passou um MDL que já está mapeado para um endereço do sistema ou que não foi bloqueado para MmMapLockedPages.
0xB3 Endereço MDL Sinalizadores MDL Sinalizadores MDL ausentes (pelo menos um era esperado) O driver chamado MmMapLockedPages para um MDL com sinalizadores incorretos. Por exemplo, o driver passou um MDL que não está bloqueado para MmMapLockedPages.
0xB4 Endereço MDL Sinalizadores MDL Sinalizador MDL parcial inesperado O driver chamado MmUnlockPages para um MDL parcial. Um MDL parcial é aquele que foi criado por IoBuildPartialMdl.
0xB5 Endereço MDL Sinalizadores MDL Sinalizador MDL parcial inesperado MmUnmapLockedPages chamado em um MDL parcial (criado com IoBuildPartialMdl).
0xB6 Endereço MDL Sinalizadores MDL Sinalizador MDL ausente MmUnmapLockedPages chamado em um MDL que não está mapeado para um endereço do sistema.
0xB7 Número de páginas físicas corrompidas. Primeira página física corrompida. Última página física corrompida. O BIOS do sistema corrompeu pouca memória física durante uma transição de suspensão.
0xB8 Endereço MDL Sinalizadores MDL Reservado As páginas descritas pelo MDL ainda são mapeadas. O driver deve desmapear as páginas antes de chamar IoFreeMdl.
0xB9 Endereço não mapeado. Endereço MDL. Reservado MmUnmapLockedPages chamado com um endereço de espaço de usuário inválido.
0xC0 Endereço do IRP 0 Reservado O driver chamado IoCallDriver com interrupções desabilitadas.
0xC1 Endereço da rotina de expedição do driver Reservado Reservado Uma rotina de expedição de driver foi retornada com interrupções desabilitadas.
0xC2 0 0 0 O driver chamou uma rotina de expedição de E/S rápida depois que as interrupções foram desabilitadas.
0xC3 Endereço da rotina de expedição de E/S rápida do driver Reservado Reservado Uma rotina de expedição de E/S rápida do driver foi retornada com interrupções desabilitadas.
0xC5 Endereço da rotina de expedição do driver Contagem de desabilitação de APC do thread atual A contagem de desabilitação de APC do thread antes de chamar a rotina de expedição do driver Uma rotina de expedição de driver alterou a contagem de desabilitação de APC do thread. A contagem de desabilitação do APC é decrementada sempre que um driver chama KeEnterCriticalRegion, FsRtlEnterFileSystem ou adquire um mutex. A contagem de desabilitação do APC é incrementada sempre que um driver chama KeLeaveCriticalRegion, KeReleaseMutex ou FsRtlExitFileSystem. Como essas chamadas devem estar sempre em pares, a contagem de desabilitação de APC deve ser zero sempre que um thread for encerrado. Um valor negativo indica que um driver desabilitou chamadas APC sem habilitá-las novamente. Um valor positivo indica que o inverso é verdadeiro.
0xC6 Endereço da rotina de expedição de E/S rápida do driver Contagem de desabilitação de APC do thread atual A contagem de desabilitação de APC do thread antes de chamar a rotina de expedição de driver de E/S rápida Uma rotina de expedição de E/S rápida do driver alterou a contagem de desabilitação de APC do thread. A contagem de desabilitação do APC é decrementada sempre que um driver chama KeEnterCriticalRegion, FsRtlEnterFileSystem ou adquire um mutex. A contagem de desabilitação do APC é incrementada sempre que um driver chama KeLeaveCriticalRegion, KeReleaseMutex ou FsRtlExitFileSystem. Como essas chamadas devem estar sempre em pares, a contagem de desabilitação de APC deve ser zero sempre que um thread for encerrado. Um valor negativo indica que um driver desabilitou chamadas APC sem habilitá-las novamente. Um valor positivo indica que o inverso é verdadeiro.
0xCA Endereço da lista lookaside Reservado Reservado O driver tentou inicializar novamente uma lista lookaside.
0xCB Endereço da lista lookaside Reservado Reservado O driver tentou excluir uma lista lookaside não inicializada.
0xCC Endereço da lista lookaside Endereço inicial da alocação do pool Tamanho da alocação do pool O driver tentou liberar uma alocação de pool que contém uma lista lookaside ativa.
0xCD Endereço da lista lookaside Tamanho do bloco especificado pelo chamador Tamanho mínimo do bloco com suporte O driver tentou criar uma lista lookaside com um tamanho de bloco de alocação muito pequeno.
0xD0 Endereço da estrutura ERESOURCE Reservado Reservado O driver tentou inicializar novamente uma estrutura ERESOURCE.
0xD1 Endereço da estrutura ERESOURCE Reservado Reservado O driver tentou excluir uma estrutura ERESOURCE não inicializada.
0xD2 Endereço da estrutura ERESOURCE Endereço inicial da alocação do pool Tamanho da alocação do pool O driver tentou liberar uma alocação de pool que contém uma estrutura ERESOURCE ativa.
0xD5 Endereço da estrutura de IO_REMOVE_LOCK criada pela versão de build verificada do driver Marca IoReleaseRemoveLock atual Reservado A marca IoReleaseRemoveLock atual não corresponde à marca IoAcquireRemoveLock anterior. Se o driver que chama IoReleaseRemoveLock não estiver em um build verificado, o Parâmetro 2 será o endereço da estrutura de IO_REMOVE_LOCK de sombra criada pelo Verificador de Driver em nome do driver. Nesse caso, o endereço da estrutura de IO_REMOVE_LOCK usada pelo driver não é usado, pois o Verificador de Driver está substituindo o endereço de bloqueio para todas as APIs de bloqueio de remoção. Um bug marcar com esse parâmetro ocorre somente quando a opção Verificação de E/S do Verificador de Driver está ativa.
0xD6 Endereço da estrutura de IO_REMOVE_LOCK criada pela versão de build verificada do driver Marca que não corresponde à marca IoAcquireRemoveLock anterior Marca IoAcquireRemoveLock anterior A marca IoReleaseRemoveLockAndWait atual não corresponde à marca IoAcquireRemoveLock anterior. Se o driver que chama IoReleaseRemoveLock não for um build verificado, o Parâmetro 2 será o endereço da estrutura de IO_REMOVE_LOCK de sombra criada pelo Verificador de Driver em nome do driver. Nesse caso, o endereço da estrutura de IO_REMOVE_LOCK usada pelo driver não é usado, pois o Verificador de Driver está substituindo o endereço de bloqueio para todas as APIs de bloqueio de remoção. Um bug marcar com esse parâmetro ocorre somente quando a opção Verificação de E/S do Verificador de Driver está ativa.
0xD7 Endereço do build verificado Remover estrutura de bloqueio que é usada internamente pelo Verificador de Driver Endereço da estrutura Remover Bloqueio especificada pelo driver Reservado Um Remove Lock não pode ser inicializado novamente, mesmo depois de chamar IoReleaseRemoveLockAndWait, porque outros threads ainda podem estar usando esse bloqueio (chamando IoAcquireRemoveLock). O driver deve alocar o Remove Lock dentro de sua extensão de dispositivo e inicializá-lo uma única vez. O bloqueio será excluído junto com a extensão do dispositivo.
0xDA Endereço inicial do driver Endereço de retorno de chamada WMI dentro do driver Reservado Foi feita uma tentativa de descarregar um driver que não registrou sua função de retorno de chamada WMI.
0xDB Endereço do objeto do dispositivo Reservado Reservado Foi feita uma tentativa de excluir um objeto de dispositivo que não foi desregistrado do WMI.
0xDC Reservado Reservado Reservado Um valor RegHandle inválido foi especificado como um parâmetro da função EtwUnregister.
0xDD Endereço da chamada para EtwRegister Endereço inicial do driver de descarregamento Para Windows 8 e versões posteriores, esse parâmetro é o valor RegHandle do ETW. Foi feita uma tentativa de descarregar um driver sem chamar EtwUnregister.
0xDF Endereço do objeto de sincronização 0 0 O objeto de sincronização está no espaço de endereço da sessão. Objetos de sincronização não são permitidos no espaço de endereço de sessão porque podem ser manipulados de outra sessão ou de threads do sistema que não têm espaço de endereço virtual de sessão.
0xE0 Endereço do modo de usuário usado como parâmetro Tamanho , em bytes, do intervalo de endereços usado como parâmetro Reservado Uma chamada foi feita para uma função de kernel do sistema operacional que especificou um endereço de modo de usuário como um parâmetro.
0xE1 Endereço do objeto de sincronização Reservado Reservado Um objeto de sincronização foi encontrado com um endereço inválido ou paginável.
0xE2 Endereço do IRP Endereço do modo de usuário presente no IRP Reservado Um IRP com Irp-RequestorMode> definido como KernelMode foi encontrado com um endereço no modo de usuário como um de seus membros.
0xE3 Endereço da chamada para a API Endereço do modo de usuário usado como parâmetro na API Reservado Um driver fez uma chamada para uma rotina ZwXxx no modo kernel com um endereço de modo de usuário como parâmetro.
0xE4 Endereço da chamada para a API Endereço da estrutura de UNICODE_STRING malformada Reservado Um driver fez uma chamada para uma rotina ZwXxx no modo kernel com uma estrutura de UNICODE_STRING malformada como um parâmetro.
0xE5 IRQL atual Reservado Reservado Uma chamada foi feita para uma API do Kernel no IRQL incorreto.
0xE6 Endereço dentro do driver que está fazendo a chamada à API do Zw IRQL atual APCs de kernel especiais. A API do Kernel Zw não foi chamada em IRQL = PASSIVE_LEVEL e com APCs de kernel especiais habilitadas.
0xEA IRQL atual Contagem de desabilitação de APC do thread Endereço do pushlock Um driver tentou adquirir um pushlock enquanto as APCs estão habilitadas.
0xEB IRQL atual Contagem de desabilitação de APC do thread Endereço do pushlock Um driver tentou liberar um pushlock enquanto as APCs estão habilitadas.
0xF0 Endereço do buffer de destino Endereço do buffer de origem Número de bytes a serem copiados Um driver chamado função memcpy com buffers de origem e destino sobrepostos.
0xF5 Endereço do identificador NULL Tipo de objeto Reservado Um driver passou um identificador NULL para ObReferenceObjectByHandle.
0xF6 Identificador do valor que está sendo referenciado Endereço do processo atual Endereço dentro do driver que executa a referência incorreta Um driver faz referência a um identificador de modo de usuário como modo kernel.
0xF7 Manipular o valor especificado pelo chamador Tipo de objeto especificado pelo chamador AccessMode especificado pelo chamador Um driver está tentando uma referência de modo de usuário para um identificador de kernel no contexto do processo do sistema.
0xFA Endereço de rotina de conclusão. Valor IRQL antes de chamar a rotina de conclusão Valor IRQL atual, depois de chamar a rotina de conclusão A rotina de conclusão do IRP retornada em um IRQL que era diferente do IRQL em que a rotina era chamada.
0xFB Endereço de rotina de conclusão Contagem de desabilitação de APC do thread atual A contagem de desabilitação do APC do thread antes de chamar a rotina de conclusão do IRP A contagem de desabilitação do APC do thread foi alterada pela rotina de conclusão do IRP do driver. A contagem de desabilitação do APC é decrementada sempre que um driver chama KeEnterCriticalRegion, FsRtlEnterFileSystem ou adquire um mutex. A contagem de desabilitação do APC é incrementada sempre que um driver chama KeLeaveCriticalRegion, KeReleaseMutex ou FsRtlExitFileSystem. Como essas chamadas devem estar sempre em pares, a contagem de desabilitação de APC deve ser zero sempre que um thread for encerrado. Um valor negativo indica que um driver desabilitou chamadas APC sem habilitá-las novamente. Um valor positivo indica que o inverso é verdadeiro.
0xFC Endereço dentro do driver que está fazendo a chamada à API incorreta. Valor ApcContext fornecido. Reservado Chamando ZwNotifyChangeKey (do modo kernel) com valor ApcContext sem suporte.

0x105 para 0x140

Parâmetro 1 Parâmetro 2 Parâmetro 3 Parâmetro 4 Causa do erro
0x105 Endereço do IRP 0 0 O driver usa ExFreePool em vez de IoFreeIrp para liberar o IRP.
0x10A 0 0 0 O driver tenta cobrar a cota do pool para o processo ocioso.
0x10B 0 0 0 O driver tenta cobrar a cota do pool de uma rotina DPC. Isso está incorreto porque o contexto do processo atual é indefinido.
0x110 Endereço da Rotina de Serviço de Interrupção Endereço do contexto estendido que foi salvo antes de executar o ISR O endereço do contexto estendido foi salvo depois que ele executou o ISR A ISR (rotina de serviço de interrupção) para o driver corrompeu o contexto de thread estendido.
0x111 Endereço da Rotina de Serviço de Interrupção IRQL antes de executar o ISR IRQL após a execução do ISR A rotina de serviço de interrupção retornou um IRQL alterado.
0x115 O endereço do thread responsável pelo desligamento, que pode estar em deadlock. 0 0 O Verificador de Driver detectou que o sistema demorou mais de 20 minutos e o desligamento não foi concluído.
0x11A IRQL atual 0 0 O driver chama KeEnterCriticalRegion no IRQL > APC_LEVEL.
0x11B IRQL atual 0 0 O driver chama KeLeaveCriticalRegion no IRQL > APC_LEVEL.
0x120 Endereço do valor IRQL Endereço do objeto no qual aguardar Endereço do valor de tempo limite O thread aguarda a DISPATCH_LEVEL IRQL > . Os chamadores de KeWaitForSingleObject ou KeWaitForMultipleObjects devem ser executados em IRQL <= DISPATCH_LEVEL.
0x121 Endereço do valor IRQL Endereço do objeto no qual aguardar Endereço do valor de tempo limite O thread aguarda em IRQL é igual a DISPATCH_LEVEL e o Tempo Limite é NULL. Os chamadores de KeWaitForSingleObject ou KeWaitForMultipleObjects podem ser executados em IRQL <= DISPATCH_LEVEL. Se um ponteiro NULL for fornecido para Timeout, o thread de chamada permanecerá em um estado de espera até que o Objeto seja sinalizado.
0x122 Endereço do valor IRQL Endereço do objeto no qual aguardar Endereço do valor de Tempo Limite O thread aguarda em DISPATCH_LEVEL e o valor de Tempo Limite não é igual a zero (0). Se o Tempo limite != 0, os chamadores de KeWaitForSingleObject ou KeWaitForMultipleObjects deverão ser executados em IRQL <= APC_LEVEL.
0x123 Endereço do objeto no qual aguardar 0 0 O chamador de KeWaitForSingleObject ou KeWaitForMultipleObjects especificou a espera como UserMode, mas o Objeto está na pilha de kernel.
0x130 Endereço do item de trabalho 0 0 O item de trabalho está no espaço de endereço da sessão. Os itens de trabalho não são permitidos no espaço de endereço da sessão porque podem ser manipulados de outra sessão ou de threads do sistema que não têm espaço de endereço virtual de sessão.
0x131 Endereço do item de trabalho 0 0 O item de trabalho está na memória paginável. Os itens de trabalho precisam estar na memória não pageable porque o kernel os usa em DISPATCH_LEVEL.
0x135 Endereço do IRP Número de milissegundos permitido entre a chamada IoCancelIrp e a conclusão desse IRP 0 O IRP cancelado não foi concluído no tempo esperado O driver demorou mais do que o esperado para concluir o IRP cancelado.
0x13A Endereço do bloco de pool que está sendo liberado Valor incorreto Endereço do valor incorreto O driver chamado ExFreePool e Driver Verifier detecta um erro em um dos valores internos usados para acompanhar o uso do pool.
0x13B Endereço do bloco de pool que está sendo liberado Endereço do valor incorreto Endereço de um ponteiro para a página de memória incorreta O driver chamado ExFreePool e Driver Verifier detecta um erro em um dos valores internos usados para acompanhar o uso do pool.
0x13C Endereço do bloco de pool que está sendo liberado Valor incorreto Endereço do valor incorreto O driver chamado ExFreePool e Driver Verifier detecta um erro em um dos valores internos usados para acompanhar o uso do pool.
0x13D Endereço do bloco de pool que está sendo liberado Endereço do valor incorreto Valor correto esperado O driver chamado ExFreePool e Driver Verifier detecta um erro em um dos valores internos usados para acompanhar o uso do pool.
0x13E Endereço de bloco de pool especificado pelo chamador Endereço do bloco do pool rastreado pelo Verificador de Driver Ponteiro para o endereço do bloco do pool que é rastreado pelo Verificador de Driver O endereço de bloco do pool especificado pelo chamador de ExFreePool é diferente do endereço rastreado pelo Verificador de Driver.
0x13F Endereço do bloco de pool que está sendo liberado Número de bytes sendo liberados Ponteiro para o número de bytes rastreados pelo Verificador de Driver O número de bytes de memória que estão sendo liberados na chamada para ExFreePool é diferente do número de bytes rastreados pelo Verificador de Driver.
0x140 IRQL atual Endereço MDL Endereço virtual associado a este MDL Um MDL não bloqueado foi construído a partir de memória paginável ou negociável.
0x141 Endereço físico mais alto que o driver solicitou para alocação Número de bytes a serem alocados 0 O driver está solicitando explicitamente memória física abaixo de 4 GB.

0x1000 para 0x100B - Deadlocks

Parâmetro 1 Parâmetro 2 Parâmetro 3 Parâmetro 4 Causa do erro
0x1000 Endereço do recurso Reservado Reservado Auto deadlock: o thread atual tentou adquirir recursivamente e exclusivamente um recurso que ele possui apenas compartilhado. Um bug marcar com esse parâmetro ocorre somente quando a opção Detecção de Deadlock do Verificador de Driver está ativa.
0x1001 Endereço do recurso que foi a causa final do deadlock Reservado Reservado Deadlock: uma violação de hierarquia de bloqueio foi encontrada. Um bug marcar com esse parâmetro ocorre somente quando a opção Detecção de Deadlock do Verificador de Driver está ativa. (Use a extensão !deadlock para obter mais informações.)
0x1002 Endereço do recurso Reservado Reservado Recurso não inicializado: um recurso foi adquirido sem ter sido inicializado primeiro. Um bug marcar com esse parâmetro ocorre somente quando a opção Detecção de Deadlock do Verificador de Driver está ativa.
0x1003 Endereço do recurso que está sendo liberado em deadlock Endereço do recurso que deveria ter sido liberado primeiro Reservado Versão inesperada: um recurso foi liberado em uma ordem incorreta. Um bug marcar com esse parâmetro ocorre somente quando a opção Detecção de Deadlock do Verificador de Driver está ativa.
0x1004 Endereço do recurso Endereço do thread que adquiriu o recurso Endereço do thread atual Thread inesperado: o thread errado libera um recurso. Um bug marcar com esse parâmetro ocorre somente quando a opção Detecção de Deadlock do Verificador de Driver está ativa.
0x1005 Endereço do recurso Reservado Reservado Inicialização múltipla: um recurso é inicializado mais de uma vez. Um bug marcar com esse parâmetro ocorre somente quando a opção Detecção de Deadlock do Verificador de Driver está ativa.
0x1007 Endereço do recurso Reservado Reservado Recurso não requisito: um recurso é liberado antes de ser adquirido. Um bug marcar com esse parâmetro ocorre somente quando a opção Detecção de Deadlock do Verificador de Driver está ativa.
0x1008 Endereço de bloqueio Reservado Reservado O driver tentou adquirir um bloqueio usando uma API incompatível para esse tipo de bloqueio.
0x1009 Endereço de bloqueio Reservado Reservado O driver tentou liberar um bloqueio usando uma API incompatível para esse tipo de bloqueio.
0x100A Endereço do thread do proprietário Reservado O thread encerrado é o proprietário do bloqueio.
0x100B Endereço de bloqueio Endereço do thread do proprietário Reservado O bloqueio excluído ainda pertence a um thread.
0x1010 Objeto de dispositivo para o qual o IRP de Gravação foi emitido. O endereço do IRP. System-Space Endereço Virtual para o buffer descrito pelo MDL. O conteúdo invariável do buffer MDL para o Irp de Gravação foi modificado.
0x1011 Objeto de dispositivo para o qual o IRP de Gravação foi emitido. O endereço do IRP. System-Space Endereço Virtual para o buffer descrito pelo MDL. O conteúdo invariável do buffer MDL para Irp de Leitura foi modificado durante a expedição ou o buffer apoiado por páginas fictícias.
0x1012 Um ponteiro para a cadeia de caracteres que descreve a violação. Dados envolvidos nessa corrupção (0 se não forem usados). Dados envolvidos nessa corrupção (0 se não forem usados). O armazenamento de estado de extensão do verificador detectou corrupção.
0x1013 Um ponteiro para o objeto de driver. Um ponteiro para os retornos de chamada de E/S originais capturados. Reservado (não utilizado). O verificador detectou corrupção interna nos retornos de chamada de E/S originais capturados.

0x2000 para 0x2005 – Problemas de integridade do código

Parâmetro 1 Parâmetro 2 Parâmetro 3 Parâmetro 4 Causa do erro
0x2000 O endereço no código do driver em que o erro foi detectado. Tipo de pool. Marca de pool (se fornecida). Problema de integridade de código: o chamador especificou um tipo de pool executável. (Esperado: NonPagedPoolNx)
0x2001 O endereço no código do driver em que o erro foi detectado. Proteção de página (WIN32_PROTECTION_MASK). 0 Problema de integridade de código: o chamador especificou uma proteção de página executável. (Esperado: PAGE_EXECUTE* bits limpos)
0x2002 O endereço no código do driver em que o erro foi detectado. Prioridade de página (MM_PAGE_PRIORITY logicamente OR'd com MdlMapping*). 0 Problema de integridade de código: o chamador especificou um mapeamento de MDL executável. (Esperado: MdlMappingNoExecute)
0x2003 O nome do arquivo de imagem (cadeia de caracteres Unicode). O endereço do cabeçalho da seção. O nome da seção (cadeia de caracteres codificada em UTF-8). Problema de integridade de código: a imagem contém uma seção executável e gravável.
0x2004 O nome do arquivo de imagem (cadeia de caracteres Unicode). O endereço do cabeçalho da seção. O nome da seção (cadeia de caracteres codificada em UTF-8). Problema de integridade de código: a imagem contém uma seção que não está alinhada à página.
0x2005 O nome do arquivo de imagem (cadeia de caracteres Unicode). Diretório IAT. O nome da seção (cadeia de caracteres codificada em UTF-8). Problema de integridade do código: a imagem contém um IAT localizado em uma seção executável.

0xA001 para 0xA00D – Problemas de alternância de VM

Parâmetro 1 Parâmetro 2 Parâmetro 3 Parâmetro 4 Causa do erro
0xA001 Um ponteiro para o objeto NetBufferList Um ponteiro para o objeto de comutador virtual (se NÃO NULL) Reservado (não utilizado) Opção de VM: o SourceHandle para o NetBufferList fornecido pelo chamador deve ser definido. Consulte a rotina AllocateNetBufferListForwardingContext .
0xA002 Um ponteiro para o objeto NetBufferList Um ponteiro para o objeto de comutador virtual (se NON-NULL). Reservado (não utilizado) Comutador de VM: o chamador forneceu os detalhes de encaminhamento do NetBufferList não é zero. Consulte a rotina AllocateNetBufferListForwardingContext .
0xA003 Um ponteiro para o objeto NetBufferList Um ponteiro para o objeto de comutador virtual (se NON-NULL). Reservado (não utilizado) Comutador de VM: o chamador forneceu um NetBufferList com um cabeçalho de pacote ou contexto de roteamento que é NULL. Consulte Diretrizes de gerenciamento de pacotes para o caminho de dados de comutador extensível.
0xA004 ID da porta inválida Índice NIC Um ponteiro para o objeto de comutador virtual (se NON-NULL). Comutador de VM: o chamador especificou uma combinação de índice de Porta e NIC inválida. Consulte Estados da porta do comutador extensível do Hyper-V e do adaptador de rede.
0xA005 Um ponteiro para o objeto NetBufferList Um ponteiro para a lista Destino. Um ponteiro para o objeto de comutador virtual (se NON-NULL). Comutador de VM: o chamador forneceu um destino inválido. Consulte AddNetBufferListDestination e UpdateNetBufferListDestinations.
0xA006 Um ponteiro para o objeto NetBufferList Um ponteiro para o objeto de comutador virtual (se NON-NULL). Reservado (não utilizado) Comutador de VM: o chamador forneceu um objeto NIC ou Porta de origem inválido. Consulte Estados da porta do comutador extensível do Hyper-V e do adaptador de rede.
0xA007 Um ponteiro para o objeto NetBufferList Um ponteiro para o objeto de comutador virtual (se NON-NULL). Reservado (não utilizado) Comutador de VM: o chamador forneceu uma lista de destino inválida. Consulte AddNetBufferListDestination e UpdateNetBufferListDestinations.
0xA008 Objeto NIC pai Índice NIC Um ponteiro para o objeto de comutador virtual (se NON-NULL). Comutador de VM: tentando fazer referência a uma NIC quando não é permitido. Consulte Estados da porta do comutador extensível do Hyper-V e do adaptador de rede.
0xA009 Porta sendo referenciada Um ponteiro para o objeto de comutador virtual (se NÃO NULL) Reservado (não utilizado) Comutador de VM: tente fazer referência a uma porta quando não for permitido. Consulte Estados da porta do comutador extensível do Hyper-V e do adaptador de rede.
0xA00A Um ponteiro para o objeto NetBufferList Objeto ContextTypeInfo Reservado (não utilizado) Comutador de VM: o contexto de falha já está definido. Consulte SetNetBufferListSwitchContext.
0xA00B Um ponteiro para o objeto NetBufferList NDIS_SWITCH_REPORT_FILTERED_NBL_FLAGS_* Um ponteiro para o objeto de comutador virtual (se NÃO NULL) Comutador de VM: direção inválida fornecida para NetBufferList descartado. Consulte ReportFilteredNetBufferLists.
0xA00C Um ponteiro para o objeto NetBufferList Valor de Enviar Sinalizadores Um ponteiro para o objeto de comutador virtual (se NÃO NULL) Comutador de VM: a cadeia NetBufferList tem várias portas de origem quando NDIS_SEND_FLAGS_SWITCH_SINGLE_SOURCE sinalizador é definido. Consulte Sinalizadores de envio e recebimento do comutador extensível do Hyper-V.
0xA00D Um ponteiro para o objeto NetBufferList Um ponteiro para o contexto do comutador virtual Um ponteiro para o objeto de comutador virtual (se NÃO NULL) Comutador de VM: um ou mais NetBufferLists na cadeia têm um destino inválido quando NDIS_RECEIVE_FLAGS_SWITCH_DESTINATION_GROUP sinalizador é definido. Consulte Sinalizadores de envio e recebimento do comutador extensível do Hyper-V.
0xA00E Um ponteiro para o objeto NetBufferLists. Um ponteiro para o contexto do comutador virtual. Um ponteiro para o objeto de comutador virtual (se NON-NULL). Comutador de VM: tentando concluir NetBufferList por meio do WNV quando VMS_NBL_ROUTING_CONTEXT_FLAG_NO_WNV_PROCESSING sinalizador estiver definido.

0x00020002 para 0x00020022 – Violações da regra de conformidade da DDI

Parâmetro 1 Parâmetro 2 Parâmetro 3 Parâmetro 4 Causa do erro
0x00020002 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Ponteiro opcional para as variáveis de estado da regra. Reservado O driver violou a regra de conformidade da DDI IrqlApcLte. A regra especifica que o driver deve chamar ObGetObjectSecurity e ObReleaseObjectSecurity somente quando IRQL <= APC_LEVEL.
0x00020003 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Ponteiro opcional para as variáveis de estado da regra. Reservado O driver violou a regra de conformidade da DDI IrqlDispatch. A regra IrqlDispatch especifica que o driver deve chamar determinadas rotinas somente quando IRQL = DISPATCH_LEVEL
0x00020004 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Ponteiro opcional para as variáveis de estado da regra. Reservado O driver violou a regra de conformidade DDI IrqlExAllocatePool. A regra IrqlExAllocatePool especifica que o driver chama ExAllocatePoolWithTag e ExAllocatePoolWithTagPriority somente quando em IRQL<=DISPATCH_LEVEL.
0x00020005 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Ponteiro opcional para as variáveis de estado da regra. Reservado O driver violou a regra de conformidade da DDI IrqlExApcLte1. A regra IrqlExApcLte1 especifica que o driver chama ExAcquireFastMutex e ExTryToAcquireFastMutex apenas em IRQL <= APC_LEVEL.
0x00020006 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Ponteiro opcional para as variáveis de estado da regra. Reservado O driver violou a regra de conformidade da DDI IrqlExApcLte2. A regra IrqlExApcLte2 especifica que o driver chama determinadas rotinas somente quando IRQL <= APC_LEVEL.
0x00020007 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Ponteiro opcional para as variáveis de estado da regra. Reservado O driver violou a regra de conformidade da DDI IrqlExApcLte3. A regra IrqlExApcLte3 especifica que o driver deve chamar determinadas rotinas de suporte executivo somente quando IRQL <= APC_LEVEL.
0x00020008 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Ponteiro opcional para as variáveis de estado da regra. Reservado O driver violou a regra de conformidade da DDI IrqlExPassive. A regra IrqlExPassive especifica que o driver deve chamar determinadas rotinas de suporte executivo somente quando IRQL = PASSIVE_LEVEL.
0x00020009 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Ponteiro opcional para as variáveis de estado da regra. Reservado O driver violou a regra de conformidade da DDI IrqlIoApcLte. A regra IrqlIoApcLte especifica que o driver deve chamar determinadas rotinas de gerente de E/S somente quando IRQL <= APC_LEVEL.
0x0002000A Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Ponteiro opcional para as variáveis de estado da regra. Reservado O driver violou a regra de conformidade da DDI IrqlIoPassive1. A regra IrqlIoPassive1 especifica que o driver deve chamar determinadas rotinas de gerente de E/S somente quando IRQL = PASSIVE_LEVEL.
0x0002000B Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Ponteiro opcional para as variáveis de estado da regra. Reservado O driver violou a regra de conformidade da DDI IrqlIoPassive2. A regra IrqlIoPassive2 especifica que o driver deve chamar determinadas rotinas de gerente de E/S somente quando IRQL = PASSIVE_LEVEL.
0x0002000C Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Ponteiro opcional para as variáveis de estado da regra. Reservado O driver violou a regra de conformidade da DDI IrqlIoPassive3. A regra IrqlIoPassive3 especifica que o driver deve chamar determinadas rotinas de gerente de E/S somente quando IRQL = PASSIVE_LEVEL.
0x0002000D Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Ponteiro opcional para as variáveis de estado da regra. Reservado O driver violou a regra de conformidade da DDI IrqlIoPassive4. A regra IrqlIoPassive4 especifica que o driver deve chamar determinadas rotinas de gerente de E/S somente quando IRQL = PASSIVE_LEVEL.
0x0002000E Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Ponteiro opcional para as variáveis de estado da regra. Reservado O driver violou a regra de conformidade da DDI IrqlIoPassive5. A regra IrqlIoPassive5 especifica que o driver deve chamar determinadas rotinas de gerente de E/S somente quando IRQL = PASSIVE_LEVEL.
0x0002000F Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Ponteiro opcional para as variáveis de estado da regra. Reservado O driver violou a regra de conformidade da DDI IrqlKeApcLte1. A regra IrqlKeApcLte1 especifica que o driver deve chamar determinadas rotinas de kernel somente quando IRQL <= APC_LEVEL.
0x00020010 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Ponteiro opcional para as variáveis de estado da regra. Reservado O driver violou a regra de conformidade da DDI IrqlKeApcLte2. A regra IrqlKeApcLte2 especifica que o driver deve chamar determinadas rotinas de kernel somente quando IRQL <= APC_LEVEL.
0x00020011 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Ponteiro opcional para as variáveis de estado da regra. Reservado O driver violou a regra de conformidade da DDI IrqlKeDispatchLte. A regra IrqlKeDispatchLte especifica que o driver deve chamar determinadas rotinas de kernel somente quando IRQL <= DISPATCH_LEVEL.
0x00020015 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Ponteiro opcional para as variáveis de estado da regra. Reservado O driver violou a regra de conformidade da DDI IrqlKeReleaseSpinLock. A regra IrqlKeReleaseSpinLock especifica que o driver deve chamar KeReleaseSpinLock somente quando IRQL = DISPATCH_LEVEL.
0x00020016 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Ponteiro opcional para as variáveis de estado da regra. Reservado O driver violou a regra de conformidade da DDI IrqlKeSetEvent. A regra IrqlKeSetEvent especifica que a rotina KeSetEvent só é chamada em IRQL <= DISPATCH_LEVEL quando Wait é definido como FALSE e em IRQL <= APC_LEVEL quando Wait é definido como TRUE.
0x00020019 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Ponteiro opcional para as variáveis de estado da regra. Reservado O driver violou a regra de conformidade DDI IrqlMmApcLte. A regra IrqlMmApcLte especifica que o driver deve chamar determinadas rotinas do gerenciador de memória somente quando IRQL <= APC_LEVEL.
0x0002001A Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Ponteiro opcional para as variáveis de estado da regra. Reservado O driver violou a regra de conformidade da DDI IrqlMmDispatch. A regra IrqlMmDispatch especifica que o driver deve chamar MmFreeContiguousMemory somente quando IRQL = DISPATCH_LEVEL.
0x0002001B Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Ponteiro opcional para as variáveis de estado da regra. Reservado O driver violou a regra de conformidade da DDI IrqlObPassive. A regra IrqlObPassive especifica que o driver deve chamar ObReferenceObjectByHandle somente quando IRQL = PASSIVE_LEVEL.
0x0002001C Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Ponteiro opcional para as variáveis de estado da regra. Reservado O driver violou a regra de conformidade da DDI IrqlPsPassive. A regra IrqlPsPassive especifica que o driver deve chamar determinadas rotinas de gerenciador de processos e threads somente quando IRQL = PASSIVE_LEVEL.
0x0002001D Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Endereço do estado da regra interna (segundo argumento para !ruleinfo). Endereço de estados complementares (terceiro argumento para !ruleinfo). O driver violou a regra de conformidade da DDI IrqlReturn.
0x0002001E Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Ponteiro opcional para as variáveis de estado da regra. Reservado O driver violou a regra de conformidade da DDI IrqlRtlPassive. A regra IrqlRtlPassive especifica que o driver deve chamar RtlDeleteRegistryValue somente quando IRQL = PASSIVE_LEVEL.
0x0002001F Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Ponteiro opcional para as variáveis de estado da regra. Reservado O driver violou a regra de conformidade da DDI IrqlZwPassive. A regra IrqlZwPassive especifica que o driver deve chamar ZwClose somente quando IRQL = PASSIVE_LEVEL.
0x00020022 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Reservado (não utilizado) Reservado (não utilizado) O driver violou a regra de conformidade da DDI IrqlIoDispatch.
0x00020023 Um ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Reservado (não utilizado). Reservado (não utilizado). O driver violou a regra de conformidade da DDI IrqlIoRtlZwPassive. A regra IrqlIoRtlZwPassive especifica que o driver chama os DDIs listados na regra somente quando está sendo executado em IRQL = PASSIVE_LEVEL.
0x00020024 Um ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Reservado (não utilizado). Reservado (não utilizado). O driver violou a regra de conformidade da DDI IrqlNtifsApcPassive. A regra IrqlNtifsApcPassive especifica que o driver chama os DDIs listados na regra somente quando está executando em IRQL = PASSIVE_LEVEL ou em IRQL <= APC_LEVEL.
0x00020025 Um ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Reservado (não utilizado). Reservado (não utilizado). O driver violou a regra de conformidade da DDI interna da Microsoft IrqlKeMore.

0x00040003 para 0x00043006 – Violações da regra de conformidade da DDI

Parâmetro 1 Parâmetro 2 Parâmetro 3 Parâmetro 4 Causa do erro
0x00040003 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Endereço do estado da regra interna (segundo argumento para !ruleinfo). Endereço de estados complementares (terceiro argumento para !ruleinfo). O driver violou a regra de conformidade de DDI CriticalRegions.
0x00040006 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Endereço do estado da regra interna (segundo argumento para !ruleinfo). Endereço de estados complementares (terceiro argumento para !ruleinfo). O driver violou a regra de conformidade DDI QueuedSpinLock.
0x00040007 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Endereço do estado da regra interna (segundo argumento para !ruleinfo). Endereço de estados complementares (terceiro argumento para !ruleinfo). O driver violou a regra de conformidade DDI QueuedSpinLockRelease.
0x00040009 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Endereço do estado da regra interna (segundo argumento para !ruleinfo). Endereço de estados complementares (terceiro argumento para !ruleinfo). O driver violou a regra de conformidade DDI SpinLock.
0x0004000A Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Endereço do estado da regra interna (segundo argumento para !ruleinfo) Endereço de estados complementares (terceiro argumento para !ruleinfo). O driver violou a regra de conformidade do DDI SpinlockRelease.
0x0004000E Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Endereço do estado da regra interna (segundo argumento para !ruleinfo). Endereço de estados complementares (terceiro argumento para !ruleinfo). O driver violou a regra de conformidade de DDI GuardedRegions.
0x0004100B Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Reservado (não utilizado) Reservado (não utilizado) O driver violou a regra de conformidade da DDI RequestedPowerIrp.
0x0004100F Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Endereço do estado da regra interna (segundo argumento para !ruleinfo). Endereço de estados complementares (terceiro argumento para !ruleinfo). O driver violou a regra de conformidade da DDI IoSetCompletionExCompleteIrp.
0x00043006 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Reservado (não utilizado) Reservado (não utilizado) O driver violou a regra de conformidade da DDI PnpRemove.

0x00081001 para 0x00082005 – Violações da regra de conformidade do driver AVStream

Parâmetro 1 Parâmetro 2 Parâmetro 3 Parâmetro 4 Causa do erro
0x00081001 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Endereço do estado da regra interna (segundo argumento para !ruleinfo). Endereço de estados complementares (terceiro argumento para !ruleinfo). O driver violou a regra de conformidade do DDI KsDeviceMutex.
0x00081002 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Endereço do estado da regra interna (segundo argumento para !ruleinfo). Endereço de estados complementares (terceiro argumento para !ruleinfo). O driver violou a regra de conformidade do DDI KsStreamPointerClone.
0x00081003 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Reservado (não utilizado) Reservado (não utilizado) O driver violou a regra de conformidade da DDI KsStreamPointerLock.
0x00081004 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Endereço do estado da regra interna (segundo argumento para !ruleinfo). Endereço de estados complementares (terceiro argumento para !ruleinfo). O driver violou a regra de conformidade do DDI KsStreamPointerUnlock.
0x00081005 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Reservado (não utilizado) Reservado (não utilizado) O driver violou a regra de conformidade do DDI KsCallbackReturn.
0x00081006 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Endereço do estado da regra interna (segundo argumento para !ruleinfo). Endereço de estados complementares (terceiro argumento para !ruleinfo). O driver violou a regra de conformidade do DDI KsIrqlDeviceCallbacks.
0x00081007 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Endereço do estado da regra interna (segundo argumento para !ruleinfo). Endereço de estados complementares (terceiro argumento para !ruleinfo). O driver violou a regra de conformidade do DDI KsIrqlFilterCallbacks.
0x00081008 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Endereço do estado da regra interna (segundo argumento para !ruleinfo). Endereço de estados complementares (terceiro argumento para !ruleinfo). O driver violou a regra de conformidade do DDI KsIrqlPinCallbacks.
0x00081009 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Reservado (não utilizado) Reservado (não utilizado) O driver violou a regra de conformidade de DDI KsIrqlDDIs.
0x0008100A Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Endereço do estado da regra interna (segundo argumento para !ruleinfo). Endereço de estados complementares (terceiro argumento para !ruleinfo). O driver violou a regra de conformidade da DDI KsFilterMutex.
0x0008100B Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Endereço do estado da regra interna (segundo argumento para !ruleinfo). Endereço de estados complementares (terceiro argumento para !ruleinfo). O driver violou a regra de conformidade da DDI KsProcessingMutex.
0x0008100C Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Endereço do estado da regra interna (segundo argumento para !ruleinfo). Endereço de estados complementares (terceiro argumento para !ruleinfo). O driver violou a regra de conformidade do DDI KsInvalidStreamPointer.
0x00082001 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Endereço do estado da regra interna (segundo argumento para !ruleinfo). Endereço de estados complementares (terceiro argumento para !ruleinfo). O driver violou a regra de conformidade do DDI KsTimedPinSetDeviceState.
0x00082002 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Endereço do estado da regra interna (segundo argumento para !ruleinfo). Endereço de estados complementares (terceiro argumento para !ruleinfo). O driver violou a regra de conformidade do DDI KsTimedDeviceCallbacks.
0x00082003 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Endereço do estado da regra interna (segundo argumento para !ruleinfo). Endereço de estados complementares (terceiro argumento para !ruleinfo). O driver violou a regra de conformidade da DDI KsTimedFilterCallbacks.
0x00082004 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Endereço do estado da regra interna (segundo argumento para !ruleinfo). Endereço de estados complementares (terceiro argumento para !ruleinfo). O driver violou a regra de conformidade da DDI KsTimedPinCallbacks.
0x00082005 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Endereço do estado da regra interna (segundo argumento para !ruleinfo). Endereço de estados complementares (terceiro argumento para !ruleinfo). O driver violou a regra de conformidade da DDI KsTimedProcessingMutex.

0x00091001 para 0x0009400C – Violações da regra de conformidade da DDI do NDIS

Parâmetro 1 Parâmetro 2 Parâmetro 3 Parâmetro 4 Causa do erro
0x00091001 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Endereço do estado da regra interna (segundo argumento para !ruleinfo). Endereço de estados complementares (terceiro argumento para !ruleinfo). O driver violou a regra de conformidade da DDI NdisOidComplete.
0x00091002 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Endereço do estado da regra interna (segundo argumento para !ruleinfo). Endereço de estados complementares (terceiro argumento para !ruleinfo). O driver violou a regra de conformidade da DDI NdisOidDoubleComplete.
0x0009100E Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Endereço do estado da regra interna (segundo argumento para !ruleinfo). Endereço de estados complementares (terceiro argumento para !ruleinfo). O driver violou a regra de conformidade da DDI NdisOidDoubleRequest.
0x00092003 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Endereço do estado da regra interna (segundo argumento para !ruleinfo). Endereço de estados complementares (terceiro argumento para !ruleinfo). O driver violou a regra de verificação NDIS/WIFI NdisTimedOidComplete.
0x0009200D Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Endereço do estado da regra interna (segundo argumento para !ruleinfo). Endereço de estados complementares (terceiro argumento para !ruleinfo). O driver violou a regra de verificação NDIS/WIFI NdisTimedDataSend.
0x0009200F Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Endereço do estado da regra interna (segundo argumento para !ruleinfo). Endereço de estados complementares (terceiro argumento para !ruleinfo). O driver violou a regra de verificação NDIS/WIFI NdisTimedDataHang.
0x00092010 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Endereço do estado da regra interna (segundo argumento para !ruleinfo). Endereço de estados complementares (terceiro argumento para !ruleinfo). O driver violou a regra de verificação NDIS/WIFI NdisFilterTimedPauseComplete.
0x00092011 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Endereço do estado da regra interna (segundo argumento para !ruleinfo). Endereço de estados complementares (terceiro argumento para !ruleinfo). O driver violou a regra de verificação NDIS/WIFI NdisFilterTimedDataSend.
0x00092012 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Endereço do estado da regra interna (segundo argumento para !ruleinfo). Endereço de estados complementares (terceiro argumento para !ruleinfo). O driver violou a regra de verificação NDIS/WIFI NdisFilterTimedDataReceive.
0x00093004 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Endereço do estado da regra interna (segundo argumento para !ruleinfo). Endereço de estados complementares (terceiro argumento para !ruleinfo). O driver violou a regra de verificação NDIS/WIFI WlanAssociation.
0x00093005 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Endereço do estado da regra interna (segundo argumento para !ruleinfo). Endereço de estados complementares (terceiro argumento para !ruleinfo). O driver violou a regra de verificação NDIS/WIFI WlanConnectionRoaming.
0x00093006 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Endereço do estado da regra interna (segundo argumento para !ruleinfo). Endereço de estados complementares (terceiro argumento para !ruleinfo). O driver violou a regra de verificação NDIS/WIFI WlanDisassociation.
0x00093101 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Reservado (não utilizado) Reservado (não utilizado) O driver violou a regra de verificação NDIS/WIFI WlanAssert.
0x00094007 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Endereço do estado da regra interna (segundo argumento para !ruleinfo). Endereço de estados complementares (terceiro argumento para !ruleinfo). O driver violou a regra de verificação NDIS/WIFI WlanTimedAssociation.
0x00094008 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Endereço do estado da regra interna (segundo argumento para !ruleinfo). Endereço de estados complementares (terceiro argumento para !ruleinfo). O driver violou a regra de verificação NDIS/WIFI WlanTimedConnectionRoaming.
0x00094009 Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Endereço do estado da regra interna (segundo argumento para !ruleinfo). Endereço de estados complementares (terceiro argumento para !ruleinfo). O driver violou a regra de verificação NDIS/WIFI WlanTimedConnectRequest.
0x0009400B Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Endereço do estado da regra interna (segundo argumento para !ruleinfo). Endereço de estados complementares (terceiro argumento para !ruleinfo). O driver violou a regra de verificação NDIS/WIFI WlanTimedLinkQuality.
0x0009400C Ponteiro para a cadeia de caracteres que descreve a condição de regra violada. Endereço do estado da regra interna (segundo argumento para !ruleinfo). Endereço de estados complementares (terceiro argumento para !ruleinfo). O driver violou a regra de verificação NDIS/WIFI WlanTimedScan.

Causa

Consulte a descrição de cada código na seção Parâmetros para obter uma descrição da causa. Mais informações podem ser obtidas usando a extensão !analyze -v .

Resolução

Esse bug marcar só pode ocorrer quando o Verificador de Driver foi instruído a monitorar um ou mais drivers. Se você não pretende usar o Verificador de Driver, desative-o. Você também pode considerar a remoção do driver que causou esse problema.

Se você for o gravador de driver, use as informações obtidas por meio desse bug marcar para corrigir os bugs em seu código.

Para obter detalhes completos sobre o Verificador de Driver, consulte Verificador de Driver.

Comentários

Os códigos _POOL_TYPE são enumerados em Ntddk.h. Em particular, 0 (zero) indica pool nãopagado e 1 (um) indica pool paginado.

(Windows 8 e versões posteriores do Windows) Se a verificação de conformidade de DDI causar um bug marcar, execute o Verificador de Driver Estático no código-fonte do driver e especifique a regra de conformidade da DDI (identificada pelo valor do parâmetro 1) que causou o bug marcar. O Verificador de Driver Estático pode ajudá-lo a localizar a causa do problema no código-fonte.

Confira também

Manipulando uma verificação de bugs quando o verificador de driver está habilitado