Синий экран смерти 0x0000010D указывает, что Kernel-Mode Driver Framework (KMDF) обнаружил, что Windows нашел ошибку в драйвере, основанном на framework.
ПАРАМЕТРЫ WDF_VIOLATION:
1 параметр указывает код ошибки. 4 параметр зарезервирован.
1 параметр |
2 параметр |
3 параметр |
Причина ошибки |
0x1 |
Указатель на структуру WDF_POWER_ROUTINE_ TIMED_OUT_DATA |
Зарезервированный параметр |
Основанный на framework драйвер простаивал во время работы питания. |
0x2 |
Зарезервированный параметр |
Зарезервированный параметр |
Была предпринята попытка на получение блокировки, которая уже имеется. |
0x3 |
Описатель WDFREQUEST |
Число ссылок, которые остаются в обоих буферах |
Windows Driver Framework Verifier обнаружил фатальную ошибку. |
0x4 |
Зарезервированный параметр |
Адрес вызывающей стороны |
Нулевой параметр был передан функции, которая требовала ненулевое значение. |
0x5 |
Значение описателя |
Зарезервированный параметр |
Описатель объекта framework неправильного типа был передан к методу объекта framework. |
0x6 |
см. таблицу ниже. |
||
0x7 |
Описатель объекта framework |
Зарезервированный параметр |
Драйвер попытался неправильно удалить объект framework. Вызвав WdfObjectDereference, чтобы удалить описатель вместо того, чтобы вызвать WdfObjectDelete. |
0x8 |
Описатель объекта транзакции DMA |
Зарезервированный параметр |
Выполнение операций на объекте транзакции DMA, который находится в некорректном состоянии. |
0x9 |
В настоящее время не используется. |
||
0xA |
Указатель на структуру WDF_QUEUE_FATAL_ERROR_DATA |
Зарезервированный параметр |
Фатальная ошибка произошла при обработке запроса, который находится в очереди. |
0xB |
см. таблицу ниже. |
||
0xC |
Описатель WDFDEVICE |
Указатель на новый IRP PnP |
Новый запрос на изменение состояния IRP PnP прибыл, в то время как драйвер обрабатывал другой запрос изменения состояния IRP PnP. |
0xD |
Описатель WDFDEVICE |
Указатель на питание IRP |
Владелец политики управления питанием устройства получил питание IRP, которое не запрашивалось. |
0xE |
IRQL, в котором вызвали функцию обратного вызова события |
IRQL, в котором возвратили функцию обратного вызова события |
Функция обратного вызова события не вернулась в том же IRQL, в котором ее вызвали. Функция обратного вызова изменила IRQL прямо или косвенно (например, получая спин-блокировку, которая повышает IRQL до DISPATCH_LEVEL, не выпуская спин-блокировку). |
0xF |
Адрес функции обратного вызова события |
Зарезервированный параметр |
Функция обратного вызова события вошла в критическую область, и не освободила её перед возвратом. |
Если 1 параметр равен 0x6, то фатальная ошибка была сделана в описателе запроса WDF. В этом случае 2 параметр определяет тип фатальной ошибки.
2 параметр |
3 параметр |
Причина ошибки |
0x1 |
Адрес IRP |
Cтек ввода-вывода не доступен для форматирования базового IRP. |
0x2 |
Значение описателя запроса WDF |
Предпринята попытка отформатировать объект запроса framework, который не содержит IRP. |
0x3 |
Значение описателя запроса WDF |
Драйвер попытался отправить запрос framework, который был уже отправлен к целевому ввода-вывода. |
0x4 |
Указатель на структуру WDR_REQUEST_FATAL_ERROR_INFORMATION_LENGTH_MISMATCH_DATA, которая содержит указатель IRP, значение описателя запроса WDF, главная функция IRP и количество байтов, которые пытались записать |
Драйвер завершил запрос framework, но записал больше байтов в буфер вывода, чем определено в IRP. |
Если 1 параметр равен 0xB, то попытка получить или выпустить блокировку недопустима. В этом случае 3 параметр определяет ошибку.
2 параметр |
3 параметр |
Причина ошибки |
Значение описателя |
0x0 |
Описатель передавался WdfObjectAcquireLock, или WdfObjectReleaseLock представляя объект, который не поддерживает блокировки. |
Описатель спин-блокировки WDF |
0x1 |
Спин-блокировка выпускается потоком, который не получал ее. |
РЕШЕНИЕ
Во всех случаях синий экран смерти 0x0000010D вызывается сбойным драйвером. Если в сообщении ошибки отсутствует название драйвера, то его можно выявить с помощью дампа памяти. Подробнее об этом читайте в статье "Анализ дампа памяти". После чего, в зависимости от ситуации, его необходимо обновить, откатить или удалить.
Для устранения ошибки воспользуйтесь статьей "11 рекомендаций по устранению BSoD".