git: u4b: Make autoquirk code optional and opt out
Aaron LI
aly at crater.dragonflybsd.org
Sun May 17 05:21:44 PDT 2026
commit 1e808f1f9324c7b163d67cebfb5522bcfcd55b66
Author: Aaron LI <aly at aaronly.me>
Date: Sun May 17 19:32:06 2026 +0800
u4b: Make autoquirk code optional and opt out
As the FreeBSD described:
> There are significant problems with the current autoquirk code. This
> results in quite a bit of bogus over-quirking.
> ...
> For all these reasons, I'm turning this off and will likely remove it
> entirely in the future once the alternative SYNC CACHE code has
> provent itself.
Actually, this fixes the USB stick probing timeout error in a USB 3.0
port on my HPE MicroServer Gen10. That timeout error happened during
the boot and would drop the system to the 'mountroot>' prompt:
```
CAM: Configuring bus: ahci0
CAM: Configuring bus: ahci0
CAM: Configuring bus: ahci0
CAM: Configuring bus: ahci0
CAM: Configuring bus: ahci0
CAM: Configuring bus: ahci0
CAM: Configuring bus: ahci0
CAM: Configuring bus: ahci0
CAM: Configuring bus: umass-sim0
CAM: Configuring bus: ahci1
CAM: Configuring 10 busses
CAM: Finished configuring bus: ahci0
CAM: Finished configuring bus: ahci0
CAM: Finished configuring bus: ahci0
CAM: Finished configuring bus: ahci0
CAM: Finished configuring bus: ahci0
CAM: Finished configuring bus: ahci0
CAM: Finished configuring bus: ahci0
CAM: Finished configuring bus: ahci0
CAM: Finished configuring bus: ahci1
ugen1.2: <vendor 0x0438> at usbus1
uhub2: <vendor 0x0438 product 0x7900, class 9/0, rev 2.00/0.18, addr 2>
on usbus1
uhub2: 4 ports with 4 removable, self powered
**WARNING** waiting for the following device to finish configuring:
xpt: func=0xffffffff802ac710 arg=0
**WARNING** waiting for the following device to finish configuring:
xpt: func=0xffffffff802ac710 arg=0
**WARNING** waiting for the following device to finish configuring:
xpt: func=0xffffffff802ac710 arg=0
Giving up, interrupt routing is probably hosed
...
Mounting root from ufs:part-by-label/DragonFly_v6.4.2.a
no disk named 'part-by-label/DragonFly_v6.4.2.a'
setrootbyname failed
ffs_mountroot: can't find rootvp
Root mount failed: 6
Manual root filesystem specification:
<fstype>:<device> Specify root (e.g. ufs:da0s1a)
? List valid disk boot devices
panic Just panic
abort Abort manual input
mountroot> (probe8:umass-sim0:0:0:0): Request completed with CAM_REQ_CMP_ERR
(probe8:umass-sim0:0:0:0): Request completed with CAM_REQ_CMP_ERR
(probe8:umass-sim0:0:0:0): Request completed with CAM_REQ_CMP_ERR
(probe8:umass-sim0:0:0:0): Request completed with CAM_REQ_CMP_ERR
(probe8:umass-sim0:0:0:0): Request completed with CAM_REQ_CMP_ERR
CAM: Finished configuring bus: umass-sim0
CAM: finished configuring all busses
```
In addition, the USB stick didn't work in a USB 3.0 port after booting into the
system.
Before this fix, the USB stick had quirks: 0x8100<NO_GETMAXLUN,NO_PREVENT_ALLOW>.
After apply this fix, the USB stick has no quirk and works.
Obtained-from: FreeBSD (commit: d41600e59c3f13419066e9dd771a03328c44624f)
Summary of changes:
sys/bus/u4b/usb_device.c | 2 +-
sys/bus/u4b/usb_dragonfly.h | 1 +
2 files changed, 2 insertions(+), 1 deletion(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/1e808f1f9324c7b163d67cebfb5522bcfcd55b66
--
DragonFly BSD source repository
More information about the Commits
mailing list