[Bug 242180] kern.cam.boot_delay="10000" parameter in /boot/loader.conf stopped working. Catastrophe!
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Sat Nov 23 19:13:46 UTC 2019
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=242180
Bug ID: 242180
Summary: kern.cam.boot_delay="10000" parameter in
/boot/loader.conf stopped working. Catastrophe!
Product: Base System
Version: CURRENT
Hardware: amd64
OS: Any
Status: New
Severity: Affects Many People
Priority: ---
Component: kern
Assignee: bugs at FreeBSD.org
Reporter: michael.adm at gmail.com
After applying the 4a46b2449c63e010014dc0fb2a3caa5e20b97933 commit, the
kern.cam.boot_delay="10000" parameter in /boot/loader.conf stopped working.
Catastrophe! Now I have to load mlx4en.ko in firewall rules!
(in /etc/rc.firewall adding at end "kldload mlx4en")
The main problem is described here:
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=241639
Please correct the situation.
commit 4a46b2449c63e010014dc0fb2a3caa5e20b97933
committer mav <mav at FreeBSD.org>
Fri, 22 Nov 2019 20:39:51 +0200 (18:39 +0000)
Make CAM use root_mount_hold_token() to delay boot.
Before this change CAM used config_intrhook_establish() for this purpose,
but that approach does not allow to delay it again after releasing once.
USB stack uses root_mount_hold() to delay boot until bus scan is complete.
But once it is, CAM had no time to scan SCSI bus, registered by umass(4),
if it already done other scans and called config_intrhook_disestablish().
The new approach makes it work smooth, assuming the USB device is found
during the initial bus scan. Devices appearing on USB bus later may still
require setting kern.cam.boot_delay, but hopefully those are minority.
MFC after: 2 weeks
Sponsored by: iXsystems, Inc.
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the freebsd-bugs
mailing list