Describe the bug
Restarting a machine that has a USB device attached kills the guest's virtual xHCI controller. Once that happens no re-attach can bring the device back, because there is no working host controller left to enumerate it, and every orb usb command still reports success. Only quitting OrbStack and opening it again recovers.
This looks related to #2642 but is not the same fault: there the record is stale and orb usb attach refuses with '...' is already attached, and detaching first fixes it. Here nothing refuses anything, detaching first does not help, and the guest kernel has logged a dead controller.
sudo dmesg inside the machine after the restart, MAC redacted:
[ 4712.738996] usb 1-1: SerialNumber: 000000000
[ 4713.211278] usbcore: registered new interface driver mt7921u
[ 4713.214074] mt7921u 1-1:1.0: HW/SW Version: 0x8a108a10, Build Time: 20260224110909a
[ 4713.231287] mt7921u 1-1:1.0: WM Firmware Version: ____010000, Build Time: 20260224110949
[ 4722.834428] systemd-journald[101]: Received SIGTERM from PID 1 (systemd-shutdow).
[ 4722.947462] mt7921u 1-1:1.0 wlx<redacted>: renamed from wlan0
[ 4723.102922] systemd-journald[100]: Received client request to flush runtime journal.
[ 4791.167535] usb 1-1: USB disconnect, device number 2
[ 4796.602307] xhci-hcd 4000c000.usb: xHCI host not responding to stop endpoint command
[ 4796.710007] xhci-hcd 4000c000.usb: Host halt failed, -110
[ 4796.710016] xhci-hcd 4000c000.usb: xHCI host controller not responding, assume dead
[ 4796.710243] xhci-hcd 4000c000.usb: HC died; cleaning up
The restart is at 4722-4723; the disconnect and controller death follow it. After HC died, lsusb in the machine shows the root hubs and nothing else, no matter how many times the device is attached:
Bus 001 Device 001: ID 1d6b:0002 Linux 7.0.14-orbstack-00380-ga7e0a2dc9535 xhci-hcd xHCI Host Controller
Bus 002 Device 001: ID 1d6b:0003 Linux 7.0.14-orbstack-00380-ga7e0a2dc9535 xhci-hcd xHCI Host Controller
Meanwhile orb usb list still reports the device as attached, and both recovery attempts report success while changing nothing in the guest and logging nothing further in dmesg:
$ orb usb attach 00140000 -m kali
Attached 'MediaTek Inc. Wireless_Device'
$ orb usb detach 00140000
Detached 'MediaTek Inc. Wireless_Device'
$ orb usb attach 00140000 -m kali
Attached 'MediaTek Inc. Wireless_Device'
Behaviour is identical with and without -m kali.
To Reproduce
- Attach a USB Wi-Fi adapter to a machine:
orb usb attach 00140000 -m kali
- Confirm it inside the machine:
lsusb lists 0846:9060, sudo iw dev shows the phy and interface. Everything works.
orb restart kali
- In the machine,
lsusb no longer lists the device and sudo dmesg ends with HC died; cleaning up.
- Try to recover with
orb usb attach, and with orb usb detach followed by orb usb attach. Both report success; the device never reappears.
- Quit OrbStack and open it again. The device is listed as detached; attaching it once more works normally.
Device: Netgear A8000 USB Wi-Fi adapter, 0846:9060 (MediaTek mt7921u). Machine: kali, Kali Linux, non-isolated, kernel 7.0.14-orbstack-00380-ga7e0a2dc9535.
Expected behavior
Restarting a machine should not leave it without a working USB controller. Either the attached device should be re-presented to the machine after it restarts, or, failing that, orb usb detach and orb usb attach should be able to restore it without restarting the whole app. Commands that cannot take effect should also not report success.
Diagnostic report (REQUIRED)
OrbStack info:
Version: 2.2.3
Commit: c83556b0ef8f1ba9a33abbb194622b6b7a1c0307 (v2.2.3)
System info:
macOS: 26.6.2 (25G83)
CPU: arm64, 12 cores
CPU model: Apple M2 Pro
Model: Mac14,9
Memory: 16 GiB
Full report: https://orbstack.dev/_admin/diag/orbstack-diagreport_2026-09-07T02-45-42.059259Z.zip
Screenshots and additional context (optional)
We ran into this while writing a guide to using USB Wi-Fi adapters with a Kali machine on Apple silicon, and ended up telling readers not to use orb restart at all while an adapter is attached.
Separately, and less reproducibly, the adapter has vanished from the guest mid-session with nothing touched, again while orb usb list reported it attached, and again only an OrbStack restart cleared it. I have no reliable reproduction for that one, and did not check whether the controller had died in that case too.
Describe the bug
Restarting a machine that has a USB device attached kills the guest's virtual xHCI controller. Once that happens no re-attach can bring the device back, because there is no working host controller left to enumerate it, and every
orb usbcommand still reports success. Only quitting OrbStack and opening it again recovers.This looks related to #2642 but is not the same fault: there the record is stale and
orb usb attachrefuses with'...' is already attached, and detaching first fixes it. Here nothing refuses anything, detaching first does not help, and the guest kernel has logged a dead controller.sudo dmesginside the machine after the restart, MAC redacted:The restart is at 4722-4723; the disconnect and controller death follow it. After
HC died,lsusbin the machine shows the root hubs and nothing else, no matter how many times the device is attached:Meanwhile
orb usb liststill reports the device as attached, and both recovery attempts report success while changing nothing in the guest and logging nothing further indmesg:Behaviour is identical with and without
-m kali.To Reproduce
orb usb attach 00140000 -m kalilsusblists0846:9060,sudo iw devshows the phy and interface. Everything works.orb restart kalilsusbno longer lists the device andsudo dmesgends withHC died; cleaning up.orb usb attach, and withorb usb detachfollowed byorb usb attach. Both report success; the device never reappears.Device: Netgear A8000 USB Wi-Fi adapter,
0846:9060(MediaTekmt7921u). Machine:kali, Kali Linux, non-isolated, kernel7.0.14-orbstack-00380-ga7e0a2dc9535.Expected behavior
Restarting a machine should not leave it without a working USB controller. Either the attached device should be re-presented to the machine after it restarts, or, failing that,
orb usb detachandorb usb attachshould be able to restore it without restarting the whole app. Commands that cannot take effect should also not report success.Diagnostic report (REQUIRED)
OrbStack info:
Version: 2.2.3
Commit: c83556b0ef8f1ba9a33abbb194622b6b7a1c0307 (v2.2.3)
System info:
macOS: 26.6.2 (25G83)
CPU: arm64, 12 cores
CPU model: Apple M2 Pro
Model: Mac14,9
Memory: 16 GiB
Full report: https://orbstack.dev/_admin/diag/orbstack-diagreport_2026-09-07T02-45-42.059259Z.zip
Screenshots and additional context (optional)
We ran into this while writing a guide to using USB Wi-Fi adapters with a Kali machine on Apple silicon, and ended up telling readers not to use
orb restartat all while an adapter is attached.Separately, and less reproducibly, the adapter has vanished from the guest mid-session with nothing touched, again while
orb usb listreported it attached, and again only an OrbStack restart cleared it. I have no reliable reproduction for that one, and did not check whether the controller had died in that case too.