@@ -411,32 +411,34 @@ fn load_kernel_modules() {
411411 // Load order matters: dependencies must be loaded first.
412412 // virtio_mmio needs explicit device= params since the cmdline params may not
413413 // be forwarded when loading as a module.
414- let modules: & [ ( & str , & str ) ] = & [
414+ let modules: & [ ( & str , & str , bool ) ] = & [
415415 (
416416 "virtio_mmio.ko" ,
417417 "device=512@0xd0000000:10 device=512@0xd0800000:11 device=512@0xd1000000:12" ,
418+ true ,
418419 ) ,
419420 // vsock modules
420- ( "vsock.ko" , "" ) ,
421- ( "vmw_vsock_virtio_transport_common.ko" , "" ) ,
422- ( "vmw_vsock_virtio_transport.ko" , "" ) ,
423- // Network modules (for SLIRP networking)
424- ( "failover.ko" , "" ) ,
425- ( "net_failover.ko" , "" ) ,
426- ( "virtio_net.ko" , "" ) ,
427- // 9p filesystem modules (for host directory sharing)
428- ( "9pnet.ko" , "" ) ,
429- ( "9pnet_virtio.ko" , "" ) ,
421+ ( "vsock.ko" , "" , true ) ,
422+ ( "vmw_vsock_virtio_transport_common.ko" , "" , true ) ,
423+ ( "vmw_vsock_virtio_transport.ko" , "" , true ) ,
424+ // Network modules (for SLIRP networking — optional, missing on macOS )
425+ ( "failover.ko" , "" , false ) ,
426+ ( "net_failover.ko" , "" , false ) ,
427+ ( "virtio_net.ko" , "" , false ) ,
428+ // 9p filesystem modules (for host directory sharing — optional, missing on macOS )
429+ ( "9pnet.ko" , "" , false ) ,
430+ ( "9pnet_virtio.ko" , "" , false ) ,
430431 ] ;
431432
432- for ( module_name, params) in modules {
433+ for ( module_name, params, required ) in modules {
433434 let path = format ! ( "/lib/modules/{}" , module_name) ;
434435 match load_module_file ( & path, params) {
435436 Ok ( ( ) ) => kmsg ( & format ! (
436437 "Loaded module: {} (params='{}')" ,
437438 module_name, params
438439 ) ) ,
439- Err ( e) => kmsg ( & format ! ( "WARNING: failed to load {}: {}" , module_name, e) ) ,
440+ Err ( e) if * required => kmsg ( & format ! ( "WARNING: failed to load {}: {}" , module_name, e) ) ,
441+ Err ( _) => { } // Optional module — silently skip (expected on macOS/VZ)
440442 }
441443 }
442444
0 commit comments