Поделиться через


Правило QueuedSpinLockRelease (wdm)

Правило QueuedSpinLockRelease указывает, что вызовы KeAcquireInStackQueuedSpinLock и KeReleaseInStackQueuedSpinLock используются в строгом чередовке.

Кроме того, в конце подпрограммы отправки или отмены драйвер не должен удерживать спин-блокировку в очереди.

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

Проверка ошибок, обнаруженных с помощью этого правила: 0xC4 проверки ошибок: DRIVER_VERIFIER_DETECTED_VIOLATION (0x00040007)

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

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

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

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

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

во время выполнения

Запустите средство проверки драйверов и выберите параметр Проверка соответствия DDI (дополнительная).

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

KeAcquireInStackQueuedSpinLockKeReleaseInStackQueuedSpinLock