Расширенное устранение неполадок при ошибках кода остановки

Попробуйте наш виртуальный агент. Он поможет вам быстро определить и устранить распространенные проблемы с загрузкой Windows

Замечание

Если вы не являетесь агентом поддержки или ИТ-специалистом, вы найдете более полезную информацию о кодах ошибок остановки в разделе Устранение ошибок кодов остановки.

Область применения: поддерживаемые версии Windows Server и клиента Windows

Что вызывает критические ошибки?

Когда Windows обнаруживает условие, которое компрометирует безопасную системную операцию, система останавливается. Например, что-то выходящее из строя, что может компрометировать безопасность или привести к повреждению операционной системы (ОС) и/или пользовательских данных. Когда машина останавливается, чтобы предотвратить продолжение работы операционной системы в данных условиях, это называется проверка наличия ошибок (bug check). Это также часто называется сбоем системы, ошибкой ядра или ошибкой кода остановки. В предварительных версиях Windows цвет экрана может быть зеленым, что приводит к зеленому экрану смерти (GSOD).

Нет простого объяснения причины ошибок остановки. Многие различные факторы могут быть вовлечены. Наш анализ основных причин сбоев указывает на то, что:

  • 70% вызваны сторонним кодом драйвера.
  • 10% вызваны аппаратными проблемами.
  • 5 ошибок% вызваны кодом корпорации Майкрософт.
  • 15% имеют неизвестные причины, так как память слишком повреждена для анализа.

Замечание

Основная причина ошибок остановки редко является процессом пользовательского режима. Хотя процесс в пользовательском режиме (например, Блокнот или Slack) может вызвать ошибку остановки, обычно это указывает на основную проблему в драйвере, оборудовании или операционной системе.

Общие действия по устранению неполадок

Чтобы устранить сообщения об остановке, выполните следующие общие шаги.

  1. Просмотрите код ошибки остановки, который вы найдете в журналах событий. Найдите в Интернете определенные коды ошибок остановки, чтобы узнать, существуют ли известные проблемы, решения или обходные пути для проблемы.

  2. Убедитесь, что установлены последние обновления Windows, накопительные обновления и накопительные пакеты обновления. Чтобы проверить состояние обновления, ознакомьтесь с соответствующим журналом обновлений для системы. Рассмотрим пример.

  3. Убедитесь, что используются актуальные версии BIOS и встроенного ПО.

  4. Выполните все необходимые тесты оборудования и памяти.

  5. Запустите средство проверки безопасности Майкрософт или любую другую программу обнаружения вирусов, включающую проверки MBR для инфекций.

  6. Убедитесь, что на жестком диске достаточно свободного места. Точное требование зависит, но рекомендуется 10–15 процентов свободного места на диске.

  7. Обратитесь к соответствующему поставщику оборудования или программного обеспечения, чтобы обновить драйверы и приложения в следующих случаях:

    • Сообщение об ошибке указывает на то, что проблема вызвана конкретным драйвером.
    • Вы видите указание о службе, которая запускается или останавливается перед тем, как произошел сбой. В данной ситуации определите, согласована ли работа службы во всех случаях сбоя.
    • Вы внесли изменения в программное обеспечение или оборудование.

    Замечание

    Если у конкретного производителя нет обновлений, рекомендуется отключить связанную службу.

    Подробные сведения см. в статье Как выполнить «чистую» загрузку в Windows.

    Драйвер можно отключить, выполнив действия, описанные в разделе "Временное отключение драйвера фильтра режима ядра в Windows".

    Вы также можете рассмотреть возможность отката изменений или возврата к последнему известному рабочему состоянию. Дополнительные сведения см. в разделе "Откат драйвера устройства" до предыдущей версии.

Сбор дампа памяти

Чтобы настроить систему для файлов дампа памяти, выполните следующие действия.

  1. Выберите поле поиска панели задач, введите дополнительные параметры системы и нажмите клавишу ВВОД.
  2. На вкладке "Дополнительно " в поле " Свойства системы " нажмите кнопку "Параметры ", которая отображается в разделе "Запуск и восстановление".
  3. В новом окне выберите раскрывающийся список под параметром "Запись сведений об отладке".
  4. Выберите автоматический дамп памяти.
  5. Нажмите ОК.
  6. Перезапустите компьютер, чтобы параметр вступил в силу.
  7. Если сервер виртуализирован, отключите автоматическую перезагрузку после создания файла дампа памяти. Это отключение позволяет создать моментальный снимок сервера в текущем состоянии и в случае повторения проблемы.

Файл дампа памяти сохраняется в следующих расположениях:

Тип файла дампа Местоположение
(нет) %SystemRoot%\MEMORY.DMP (неактивный или затемнённый)
Небольшой файл дампа памяти (256 кб) %SystemRoot%\Minidump
Файл дампа памяти ядра %SystemRoot%\MEMORY. DMP
Полный файл дампа памяти %SystemRoot%\MEMORY. DMP
Автоматический файл дампа памяти %SystemRoot%\MEMORY. DMP
Файл дампа активной памяти %SystemRoot%\MEMORY. DMP

С помощью средства проверки файлов аварийного дампа (DumpChk) можно убедиться, что файлы дампа памяти не повреждены или недопустимы. Дополнительные сведения см. в следующем видео:

Дополнительные сведения об использовании Dumpchk.exe для проверки файлов дампа см. в следующих статьях:

Параметры файла страницы

Дополнительные сведения о параметрах файла страниц см. в следующих статьях:

Анализ дампа памяти

Поиск первопричин аварии может оказаться не простой. Аппаратные проблемы особенно трудно диагностировать, потому что они могут привести к непредсказуемому и непредсказуемому поведению, которое может проявляться в различных симптомах.

При возникновении ошибки остановки необходимо сначала изолировать проблемные компоненты, а затем попытаться вызвать ошибку остановки снова. Если вы можете реплицировать проблему, обычно можно определить причину.

Для диагностики журналов дампа можно использовать такие средства, как комплект средств разработки программного обеспечения Windows (SDK) и символы. В следующем разделе описывается, как использовать это средство.

Дополнительные действия по устранению неполадок

Замечание

Расширенное устранение неполадок аварийного дампа может быть очень сложной задачей, если вы не столкнулись с программированием и внутренними механизмами Windows. Мы попытались получить краткое представление о некоторых используемых методах, включая некоторые примеры. Тем не менее, чтобы действительно эффективно устранять неполадки аварийного дампа, вам следует уделить время изучению углубленных методов отладки. Обзор видео, отладка режима ядра завершается сбоем и зависает. См. также дополнительные ссылки, перечисленные ниже.

Дополнительные ссылки на отладку

Шаги отладки

  1. Убедитесь, что компьютер настроен для создания полного файла дампа памяти при сбое. Дополнительные сведения см. в методе 1: дамп памяти.

  2. Найдите файл memory.dmp в каталоге Windows на компьютере, который выдает сбой, и скопируйте этот файл на другой компьютер.

  3. На другом компьютере скачайте пакет SDK для Windows 10.

  4. Запустите установку и выберите средства отладки для Windows. Устанавливается средство WinDbg.

  5. Перейдите в меню "Файл" и выберите "Путь к файлу символов ", чтобы открыть средство WinDbg и задать путь к символу.

    1. Если компьютер подключен к Интернету, введите общедоступный сервер символов Майкрософт и https://msdl.microsoft.com/download/symbols нажмите кнопку "ОК". Этот метод рекомендуется.
    2. Если компьютер не подключен к Интернету, укажите локальный путь к символам.
  6. Выберите "Открыть файл дампа", а затем откройте скопированный файл memory.dmp.

    Снимок экрана: пример выходных данных в WinDbg при открытии файла аварийного дампа.

  7. В разделе "Анализ ошибок" выберите !analyze -v. !analyze -v Команда вводится в командной строке в нижней части страницы.

  8. Появится подробный анализ проверки ошибок.

    Снимок экрана: подробный пример анализа ошибок.

  9. Прокрутите вниз до раздела STACK_TEXT . Будут строки чисел с каждой строкой, за которой следует двоеточие и текст. Этот текст должен сообщить о том, что библиотека DLL вызывает сбой. Если применимо, он также указывает, какая служба вызывает сбой библиотеки DLL.

  10. Дополнительные сведения о том, как интерпретировать выходные данные STACK_TEXT, см. в разделе "Использование расширения !analyze".

Существует множество возможных причин проверки ошибок, и каждый случай является уникальным. В приведенном выше примере важные строки, которые можно определить из STACK_TEXT, — 20, 21 и 22:

Замечание

Данные HEX удаляются здесь, и строки нумеруются для ясности.

1  : nt!KeBugCheckEx
2  : nt!PspCatchCriticalBreak+0xff
3  : nt!PspTerminateAllThreads+0x1134cf
4  : nt!PspTerminateProcess+0xe0
5  : nt!NtTerminateProcess+0xa9
6  : nt!KiSystemServiceCopyEnd+0x13
7  : nt!KiServiceLinkage
8  : nt!KiDispatchException+0x1107fe
9  : nt!KiFastFailDispatch+0xe4
10 : nt!KiRaiseSecurityCheckFailure+0x3d3
11 : ntdll!RtlpHpFreeWithExceptionProtection$filt$0+0x44
12 : ntdll!_C_specific_handler+0x96
13 : ntdll!RtlpExecuteHandlerForException+0xd
14 : ntdll!RtlDispatchException+0x358
15 : ntdll!KiUserExceptionDispatch+0x2e
16 : ntdll!RtlpHpVsContextFree+0x11e
17 : ntdll!RtlpHpFreeHeap+0x48c
18 : ntdll!RtlpHpFreeWithExceptionProtection+0xda
19 : ntdll!RtlFreeHeap+0x24a
20 : FWPolicyIOMgr!FwBinariesFree+0xa7c2
21 : mpssvc!FwMoneisDiagEdpPolicyUpdate+0x1584f
22 : mpssvc!FwEdpMonUpdate+0x6c
23 : ntdll!RtlpWnfWalkUserSubscriptionList+0x29b
24 : ntdll!RtlpWnfProcessCurrentDescriptor+0x105
25 : ntdll!RtlpWnfNotificationThread+0x80
26 : ntdll!TppExecuteWaitCallback+0xe1
27 : ntdll!TppWorkerThread+0x8d0
28 : KERNEL32!BaseThreadInitThunk+0x14
29 : ntdll!RtlUserThreadStart+0x21

Эта проблема связана со службой mpssvc, которая является компонентом брандмауэра Windows. Проблема была исправлена путем временной отключения брандмауэра, а затем сброса политик брандмауэра.

Дополнительные примеры см. в примерах отладки.

Видеоресурсы

В следующих видео показаны различные методы устранения неполадок при анализе файлов дампа.

Расширенное устранение неполадок с помощью средства проверки драйверов

Мы считаем, что около 75 процентов всех ошибок остановки вызваны неисправными драйверами. Средство проверки драйверов предоставляет несколько методов, которые помогут вам устранить неполадки. К ним относятся выполнение драйверов в изолированном пуле памяти (без совместного использования памяти с другими компонентами), создание условий крайнего давления на память и валидация параметров. Если средство сталкивается с ошибками в выполнении кода драйвера, он упреждающе создает исключение. Затем он может продолжить изучение этой части кода.

Предупреждение

Средство проверки драйверов потребляет много ЦП и может значительно замедлить работу компьютера. Вы также можете столкнуться с другими сбоями. Средство проверки отключает неисправные драйверы после возникновения ошибки остановки и продолжает делать это, пока вы не сможете успешно перезапустить систему и получить доступ к рабочему столу. Вы также можете ожидать появления нескольких файлов дампа.

Не пытайтесь проверить все драйверы одновременно. Это действие может снизить производительность и сделать систему неиспользуемой. Он также ограничивает эффективность инструмента.

При использовании средства проверки драйверов используйте следующие рекомендации.

  • Проверьте все "подозрительные" драйверы. Например, драйверы, которые были недавно обновлены или которые, как известно, являются проблемными.
  • Если вы продолжаете работать с неанализируемыми сбоями, попробуйте включить проверку на всех сторонних и неподписанных драйверах.
  • Включите параллельную проверку для групп 10-20 драйверов.
  • Кроме того, если компьютер не может загрузиться на рабочий стол из-за средства проверки драйверов, вы можете отключить средство, начиная с безопасного режима. Это решение связано с тем, что средство не может работать в безопасном режиме.

Дополнительные сведения см. в разделе "Проверка драйверов".

Распространенные ошибки остановки Windows

Этот раздел не содержит список всех кодов ошибок, но так как многие коды ошибок имеют одинаковые потенциальные разрешения, лучше всего выполнить приведенные ниже действия, чтобы устранить ошибку. Полный список кодов ошибок остановки см. в справочнике по коду проверки ошибок.

В следующих разделах перечислены общие процедуры устранения неполадок для распространенных кодов ошибок остановки.

VIDEO_ENGINE_TIMEOUT_DETECTED или VIDEO_TDR_TIMEOUT_DETECTED

Остановка кода ошибки 0x00000141 или 0x00000117

Обратитесь к поставщику указанного драйвера отображения, чтобы получить соответствующее обновление для этого драйвера.

DRIVER_IRQL_NOT_LESS_OR_EQUAL

Код ошибки остановки 0x0000000D1

Примените последние обновления для драйвера, применяя последние накопительные обновления для системы с помощью веб-сайта каталога обновлений Майкрософт. Обновите устаревший сетевой драйвер. Виртуализированные системы VMware часто запускают "Intel(R) PRO/1000 MT Network Connection" (e1g6032e.sys). Этот драйвер можно скачать на веб-сайте Intel Download Driver & Software. Обратитесь к поставщику оборудования, чтобы обновить сетевой драйвер для решения проблемы. Для систем VMware используйте интегрированный сетевой драйвер VMware вместо Intel e1g6032e.sys. Например, используйте типы VMware VMXNET, VMXNET2 или VMXNET3.

PAGE_FAULT_IN_NONPAGED_AREA

Код ошибки остановки 0x000000050

Если драйвер определен в сообщении об ошибке остановки, обратитесь к производителю за обновлением. Если обновления недоступны, отключите драйвер и отслеживайте систему для стабильности. Выполните команду chkdsk /f /r для обнаружения и восстановления ошибок диска. Перезапустите систему перед началом сканирования диска в системном разделе. Обратитесь к изготовителю для любых средств диагностики, которые они могут предоставить для подсистемы жесткого диска. Попробуйте переустановить любое приложение или службу, которая была недавно установлена или обновлена. Возможно, что сбой был активирован, пока система запускала приложения и читала реестр для параметров предпочтения. Переустановка приложения может исправить поврежденные разделы реестра. Если проблема сохранится, и вы выполнили последнюю резервную копию состояния системы, попробуйте восстановить кусты реестра из резервной копии.

SYSTEM_SERVICE_EXCEPTION

Код остановки ошибки c000021a {Неустранимая системная ошибка} Системный процесс подсистемы Windows завершился неожиданно со статусом 0xc0000005. Система была выключена.

Используйте средство проверки файлов системы для восстановления отсутствующих или поврежденных системных файлов. Средство проверки файлов системы позволяет пользователям проверять повреждения системных файлов Windows и восстанавливать поврежденные файлы. Дополнительные сведения см. в разделе "Использование средства проверки файлов системы".

NTFS_FILE_SYSTEM

Код ошибки остановки 0x000000024

Эта ошибка остановки часто вызвана повреждением файловой системы NTFS или плохими блоками (секторами) на жестком диске. Поврежденные драйверы для жестких дисков (SATA или IDE) также могут негативно повлиять на способность системы читать и записывать на диск. Запустите любую диагностику оборудования, предоставляемую производителем подсистемы хранения. Используйте средство сканирования диска, чтобы убедиться, что ошибки файловой системы отсутствуют. Для этого щелкните правой кнопкой мыши диск, который требуется проверить, выберите "Свойства", выберите "Сервис", а затем нажмите кнопку "Проверить". Обновите драйвер файловой системы NTFS (Ntfs.sys). Примените последние накопительные обновления для текущей операционной системы, в которой возникла проблема.

KMODE_EXCEPTION_NOT_HANDLED

Код ошибки STOP 0x0000001E

Если драйвер определен в сообщении об ошибке остановки, отключите или удалите этот драйвер. Отключите или удалите все недавно добавленные драйверы и службы.

Если ошибка возникает во время последовательности запуска, а системная секция отформатирована с помощью файловой системы NTFS, вы можете использовать безопасный режим для отключения драйвера в диспетчере устройств. Чтобы отключить драйвер, выполните следующие действия.

  1. Последовательно выберите Параметры>Обновления и безопасность>Восстановление.
  2. В разделе Особые варианты загрузки выберите Перезагрузить сейчас.
  3. После перезагрузки компьютера на экране Выбрать параметр выберите пункт Выберите вариант>Дополнительные параметры>Настройки запуска>Перезагрузить.
  4. После перезагрузки компьютера отобразится список вариантов. Нажмите клавишу 4 или F4, чтобы запустить компьютер в безопасном режиме. Если вы планируете использовать Интернет в безопасном режиме, нажмите клавишу 5 или F5 для безопасного режима с параметром "Сеть ".

DPC_WATCHDOG_VIOLATION

Код стоп-ошибки 0x00000133

Этот код ошибки остановки вызван неисправным драйвером, который не завершает работу в течение выделенного интервала времени в определенных условиях. Чтобы устранить эту ошибку, соберите файл дампа памяти из системы, а затем используйте отладчик Windows, чтобы найти неисправный драйвер. Если драйвер определен в сообщении об ошибке остановки, отключите драйвер, чтобы изолировать проблему. Проверьте у производителя наличие обновлений драйверов. Проверьте системный журнал в средстве просмотра событий для других сообщений об ошибках, которые могут помочь определить устройство или драйвер, вызывающий ошибку остановки 0x133. Убедитесь, что новое установленное оборудование совместимо с установленной версией Windows. Например, можно получить сведения о требуемом оборудовании в спецификациях Windows 10. Если отладчик Windows установлен и у вас есть доступ к открытым символам, можно загрузить файл c:\windows\memory.dmp в отладчик. Затем обратитесь к определению источника ошибок проверки ошибок 0x133 (DPC_WATCHDOG_VIOLATION) в Windows Server 2012, чтобы найти проблемный драйвер из дампа памяти.

Монитор целостности пользовательского режима

Ошибка стоп-кода 0x0000009E

Эта ошибка остановки указывает на то, что проверка работоспособности в пользовательском режиме завершилась сбоем, который предотвращает корректное завершение работы системы. Windows восстанавливает критически важные службы путем перезапуска или включения отказоустойчивости приложения на другие серверы. Служба кластеризации включает механизм обнаружения, который может выявлять недоступность компонентов пользовательского режима.

Эта ошибка остановки обычно возникает в кластеризованной среде, и указанный неисправный драйвер - RHS.exe. Проверьте журналы событий для любых сбоев хранилища, чтобы определить неисправный процесс. Попробуйте обновить компонент или процесс, указанный в журналах событий. Вы должны увидеть следующее событие:

  • Идентификатор события: 4870
  • Источник: Microsoft-Windows-FailoverClustering
  • Описание. Мониторинг работоспособности в пользовательском режиме обнаружил, что система не реагирует. Виртуальный адаптер отказоустойчивого кластера потерял связь с процессом сервера кластера с идентификатором "%1" на протяжении%2секунд. Действие по восстановлению предпринято. Просмотрите журналы кластера, чтобы определить процесс и изучить, какие элементы могут вызвать зависание процесса.

Дополнительные сведения см. в разделе "0x0000009E" Ошибка остановки на узлах кластера в среде отказоустойчивого кластерного узла на основе Windows Server. Также см. в следующем видеоролике Microsoft Что делать, если возникает ошибка 9E.

Примеры отладки

Пример 1

Эта проверка на наличие ошибок вызвана зависанием драйвера во время обновления, инициирующая проверку на ошибки D1 в NDIS.sys, которая осуществляется драйвером Майкрософт. IMAGE_NAME сообщает вам об ошибке драйвера, но так как этот драйвер является драйвером Майкрософт, его нельзя заменить или удалить. Метод разрешения — отключить сетевое устройство в диспетчере устройств и повторить обновление.

2: kd> !analyze -v
*******************************************************************************
*                                                                             *
*                        Bugcheck Analysis                                    *
*                                                                             *
*******************************************************************************

DRIVER_IRQL_NOT_LESS_OR_EQUAL (d1)
An attempt was made to access a pageable (or completely invalid) address at an
interrupt request level (IRQL) that is too high.  This is usually
caused by drivers using improper addresses.
If kernel debugger is available get stack backtrace.
Arguments:
Arg1: 000000000011092a, memory referenced
Arg2: 0000000000000002, IRQL
Arg3: 0000000000000001, value 0 = read operation, 1 = write operation
Arg4: fffff807aa74f4c4, address which referenced memory
Debugging Details:
------------------

KEY_VALUES_STRING: 1
STACKHASH_ANALYSIS: 1
TIMELINE_ANALYSIS: 1
DUMP_CLASS: 1
DUMP_QUALIFIER: 400
SIMULTANEOUS_TELSVC_INSTANCES:  0
SIMULTANEOUS_TELWP_INSTANCES:  0
BUILD_VERSION_STRING:  16299.15.amd64fre.rs3_release.170928-1534
SYSTEM_MANUFACTURER:  Alienware
SYSTEM_PRODUCT_NAME:  Alienware 15 R2
SYSTEM_SKU:  Alienware 15 R2
SYSTEM_VERSION:  1.2.8
BIOS_VENDOR:  Alienware
BIOS_VERSION:  1.2.8
BIOS_DATE:  01/29/2016
BASEBOARD_MANUFACTURER:  Alienware
BASEBOARD_PRODUCT:  Alienware 15 R2
BASEBOARD_VERSION:  A00
DUMP_TYPE:  2
BUGCHECK_P1: 11092a
BUGCHECK_P2: 2
BUGCHECK_P3: 1
BUGCHECK_P4: fffff807aa74f4c4
WRITE_ADDRESS: fffff80060602380: Unable to get MiVisibleState
Unable to get NonPagedPoolStart
Unable to get NonPagedPoolEnd
Unable to get PagedPoolStart
Unable to get PagedPoolEnd
000000000011092a
CURRENT_IRQL:  2
FAULTING_IP:
NDIS!NdisQueueIoWorkItem+4 [minio\ndis\sys\miniport.c @ 9708]
fffff807`aa74f4c4 48895120        mov     qword ptr [rcx+20h],rdx
CPU_COUNT: 8
CPU_MHZ: a20
CPU_VENDOR:  GenuineIntel
CPU_FAMILY: 6
CPU_MODEL: 5e
CPU_STEPPING: 3
CPU_MICROCODE: 6,5e,3,0 (F,M,S,R)  SIG: BA'00000000 (cache) BA'00000000 (init)
BLACKBOXPNP: 1 (!blackboxpnp)
DEFAULT_BUCKET_ID:  WIN8_DRIVER_FAULT
BUGCHECK_STR:  AV
PROCESS_NAME:  System
ANALYSIS_SESSION_HOST:  SHENDRIX-DEV0
ANALYSIS_SESSION_TIME:  01-17-2019 11:06:05.0653
ANALYSIS_VERSION: 10.0.18248.1001 amd64fre
TRAP_FRAME:  ffffa884c0c3f6b0 -- (.trap 0xffffa884c0c3f6b0)
NOTE: The trap frame doesn't contain all registers.
Some register values may be zeroed or incorrect.
rax=fffff807ad018bf0 rbx=0000000000000000 rcx=000000000011090a
rdx=fffff807ad018c10 rsi=0000000000000000 rdi=0000000000000000
rip=fffff807aa74f4c4 rsp=ffffa884c0c3f840 rbp=000000002408fd00
r8=ffffb30e0e99ea30  r9=0000000001d371c1 r10=0000000020000080
r11=0000000000000000 r12=0000000000000000 r13=0000000000000000
r14=0000000000000000 r15=0000000000000000
iopl=0         nv up ei ng nz na pe nc
NDIS!NdisQueueIoWorkItem+0x4:
fffff807`aa74f4c4 48895120        mov     qword ptr [rcx+20h],rdx ds:00000000`0011092a=????????????????
Resetting default scope

LAST_CONTROL_TRANSFER:  from fffff800603799e9 to fffff8006036e0e0

STACK_TEXT:
ffffa884`c0c3f568 fffff800`603799e9 : 00000000`0000000a 00000000`0011092a 00000000`00000002 00000000`00000001 : nt!KeBugCheckEx [minkernel\ntos\ke\amd64\procstat.asm @ 134]
ffffa884`c0c3f570 fffff800`60377d7d : fffff78a`4000a150 ffffb30e`03fba001 ffff8180`f0b5d180 00000000`000000ff : nt!KiBugCheckDispatch+0x69 [minkernel\ntos\ke\amd64\trap.asm @ 2998]
ffffa884`c0c3f6b0 fffff807`aa74f4c4 : 00000000`00000002 ffff8180`f0754180 00000000`00269fb1 ffff8180`f0754180 : nt!KiPageFault+0x23d [minkernel\ntos\ke\amd64\trap.asm @ 1248]
ffffa884`c0c3f840 fffff800`60256b63 : ffffb30e`0e18f710 ffff8180`f0754180 ffffa884`c0c3fa18 00000000`00000002 : NDIS!NdisQueueIoWorkItem+0x4 [minio\ndis\sys\miniport.c @ 9708]
ffffa884`c0c3f870 fffff800`60257bfd : 00000000`00000008 00000000`00000000 00000000`00269fb1 ffff8180`f0754180 : nt!KiProcessExpiredTimerList+0x153 [minkernel\ntos\ke\dpcsup.c @ 2078]
ffffa884`c0c3f960 fffff800`6037123a : 00000000`00000000 ffff8180`f0754180 00000000`00000000 ffff8180`f0760cc0 : nt!KiRetireDpcList+0x43d [minkernel\ntos\ke\dpcsup.c @ 1512]
ffffa884`c0c3fb60 00000000`00000000 : ffffa884`c0c40000 ffffa884`c0c39000 00000000`00000000 00000000`00000000 : nt!KiIdleLoop+0x5a [minkernel\ntos\ke\amd64\idle.asm @ 166]

RETRACER_ANALYSIS_TAG_STATUS:  Failed in getting KPCR for core 2
THREAD_SHA1_HASH_MOD_FUNC:  5b59a784f22d4b5cbd5a8452fe39914b8fd7961d
THREAD_SHA1_HASH_MOD_FUNC_OFFSET:  5643383f9cae3ca39073f7721b53f0c633bfb948
THREAD_SHA1_HASH_MOD:  20edda059578820e64b723e466deea47f59bd675
FOLLOWUP_IP:
NDIS!NdisQueueIoWorkItem+4 [minio\ndis\sys\miniport.c @ 9708]
fffff807`aa74f4c4 48895120        mov     qword ptr [rcx+20h],rdx
FAULT_INSTR_CODE:  20518948
FAULTING_SOURCE_LINE:  minio\ndis\sys\miniport.c
FAULTING_SOURCE_FILE:  minio\ndis\sys\miniport.c
FAULTING_SOURCE_LINE_NUMBER:  9708
FAULTING_SOURCE_CODE:
  9704:     _In_ _Points_to_data_      PVOID                       WorkItemContext
  9705:     )
  9706: {
  9707:
> 9708:     ((PNDIS_IO_WORK_ITEM)NdisIoWorkItemHandle)->Routine = Routine;
  9709:     ((PNDIS_IO_WORK_ITEM)NdisIoWorkItemHandle)->WorkItemContext = WorkItemContext;
  9710:
  9711:     IoQueueWorkItem(((PNDIS_IO_WORK_ITEM)NdisIoWorkItemHandle)->IoWorkItem,
  9712:                     ndisDispatchIoWorkItem,
  9713:                     CriticalWorkQueue,

SYMBOL_STACK_INDEX:  3
SYMBOL_NAME:  NDIS!NdisQueueIoWorkItem+4
FOLLOWUP_NAME:  ndiscore
MODULE_NAME: NDIS
IMAGE_NAME:  NDIS.SYS
DEBUG_FLR_IMAGE_TIMESTAMP:  0
IMAGE_VERSION:  10.0.16299.99
DXGANALYZE_ANALYSIS_TAG_PORT_GLOBAL_INFO_STR:  Hybrid_FALSE
DXGANALYZE_ANALYSIS_TAG_ADAPTER_INFO_STR:  GPU0_VenId0x1414_DevId0x8d_WDDM1.3_Active;
STACK_COMMAND:  .thread ; .cxr ; kb
BUCKET_ID_FUNC_OFFSET:  4
FAILURE_BUCKET_ID:  AV_NDIS!NdisQueueIoWorkItem
BUCKET_ID:  AV_NDIS!NdisQueueIoWorkItem
PRIMARY_PROBLEM_CLASS:  AV_NDIS!NdisQueueIoWorkItem
TARGET_TIME:  2017-12-10T14:16:08.000Z
OSBUILD:  16299
OSSERVICEPACK:  98
SERVICEPACK_NUMBER: 0
OS_REVISION: 0
SUITE_MASK:  784
PRODUCT_TYPE:  1
OSPLATFORM_TYPE:  x64
OSNAME:  Windows 10
OSEDITION:  Windows 10 WinNt TerminalServer SingleUserTS Personal
OS_LOCALE:
USER_LCID:  0
OSBUILD_TIMESTAMP:  2017-11-26 03:49:20
BUILDDATESTAMP_STR:  170928-1534
BUILDLAB_STR:  rs3_release
BUILDOSVER_STR:  10.0.16299.15.amd64fre.rs3_release.170928-1534
ANALYSIS_SESSION_ELAPSED_TIME:  8377
ANALYSIS_SOURCE:  KM
FAILURE_ID_HASH_STRING:  km:av_ndis!ndisqueueioworkitem
FAILURE_ID_HASH:  {10686423-afa1-4852-ad1b-9324ac44ac96}
FAILURE_ID_REPORT_LINK: https://go.microsoft.com/fwlink/?LinkID=397724&FailureHash=10686423-afa1-4852-ad1b-9324ac44ac96
Followup:     ndiscore
---------

Пример 2

В этом примере драйвер, отличный от Майкрософт, вызвал ошибку страницы, поэтому у нас нет символов для этого драйвера. Однако при просмотре IMAGE_NAME или MODULE_NAME это указывает на то, что WwanUsbMP.sys вызвало проблему. Отключение устройства и повторная попытка обновления — это возможное решение.

1: kd> !analyze -v
*******************************************************************************
*                                                                             *
*                        Bugcheck Analysis                                    *
*                                                                             *
*******************************************************************************

PAGE_FAULT_IN_NONPAGED_AREA (50)
Invalid system memory was referenced.  This can't be protected by try-except.
Typically the address is just plain bad or it is pointing at freed memory.
Arguments:
Arg1: 8ba10000, memory referenced.
Arg2: 00000000, value 0 = read operation, 1 = write operation.
Arg3: 82154573, If non-zero, the instruction address which referenced the bad memory
                address.
Arg4: 00000000, (reserved)

Debugging Details:
------------------

*** WARNING: Unable to verify timestamp for WwanUsbMp.sys
*** ERROR: Module load completed but symbols could not be loaded for WwanUsbMp.sys

KEY_VALUES_STRING: 1
STACKHASH_ANALYSIS: 1
TIMELINE_ANALYSIS: 1
DUMP_CLASS: 1
DUMP_QUALIFIER: 400
BUILD_VERSION_STRING:  16299.15.x86fre.rs3_release.170928-1534
MARKER_MODULE_NAME:  IBM_ibmpmdrv
SYSTEM_MANUFACTURER:  LENOVO
SYSTEM_PRODUCT_NAME:  20AWS07H00
SYSTEM_SKU:  LENOVO_MT_20AW_BU_Think_FM_ThinkPad T440p
SYSTEM_VERSION:  ThinkPad T440p
BIOS_VENDOR:  LENOVO
BIOS_VERSION:  GLET85WW (2.39 )
BIOS_DATE:  09/29/2016
BASEBOARD_MANUFACTURER:  LENOVO
BASEBOARD_PRODUCT:  20AWS07H00
BASEBOARD_VERSION:  Not Defined
DUMP_TYPE:  2
BUGCHECK_P1: ffffffff8ba10000
BUGCHECK_P2: 0
BUGCHECK_P3: ffffffff82154573
BUGCHECK_P4: 0
READ_ADDRESS: 822821d0: Unable to get MiVisibleState
8ba10000
FAULTING_IP:
nt!memcpy+33 [minkernel\crts\crtw32\string\i386\memcpy.asm @ 213
82154573 f3a5            rep movs dword ptr es:[edi],dword ptr [esi]
MM_INTERNAL_CODE:  0
CPU_COUNT: 4
CPU_MHZ: 95a
CPU_VENDOR:  GenuineIntel
CPU_FAMILY: 6
CPU_MODEL: 3c
CPU_STEPPING: 3
CPU_MICROCODE: 6,3c,3,0 (F,M,S,R)  SIG: 21'00000000 (cache) 21'00000000 (init)
BLACKBOXBSD: 1 (!blackboxbsd)
BLACKBOXPNP: 1 (!blackboxpnp)
DEFAULT_BUCKET_ID:  WIN8_DRIVER_FAULT
BUGCHECK_STR:  AV
PROCESS_NAME:  System
CURRENT_IRQL:  2
ANALYSIS_SESSION_HOST:  SHENDRIX-DEV0
ANALYSIS_SESSION_TIME:  01-17-2019 10:54:53.0780
ANALYSIS_VERSION: 10.0.18248.1001 amd64fre
TRAP_FRAME:  8ba0efa8 -- (.trap 0xffffffff8ba0efa8)
ErrCode = 00000000
eax=8ba1759e ebx=a2bfd314 ecx=00001d67 edx=00000002 esi=8ba10000 edi=a2bfe280
eip=82154573 esp=8ba0f01c ebp=8ba0f024 iopl=0         nv up ei pl nz ac pe nc
cs=0008  ss=0010  ds=0023  es=0023  fs=0030  gs=0000             efl=00010216
nt!memcpy+0x33:
82154573 f3a5            rep movs dword ptr es:[edi],dword ptr [esi]
Resetting default scope
LOCK_ADDRESS:  8226c6e0 -- (!locks 8226c6e0)
Cannot get _ERESOURCE type
Resource @ nt!PiEngineLock (0x8226c6e0)    Available
1 total locks
PNP_TRIAGE_DATA:
                Lock address  : 0x8226c6e0
                Thread Count  : 0
                Thread address: 0x00000000
                Thread wait   : 0x0

LAST_CONTROL_TRANSFER:  from 82076708 to 821507e8

STACK_TEXT:
8ba0ede4 82076708 00000050 8ba10000 00000000 nt!KeBugCheckEx [minkernel\ntos\ke\i386\procstat.asm @ 114]
8ba0ee40 8207771e 8ba0efa8 8ba10000 8ba0eea0 nt!MiSystemFault+0x13c8 [minkernel\ntos\mm\mmfault.c @ 4755]
8ba0ef08 821652ac 00000000 8ba10000 00000000 nt!MmAccessFault+0x83e [minkernel\ntos\mm\mmfault.c @ 6868]
8ba0ef08 82154573 00000000 8ba10000 00000000 nt!_KiTrap0E+0xec [minkernel\ntos\ke\i386\trap.asm @ 5153]
8ba0f024 86692866 a2bfd314 8ba0f094 0000850a nt!memcpy+0x33 [minkernel\crts\crtw32\string\i386\memcpy.asm @ 213]
8ba0f040 866961bc 8ba0f19c a2bfd0e8 00000000 NDIS!ndisMSetPowerManagementCapabilities+0x8a [minio\ndis\sys\miniport.c @ 7969]
8ba0f060 866e1f66 866e1caf adfb9000 00000000 NDIS!ndisMSetGeneralAttributes+0x23d [minio\ndis\sys\miniport.c @ 8198]
8ba0f078 ac50c15f a2bfd0e8 0000009f 00000001 NDIS!NdisMSetMiniportAttributes+0x2b7 [minio\ndis\sys\miniport.c @ 7184]
WARNING: Stack unwind information not available. Following frames may be wrong.
8ba0f270 ac526f96 adfb9000 a2bfd0e8 8269b9b0 WwanUsbMp+0x1c15f
8ba0f3cc 866e368a a2bfd0e8 00000000 8ba0f4c0 WwanUsbMp+0x36f96
8ba0f410 867004b0 a2bfd0e8 a2bfd0e8 a2be2a70 NDIS!ndisMInvokeInitialize+0x60 [minio\ndis\sys\miniport.c @ 13834]
8ba0f7ac 866dbc8e a2acf730 866b807c 00000000 NDIS!ndisMInitializeAdapter+0xa23 [minio\ndis\sys\miniport.c @ 601]
8ba0f7d8 866e687d a2bfd0e8 00000000 00000000 NDIS!ndisInitializeAdapter+0x4c [minio\ndis\sys\initpnp.c @ 931]
8ba0f800 866e90bb adfb64d8 00000000 a2bfd0e8 NDIS!ndisPnPStartDevice+0x118 [minio\ndis\sys\configm.c @ 4235]
8ba0f820 866e8a58 adfb64d8 a2bfd0e8 00000000 NDIS!ndisStartDeviceSynchronous+0xbd [minio\ndis\sys\ndispnp.c @ 3096]
8ba0f838 866e81df adfb64d8 8ba0f85e 8ba0f85f NDIS!ndisPnPIrpStartDevice+0xb4 [minio\ndis\sys\ndispnp.c @ 1067]
8ba0f860 820a7e98 a2bfd030 adfb64d8 8ba0f910 NDIS!ndisPnPDispatch+0x108 [minio\ndis\sys\ndispnp.c @ 2429]
8ba0f878 8231f07e 8ba0f8ec adf5d4c8 872e2eb8 nt!IofCallDriver+0x48 [minkernel\ntos\io\iomgr\iosubs.c @ 3149]
8ba0f898 820b8569 820c92b8 872e2eb8 8ba0f910 nt!PnpAsynchronousCall+0x9e [minkernel\ntos\io\pnpmgr\irp.c @ 3005]
8ba0f8cc 820c9a76 00000000 820c92b8 872e2eb8 nt!PnpSendIrp+0x67 [minkernel\ntos\io\pnpmgr\irp.h @ 286]
8ba0f914 8234577b 872e2eb8 adf638b0 adf638b0 nt!PnpStartDevice+0x60 [minkernel\ntos\io\pnpmgr\irp.c @ 3187]
8ba0f94c 82346cc7 872e2eb8 adf638b0 adf638b0 nt!PnpStartDeviceNode+0xc3 [minkernel\ntos\io\pnpmgr\start.c @ 1712]
8ba0f96c 82343c68 00000000 a2bdb3d8 adf638b0 nt!PipProcessStartPhase1+0x4d [minkernel\ntos\io\pnpmgr\start.c @ 114]
8ba0fb5c 824db885 8ba0fb80 00000000 00000000 nt!PipProcessDevNodeTree+0x386 [minkernel\ntos\io\pnpmgr\enum.c @ 6129]
8ba0fb88 8219571b 85852520 8c601040 8226ba90 nt!PiRestartDevice+0x91 [minkernel\ntos\io\pnpmgr\enum.c @ 4743]
8ba0fbe8 820804af 00000000 00000000 8c601040 nt!PnpDeviceActionWorker+0xdb4b7 [minkernel\ntos\io\pnpmgr\action.c @ 674]
8ba0fc38 8211485c 85852520 421de295 00000000 nt!ExpWorkerThread+0xcf [minkernel\ntos\ex\worker.c @ 4270]
8ba0fc70 82166785 820803e0 85852520 00000000 nt!PspSystemThreadStartup+0x4a [minkernel\ntos\ps\psexec.c @ 7756]
8ba0fc88 82051e07 85943940 8ba0fcd8 82051bb9 nt!KiThreadStartup+0x15 [minkernel\ntos\ke\i386\threadbg.asm @ 82]
8ba0fc94 82051bb9 8b9cc600 8ba10000 8ba0d000 nt!KiProcessDeferredReadyList+0x17 [minkernel\ntos\ke\thredsup.c @ 5309]
8ba0fcd8 00000000 00000000 00000000 00000000 nt!KeSetPriorityThread+0x249 [minkernel\ntos\ke\thredobj.c @ 3881]


RETRACER_ANALYSIS_TAG_STATUS:  Failed in getting KPCR for core 1
THREAD_SHA1_HASH_MOD_FUNC:  e029276c66aea80ba36903e89947127118d31128
THREAD_SHA1_HASH_MOD_FUNC_OFFSET:  012389f065d31c8eedd6204846a560146a38099b
THREAD_SHA1_HASH_MOD:  44dc639eb162a28d47eaeeae4afe6f9eeccced3d
FOLLOWUP_IP:
WwanUsbMp+1c15f
ac50c15f 8bf0            mov     esi,eax
FAULT_INSTR_CODE:  f33bf08b
SYMBOL_STACK_INDEX:  8
SYMBOL_NAME:  WwanUsbMp+1c15f
FOLLOWUP_NAME:  MachineOwner
MODULE_NAME: WwanUsbMp
IMAGE_NAME:  WwanUsbMp.sys
DEBUG_FLR_IMAGE_TIMESTAMP:  5211bb0c
DXGANALYZE_ANALYSIS_TAG_PORT_GLOBAL_INFO_STR:  Hybrid_FALSE
DXGANALYZE_ANALYSIS_TAG_ADAPTER_INFO_STR:  GPU0_VenId0x1414_DevId0x8d_WDDM1.3_NotActive;GPU1_VenId0x8086_DevId0x416_WDDM1.3_Active_Post;
STACK_COMMAND:  .thread ; .cxr ; kb
BUCKET_ID_FUNC_OFFSET:  1c15f
FAILURE_BUCKET_ID:  AV_R_INVALID_WwanUsbMp!unknown_function
BUCKET_ID:  AV_R_INVALID_WwanUsbMp!unknown_function
PRIMARY_PROBLEM_CLASS:  AV_R_INVALID_WwanUsbMp!unknown_function
TARGET_TIME:  2018-02-12T11:33:51.000Z
OSBUILD:  16299
OSSERVICEPACK:  15
SERVICEPACK_NUMBER: 0
OS_REVISION: 0
SUITE_MASK:  272
PRODUCT_TYPE:  1
OSPLATFORM_TYPE:  x86
OSNAME:  Windows 10
OSEDITION:  Windows 10 WinNt TerminalServer SingleUserTS
OS_LOCALE:
USER_LCID:  0
OSBUILD_TIMESTAMP:  2017-09-28 18:32:28
BUILDDATESTAMP_STR:  170928-1534
BUILDLAB_STR:  rs3_release
BUILDOSVER_STR:  10.0.16299.15.x86fre.rs3_release.170928-1534
ANALYSIS_SESSION_ELAPSED_TIME:  162bd
ANALYSIS_SOURCE:  KM
FAILURE_ID_HASH_STRING:  km:av_r_invalid_wwanusbmp!unknown_function
FAILURE_ID_HASH:  {31e4d053-0758-e43a-06a7-55f69b072cb3}
FAILURE_ID_REPORT_LINK: https://go.microsoft.com/fwlink/?LinkID=397724&FailureHash=31e4d053-0758-e43a-06a7-55f69b072cb3

Followup:     MachineOwner
---------

ReadVirtual: 812d1248 not properly sign extended

Ссылки

Справочник по коду проверки ошибок