diff options
Diffstat (limited to 'pci-arbiter/main.c')
-rw-r--r-- | pci-arbiter/main.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/pci-arbiter/main.c b/pci-arbiter/main.c index 050f1aac..4f4f13da 100644 --- a/pci-arbiter/main.c +++ b/pci-arbiter/main.c @@ -205,6 +205,7 @@ main (int argc, char **argv) mach_port_t bootstrap; mach_port_t disk_server_task; pthread_t t, nt; + file_t underlying_node = MACH_PORT_NULL; /* Parse options */ alloc_file_system (&fs); @@ -245,12 +246,16 @@ main (int argc, char **argv) machdev_trivfs_server(bootstrap); /* Timer started, quickly do all these next, before we call rump_init */ + if (disk_server_task == MACH_PORT_NULL) + underlying_node = netfs_startup (bootstrap, O_READ); + /* Create the root node first */ - err = init_root_node (); + err = init_root_node (underlying_node); if (err) error (1, err, "Creating the root node"); - - pcifs_startup (bootstrap, O_READ); + + if (disk_server_task != MACH_PORT_NULL) + pcifs_startup (bootstrap, O_READ); err = init_file_system (fs); if (err) |