bug-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Running rump for the / filesystem


From: Damien Zammit
Subject: Re: Running rump for the / filesystem
Date: Fri, 10 Apr 2020 17:15:30 +1000
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.2.2

Hi Samuel,

On 9/12/19 10:08 am, Samuel Thibault wrote:
> I have been thinking about how to get rump running for the / filesystem.
> ...
> I'm thinking that the same can be used for the rump translator,
> something like:
> 
> module rump --fs-server-task='${fs-task}' '$(task-create)' '$(task-resume)'
> module ext2fs --exec-server-task='${exec-task}' '$(fs-task=task-create)'
> module exec '$(exec-task=task-create)'
> 
> and we'd make rump's initialization use task_set_special_port to set
> the TASK_BOOTSTRAP_PORT special port of ext2fs to a send right to rump,
> and resume it. When ext2fs sees that this port is set, it would use it
> instead of the gnumach-provided _hurd_device_master port to open
> devices.
> 
> And we can nest this yet more for the pci-arbiter:
> 
> module pci-arbiter --disk-server-task='${disk-task}' '$(task-create)' 
> '$(task-resume)'
> module rump --fs-server-task='${fs-task}' '$(disk-task=task-create)'
> module ext2fs --exec-server-task='${exec-task}' '$(fs-task=task-create)'
> module exec '$(exec-task=task-create)'
> 
> and we'd make pci-arbiter's initialization use task_set_special_port
> to set the TASK_BOOTSTRAP_PORT special port of rump to a send right to
> pci-arbiter and resume it. When libpciaccess sees that this port is set,
> it would use it instead of looking up /server/bus/pci.

In my own words, the changes that are needed:

1. libpciaccess needs to check if pci-arbiter's task_bootstrap_port is set
and if it is, use it instead of /servers/bus/pci

2. pci-arbiter needs to call task_set_special_port on rump's TASK_BOOTSTRAP_PORT
if --disk-server-task flag is detected.

3. rumpdisk needs to call task_set_special_port on ext2fs's TASK_BOOTSTRAP_PORT
if --fs-server-task flag is detected.

4. ext2fs will just work in this configuration

I'm unsure if I have this correct.

Can you please elaborate on the above?

Thanks,
Damien



reply via email to

[Prev in Thread] Current Thread [Next in Thread]