The existing code that waits for root filesystem devices to be available works only for a few filesystems, primarily ufs, because it is based on polling for a device name to appear in /dev, after waiting for root mount holds to be released. In r330745 a new loop was added that just retries the kernel_mount() call until it either succeeds or the timeout expires. That makes the detection filesystem-centric rather than device-centric, so it works for filesystems such as zfs which aren't tied to a specific device name.
Given that the new fs-centric retry loop works fine for all filesystem types, the old code that did device name lookups and waited for root mount holds to be released is now obsolete, with one exception: the user can set vfs.root_mount_always_wait=1 to request that the mountroot process always wait for all root mount holds to be released, even if the filesystem needed to mount root is already available. Some users do that to ensure all usb devices are ready before any rc scripts run.
So this change removes all the old code related to doing name lookups after sometimes maybe waiting for root holds to be released, and simply waits for all root holds, but only if the user requested that.
This does not remove the root hold system itself, just the redundant waiting related to it that was obsoleted by r330745.