Что означает код ошибки Windows 104 (ERROR_INVALID_AT_INTERRUPT_TIME)?

 
Также может означать:
КонстантаТипОС
ECONNRESETerrnoLinux
ENOTRECOVERABLEerrnomacOS
EBADMSGerrnoWindows
FILE_INITIALIZATION_FAILEDКод BSODWindows
Предыдущий Следующий
ERROR_TOO_MANY_SEM_REQUESTS ERROR_SEM_OWNER_DIED

ERROR_INVALID_AT_INTERRUPT_TIME

Что означает ERROR_INVALID_AT_INTERRUPT_TIME

ERROR_INVALID_AT_INTERRUPT_TIME — код обычно появляется, когда ISR/DPC-путь пытается ждать, обращаться к pageable memory или выполнять работу, разрешённую только на более низком IRQL.

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

Сохраните callback и фактический IRQL на первом отказе. Найдите waits, mutexes, pageable code/data и allocations, запрещённые в этом контексте.

Оставьте в interrupt/DPC path только минимальную фиксацию события, а остальную обработку перенесите в work item или другой PASSIVE_LEVEL callback. Проверьте lifetime передаваемых данных.

Как подтвердить правильную обработку

Исправление подтверждается тем, что высокоуровневый callback больше не выполняет запрещённых операций, а отложенная работа корректно завершается на допустимом IRQL.

Технические ссылки: Microsoft: System error codes 0–499.


Нужно найти другой код? Найти другой код состояния или ошибки.