Правило UsbKmdfIrql2 (kmdf)

Правило UsbKmdfIrql2 указывает, что драйвер KMDF не должен вызывать DDIs, относящиеся к USB, на неправильном уровне IRQL.

Модель драйвера: KMDF

Как тестировать

Во время компиляции

Запустите средство проверки статических драйверов и укажите правило UsbKmdfIrql2 .

Чтобы выполнить анализ кода, выполните следующие действия.
  1. Подготовьте код (используйте объявления типов ролей).
  2. Запустите средство проверки статических драйверов.
  3. Просмотр и анализ результатов.

Дополнительные сведения см. в статье Использование средства проверки статических драйверов для поиска дефектов в драйверах.

Применяется к

WdfUsbInterfaceGetConfiguredPipe
WdfUsbInterfaceGetConfiguredSettingIndex
WdfUsbInterfaceGetDescriptor
WdfUsbInterfaceGetEndpointInformation
WdfUsbInterfaceGetInterfaceNumber
WdfUsbInterfaceGetNumConfiguredPipes
WdfUsbInterfaceGetNumEndpoints
WdfUsbInterfaceGetNumSettings
WdfUsbInterfaceSelectSetting
WdfUsbTargetDeviceAllocAndQueryString
WdfUsbTargetDeviceCreate
WdfUsbTargetDeviceCyclePortSynchronously
WdfUsbTargetDeviceFormatRequestForControlTransfer
WdfUsbTargetDeviceFormatRequestForCyclePort
WdfUsbTargetDeviceFormatRequestForString
WdfUsbTargetDeviceFormatRequestForUrb
WdfUsbTargetDeviceGetDeviceDescriptor
WdfUsbTargetDeviceGetInterface
WdfUsbTargetDeviceGetNumInterfaces
WdfUsbTargetDeviceIsConnectedSynchronous
WdfUsbTargetDeviceQueryString
WdfUsbTargetDeviceResetPortSynchronously
WdfUsbTargetDeviceRetrieveConfigDescriptor
WdfUsbTargetDeviceRetrieveCurrentFrameNumber
WdfUsbTargetDeviceRetrieveInformation
WdfUsbTargetDeviceSelectConfig
WdfUsbTargetDeviceSendControlTransferSynchronously
WdfUsbTargetDeviceSendUrbSynchronously
WdfUsbTargetDeviceWdmGetConfigurationHandle
WdfUsbTargetPipeAbortSynchronously
WdfUsbTargetPipeConfigContinuousReader
WdfUsbTargetPipeFormatRequestForAbort
WdfUsbTargetPipeFormatRequestForRead
WdfUsbTargetPipeFormatRequestForReset
WdfUsbTargetPipeFormatRequestForUrb
WdfUsbTargetPipeFormatRequestForWrite
WdfUsbTargetPipeGetInformation
WdfUsbTargetPipeGetType
WdfUsbTargetPipeIsInEndpoint
WdfUsbTargetPipeIsOutEndpoint
WdfUsbTargetPipeReadSynchronously
WdfUsbTargetPipeResetSynchronously
WdfUsbTargetPipeSendUrbSynchronously
WdfUsbTargetPipeSetNoMaximumPacketSizeCheck
WdfUsbTargetPipeWdmGetPipeHandle
WdfUsbTargetPipeWriteSynchronously