From 87076a8b3d7786ac3d69c0e5504c91fbaf482d21 Mon Sep 17 00:00:00 2001 From: Samuel Thibault Date: Sat, 13 Mar 2021 22:39:06 +0100 Subject: Comment on fsys_startup/init forwarding --- hurd/bootstrap.mdwn | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/hurd/bootstrap.mdwn b/hurd/bootstrap.mdwn index 0d751629..0e4d9665 100644 --- a/hurd/bootstrap.mdwn +++ b/hurd/bootstrap.mdwn @@ -85,6 +85,12 @@ over a `proc` port and get `auth` and `priv` ports. * Between `startup` and `auth`: `auth` calls `startup_authinit` to hand over an `auth` port and get a `proc` port, then calls `startup_essential_task` to notify `startup` that the boot can proceed. +* For translators before `ext2fs`, the child calls `fsys_startup` to pass over +the control port of `ext2fs` (instead of its own control port, which is useless +for its parent). This is typically done in the `S_fsys_startup` stub, simply +forwarding it. The child also calls `fsys_init` to pass over the `proc` and +`auth` ports. Again, this is typically done in the `S_fsys_init` stub, simply +forwarding them. With that in mind, the dance between the bootstrap translators is happening as described in the next sections. @@ -134,7 +140,7 @@ its bootstrap port. `trivfs_startup` creates a control port for the exec translator, and calls `fsys_startup` on the bootstrap port to notify ext2fs that it is ready, give it -the control port, and get back a port on the underlying node for the exec +its exec control port, and get back a port on the underlying node for the exec translator (we want to make it show up on `/servers/exec`). # libdiskfs taking back control -- cgit v1.2.3