The wifi driver loads the wifi module firmware from the root filesystem, so fails if the rootfs is not available. We are currently building the driver into the kernel --- not as a module --- so sometimes it is run before the VFS is fully initialized.
The simplest way to eliminate this race condition is to build the wifi driver as a module. Module is stored on the rootfs, so they cannot possibly be loaded before the rootfs is available.
An alternative approach is to build the firmware into the kernel image. But that seems like a more complex change, for not much additional benefit.
The wifi driver loads the wifi module firmware from the root filesystem, so fails if the rootfs is not available. We are currently building the driver into the kernel --- not as a module --- so sometimes it is run before the VFS is fully initialized.
The simplest way to eliminate this race condition is to build the wifi driver as a module. Module is stored on the rootfs, so they cannot possibly be loaded before the rootfs is available.
An alternative approach is to build the firmware into the kernel image. But that seems like a more complex change, for not much additional benefit.