n1ro°
RU

Ошибки · Решение

Windows BSOD ATTEMPTED_SWITCH_FROM_DPC (0x000000B8)

DPC routine попыталась выполнить недопустимую для DPC операцию ожидания, attach или yield.

Редакция N1RO · Проверено

Короткий ответ

ATTEMPTED_SWITCH_FROM_DPC (0x000000B8) — официальный Windows bugcheck. DPC routine попыталась выполнить недопустимую для DPC операцию ожидания, attach или yield.

Что означает ошибка

DPC routine попыталась выполнить недопустимую для DPC операцию ожидания, attach или yield.

Возможные причины

  • Ошибка логики kernel-mode драйвера.
  • DPC вызывает код, который может блокироваться.
  • После обновления драйвера изменился путь выполнения на повышенном IRQL.

Что проверить

  • Изучите stack trace — Microsoft указывает, что он ведёт к исходной DPC routine.
  • Сопоставьте модуль в стеке с версией драйвера.
  • Если это ваш код, проверьте IRQL-контракт всех функций, вызываемых из DPC.

Безопасные шаги

  1. Обновите/откатите виновный драйвер.
  2. Перенесите блокирующую работу из DPC в допустимый контекст.
  3. Для vendor driver приложите dump с символами и версией модуля.

Только безопасные обратимые действия. Опасные шаги — только по официальной инструкции и с пониманием рисков.

Когда нужен сервис

  • При повторном 0xB8 передайте kernel dump специалисту по драйверам: стек DPC обычно нужен для поиска кода, выполнившего недопустимое ожидание или переключение.

Похожие ошибки

  • /errors/windows-bsod-cache-manager-0x34/
  • /errors/windows-bsod-registry-error-0x51/
  • /errors/windows-bsod-hal-initialization-failed-0x5c/

Что учитывать

Точная причина зависит от версии ПО/прошивки, полного текста ошибки и контекста. Официальная инструкция имеет приоритет.

Официальный источник

Расшифровка сверена с официальными страницами поддержки из источников ниже. Редакция N1RO не диагностировала ваш конкретный случай.