[Bug]: Host BSOD 0xCA PNP_DETECTED_FATAL_ERROR in VBoxUSBMon during USB hot-plug

未关闭
#958 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

维护者通常 6 天内回复

还没有人认领这个 Issue。

评估

难度
4/5
预计耗时
3-5 天
新手友好度
38/100
Issue 类型
缺陷
描述清晰度
基本清楚
活跃度
活跃
技术栈
c

调研方向

Start by reviewing the attached WinDbg report and the related issue #927, then trace the VBoxUSBMon.sys path around the reported offset and its call to IoGetDevicePropertyData. Reproduce USB hot-plug on a Windows 11 host with VBoxUSBMon enabled and inspect the device object lifecycle. Done means hot-plug no longer causes PNP_DETECTED_FATAL_ERROR (0xCA), including with the reported hub and devices.

由索引模型根据 Issue 内容生成。

描述

bug
Version

7.2.22

Host OS Type

Windows

Host OS name + version

Windows 11 Enterprise 24H2, Build 26100.x

Host Architecture

x86

Guest OS Type

Linux

Guest Architecture

x86

Guest OS name + version

Ubuntu 24.04 LTS

Component

USB and Serial Ports

What happened?

This appears closely related to #927.

Unlike the original report, I reproduced the issue with VirtualBox 7.2.22 and different USB devices. Disabling VBoxUSBMon prevents reproduction so far.

WinDbg_VBox_7.2.22.txt

The Windows host reproducibly crashes during USB hot-plug with:

PNP_DETECTED_FATAL_ERROR (0xCA), Arg1 0x2 (Invalid PDO)

The crashes occurred when connecting different USB devices (USB-UART and USB-Ethernet) through a Lenovo ThinkVision USB hub / Lenovo docking station.

WinDbg reports:

IMAGE_NAME: VBoxUSBMon.sys
SYMBOL_NAME: VBoxUSBMon+3dc3
FAILURE_BUCKET_ID: 0xCA_2_VBoxUSBMon!unknown_function

Relevant stack:

nt!KeBugCheckEx
nt!IoGetDevicePropertyData+0x9b
VBoxUSBMon+0x3dc3

The affected device object belongs to:

\Driver\USBHUB3

The same failure was previously reproduced with VirtualBox 7.2.14. Updating to 7.2.22 did not resolve it.

As an A/B test, I disabled VBoxUSBMon and rebooted. I then repeatedly connected and disconnected the same USB devices through the ThinkVision USB hub and docking station without another crash.

Expected behavior: USB hot-plug on the Windows host must not cause a host OS bugcheck, regardless of whether VirtualBox is running.

How can we reproduce this?
  1. Run VirtualBox 7.2.22 on a Windows 11 Enterprise 24H2 host, Build 26100.x.
  2. Ensure VBoxUSBMon is enabled and running.
  3. Connect the host through a docking station / monitor with an integrated USB hub.
  4. Start a VirtualBox VM.
  5. Hot-plug a USB device, e.g. USB-Ethernet or USB-UART, into the downstream USB hub.
  6. The Windows host may crash with PNP_DETECTED_FATAL_ERROR (0xCA), Arg1 0x2.
  7. WinDbg !analyze -v identifies VBoxUSBMon.sys.

Workaround / A/B test:

sc.exe config VBoxUSBMon start= disabled

After rebooting, VBoxUSBMon reports Stopped / Disabled. The same USB hot-plug operations have not reproduced the crash so far.

Re-enabling VBoxUSBMon is therefore currently avoided.

Did you upload all of your necessary log files, screenshots, etc.?
  • Yes, I've uploaded all pertinent files to this issue.
主要语言
C
星标
1.4k
派生
219
PR 合并指标
30 天内没有已合并 PR

环境准备

  • 没有 Dockerfile 或 Docker Compose 文件
  • 没有 Pull Request 模板
  • 阅读贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

VirtualBox/virtualbox 的其他 Issue

查看 VirtualBox/virtualbox 的全部 Issue

相似的 Issue

更多 C Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。