!usbkd.usbhuberr
!usbkd.usbhuberr 命令显示 USB 集线器错误记录。
!usbkd.usbhuberr StructAddr
参数
StructAddr
usbhub!_HUB_EXCEPTION_RECORD 结构的地址。
DLL
Usbkd.dll
示例
下面是查找 usbhub!_HUB_EXCEPTION_RECORD 地址的一种方法。 首先输入 !usbkd.usb2tree。
0: kd> !usbkd.usb2tree
...
2)!ehci_info ffffe00001ca11a0 !devobj ffffe00001ca1050 PCI: VendorId 8086 DeviceId 293c RevisionId 0002
RootHub !hub2_info ffffe000023201a0 !devstack ffffe00002320050
...
在前面的输出中,可以看到建议的命令 !devstack ffffe00002320050。 输入此命令:
0: kd> !kdexts.devstack ffffe000011f7050
!DevObj !DrvObj !DevExt ObjectName
> ffffe000011f7050 \Driver\usbhub ffffe000011f71a0 0000006f
ffffe00000a21050 \Driver\usbehci ffffe00000a211a0 USBPDO-8
...
在前面的输出中,ffffe000011f71a0
是集线器功能设备对象 (FDO) 的设备扩展地址。 将设备扩展的地址传递给 !usbkd.usbhubext。
0: kd> !usbkd.usbhubext ffffe000011f71a0
FDO ffffe000011f7050 PDO ffffe00000a21050 HubNumber# 7
dt USBHUB!_DEVICE_EXTENSION_HUB ffffe000011f71a0
!usbhublog ffffe000011f71a0
RemoveLock ffffe000011f7668
FdoFlags ffffe000011f7ba0
CurrentPowerIrp: System (0000000000000000) Device (0000000000000000)
ObjReferenceList: !usblist ffffe000011f7b70, RL
ExceptionList: !usblist ffffe000011f8498, EL [Empty]
...
在前面的输出中,ffffe000011f8498
是例外列表的地址。 如果例外列表不为空,它将包含 _HUB_EXCEPTION_RECORD 结构的地址。