rc.d/zpool runs before ada(4) attaches
Harry Schmalzbauer
freebsd at omnilan.de
Sat Dec 5 17:46:35 UTC 2020
Am 01.12.2020 um 16:34 schrieb Ian Lepore::
:
:
:
>> You can define these in /boot/loader.conf:
>> #kern.cam.boot_delay="10000" # Delay (in ms) of root mount for CAM
>> bus
>> #kern.cam.scsi_delay="2000" # Delay (in ms) before probing SCSI
>>
>> Maybe that helps.
>>
>> Ronald.
>>
> Those settings control waiting before mounting root. Harry's problem
> is that root is mounted quickly, before other drives are ready for zfs.
>
> The zpool script waits for 'disks'. It would be nice if the cam
> subsystem had something like a sysctl it set to indicate when initial
> probing for disks was done, then there could be an rc.d/camprobe script
> with 'PROVIDE: disks' which waits for the probing to complete.
>
> -- Ian
Until something described above is available, or anybody is aware of any
other trick,
here's a tested workaround:
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=251610
It turned out that also swapon and dumpon suffer from early
root_hold_wait() release.
For dumpon, cam(4) doesn't even start probing. Luckily all target:LUNs
are visible at that earliest stage in rc.d/dumpon.
So that's the point where I check if any real target is in state
unattached (()) or probing ((aprobe)).
I don't know details of the involved vfs.root_mount_hold sysctl, but
assume this is dead end currently...
Best regards,
-harry
More information about the freebsd-current
mailing list