Bug 检查 0x144:BUGCODE_USB3_DRIVER

BUGCODE_USB3_DRIVER bug 检查的值为 0x00000144。 这是用于所有 USB 3 bug 检查的代码。 参数 1 指定 USB 3 bug 检查的类型,其他参数的含义取决于参数 1。

重要

这篇文章适合程序员阅读。 如果您是在使用计算机时收到蓝屏错误代码的客户,请参阅蓝屏错误疑难解答

BUGCODE_USB3_DRIVER 参数

参数 1 参数 2 参数 3 参数 4 错误原因

0x1

可选。 指向用于重新发送 URB 的 IRP 的指针

指向 URB 的指针

指向客户端驱动程序的设备对象的指针

客户端驱动程序使用了以前发送到核心堆栈的 URB。

0x2

指向启动设备的物理设备对象 (PDO) 的指针

预留

预留

启动或分页设备重新枚举失败。

0x3

可选。 指向用于发送 URB 的 IRP 的指针

指向损坏的 URB 的指针

指向客户端驱动程序的设备对象的指针

客户端驱动程序将损坏的 URB 发送到核心堆栈。 之所以发生这种情况,是因为客户端驱动程序未使用 USBD_xxxUrbAllocate 分配 URB,或者客户端驱动程序为 URB 执行了缓冲区不足。

0x800

发送 Open Static Streams 请求的 IRQL

指向 Open Static Streams IRP 的指针

指向客户端驱动程序的设备对象的指针

在 IRQL > PASSIVE LEVEL 发送了 Open Static Streams 请求。

0x801

指向 Open Static Streams IRP 的指针

指向 Open Static Streams URB 的指针

指向客户端驱动程序的设备对象的指针

客户端驱动程序在查询流功能之前尝试打开静态流。 在客户端驱动程序成功查询流功能之前,客户端驱动程序无法打开静态流。 有关详细信息,请参阅“备注”。

0x802

客户端驱动程序尝试打开的静态流数

向客户端驱动程序授予的静态流数

指向客户端驱动程序的设备对象的指针

客户端驱动程序尝试打开无效数量的静态流。 流数不能为 0,并且不能大于在查询 USB 功能调用中返回到客户端驱动程序的值。

0x803

指向 Open Static Streams IRP 的指针

指向 Open Static Streams URB 的指针

指向客户端驱动程序的设备对象的指针

客户端驱动程序尝试为已打开静态流的终结点打开静态流。 在打开静态流之前,客户端驱动程序必须关闭以前打开的静态流。

0x804

泄漏的句柄上下文。 运行 !usbanalyze -v 以获取有关泄漏的句柄和 URB 的信息。 必须为客户端驱动程序启用驱动程序验证程序。

传递给 USBD_CreateHandle 的设备对象。

Reserved

客户端驱动程序忘记关闭之前使用 USBD_CreateHandle 创建的句柄,或忘记释放分配的 URB。

0x805

Close Static Streams URB 的 WDFREQUEST 句柄

指向 Close Static Streams URB 的指针

指向客户端驱动程序的设备对象的指针

客户端驱动程序发送了处于无效状态的 Close Static Streams URB(例如,处理 D0 Exit 后)。

0x806

指向 IRP 的指针

指向 URB 的指针

指向客户端驱动程序的设备对象的指针

客户端驱动程序在查询链接的 MDL 功能之前尝试发送链接的 MDL。 客户端驱动程序在成功查询链接的 MDL 功能之前,无法发送链接的 MDL。 有关详细信息,请参阅“备注”。

0x807

指向链接的 MDL 的 指针

指向 URB 的指针

指向客户端驱动程序的设备对象的指针(如果可用)

客户端驱动程序将 URB 发送到核心堆栈,其传输缓冲区长度超过传入的 MDL 的字节计数(由 MmGetMdlByteCount 返回)。 有关详细信息,请参阅“备注”。

0x1001

XHCI_LIVEDUMP_CONTEXT

预留

预留

xHCI 控制器断言 HSE 位,指示主机系统错误。

0x1002

XHCI_LIVEDUMP_CONTEXT

预留

预留

xHCI 控制器断言 HCE 位,指示主机控制器错误。

0x1003

XHCI_LIVEDUMP_CONTEXT

预留

预留

xHCI 停止终结点命令返回未经处理的完成代码。

0x1004

XHCI_LIVEDUMP_CONTEXT

预留

预留

xHCI 终结点状态在发出 xHCI 终结点停止命令后收到上下文状态错误。

0x1005

XHCI_LIVEDUMP_CONTEXT

预留

预留

尝试清除控制终结点上的停止期间,设置取消排队指针失败。

0x1006

XHCI_LIVEDUMP_CONTEXT

预留

预留

在尝试清除控制终结点上的停止期间重置 EP 失败。

0x1007

XHCI_LIVEDUMP_CONTEXT

预留

预留

重置恢复期间 xHCI 控制器重置失败。

0x1008

XHCI_LIVEDUMP_CONTEXT

预留

预留

重置恢复期间 xHCI 控制器重启失败。

0x1009

XHCI_LIVEDUMP_CONTEXT

预留

预留

命令超时中止后,xHCI 控制器命令无法完成。

0x100A

XHCI_LIVEDUMP_CONTEXT

预留

预留

在尝试在终结点停止完成后设置取消排队指针时,设置取消排队指针失败。

0x100B

XHCI_LIVEDUMP_CONTEXT

预留

预留

重置恢复期间 xHCI 控制器停止失败。

0x100C

XHCI_LIVEDUMP_CONTEXT

预留

预留

不支持 xHCI 控制器中的固件。 除非更新固件,否则不会在此控制器上加载 xHCI 驱动程序。

0x100D

XHCI_LIVEDUMP_CONTEXT

预留

预留

检测到控制器在物理上被删除。

0x100E

XHCI_LIVEDUMP_CONTEXT

预留

预留

驱动程序在启用了流的终结点上检测到错误。

0x100F

XHCI_LIVEDUMP_CONTEXT

预留

预留

xHCI 控制器中的固件已过时。 xHCI 驱动程序将继续使用此控制器,但可能会遇到一些问题。 建议使用固件更新。

0x1010

XHCI_LIVEDUMP_CONTEXT

预留

预留

传输事件 TRB 使用未经处理的完成代码完成。

0x1011

XHCI_LIVEDUMP_CONTEXT

预留

预留

控制器报告事件环已满。 当发生这种情况时,控制器也已知会删除事件。

0x1012

XHCI_LIVEDUMP_CONTEXT

预留

预留

控制器已按顺序完成命令。

0x1013

XHCI_LIVEDUMP_CONTEXT

预留

预留

命令中止完成后,控制器报告的命令环取消排队指针不正确。

0x1014

XHCI_LIVEDUMP_CONTEXT

预留

预留

启用插槽完成后,控制器会提供一个错误的插槽 ID。

0x1015

XHCI_LIVEDUMP_CONTEXT

预留

预留

控制器使用 BSR1 执行 SetAddress 命令失败。 这是意外行为。

0x1016

XHCI_LIVEDUMP_CONTEXT

预留

预留

控制器在 usbdevice 重置期间未能启用插槽。 这是意外行为。

0x1017

XHCI_LIVEDUMP_CONTEXT

预留

预留

控制器执行终结点配置命令失败,我们在其中取消配置终结点。 这是意外行为。

0x1018

XHCI_LIVEDUMP_CONTEXT

预留

预留

控制器禁用插槽命令失败。 这是意外行为。

0x1019

XHCI_LIVEDUMP_CONTEXT

预留

预留

控制器执行 USB 设备重置命令失败。 这是意外行为。

0x101A

XHCI_LIVEDUMP_CONTEXT

预留

预留

终结点重置后,“设置取消排队指针”命令失败。

0x101B

XHCI_LIVEDUMP_CONTEXT

预留

预留

xHCI 重置终结点命令返回未经处理的完成代码。

0x101C

XHCI_LIVEDUMP_CONTEXT

预留

预留

xHCI 的 D0Entry 失败。

0x101D

XHCI_LIVEDUMP_CONTEXT

预留

预留

在请求取消期间使用“配置终结点”命令而不是“设置取消排队指针”时,暂时删除和添加流终结点(作为两个命令)失败。

0x101E

XHCI_LIVEDUMP_CONTEXT

预留

预留

控制器指示未在控制器上挂起的传输完成。 EventData == 1(取消引用传输事件 TRB 的指针会导致 bug 检查)

0x101F

XHCI_LIVEDUMP_CONTEXT

预留

预留

控制器指示未在控制器上挂起的传输完成。 EventData == 0(传输事件 TRB 中的逻辑地址不匹配)

0x1020

XHCI_LIVEDUMP_CONTEXT

预留

预留

控制器指示未在控制器上挂起的传输完成。 EventData == 0(传输事件 TRB 中的逻辑地址不匹配)传输事件 TRB 可能是冗余的(指向最近完成的请求附近的某个位置)。

0x1021

XHCI_LIVEDUMP_CONTEXT

预留

预留

使用“配置终结点”命令重置未停止的终结点时,暂时删除和添加流终结点(作为两个命令)失败。

0x1022

XHCI_LIVEDUMP_CONTEXT

预留

预留

删除并添加同一终结点(作为一个命令)失败。

0x3000

USBHUB3_LIVEDUMP_CONTEXT

预留

预留

中心驱动程序成功重置了异常的中心。

0x3001

USBHUB3_LIVEDUMP_CONTEXT

预留

预留

中心驱动程序未能成功重置异常的中心。

0x3002

USBHUB3_LIVEDUMP_CONTEXT

预留

预留

中心驱动程序禁用了非函数 SuperSpeed 中心。

0x3003

USBHUB3_LIVEDUMP_CONTEXT

预留

预留

USB 设备枚举失败。

注解

若要查询 USB 功能,客户端驱动程序必须调用 WdfUsbTargetDeviceQueryUsbCapabilityUSBD_QueryUsbCapability

若要发送链接的 MDL,客户端驱动程序必须调用 USBD_QueryUsbCapability,并使用 URB_FUNCTION_BULK_OR_INTERRUPT_TRANSFER_USING_CHAINED_MDLURB_FUNCTION_ISOCH_TRANSFER_USING_CHAINED_MDL

另请参阅

通用串行总线 (USB)

内核实时转储代码引用

Bug 检查代码参考