Damien Zammit, le sam. 14 nov. 2020 17:59:30 +1100, a ecrit: > > youpi: pci-arbiter could be exposed as a device name in the master device > > port and the userland pci-arbiter running on /server/bus/pci can try to > > open that > > youpi: just like netdde tries to open eth0 to check whether there are > > already device drivers in gnumach, in which case it shouldn't handle > > network cards > > youpi: in the end, when we know for sure that pci-arbiter is run as a > > bootstrap translator, we can make /server/bus/pci a mere device node > > How do i make a bootstrap translator such as pci-arbiter expose a device name > in the master device port?
By registering it with machdev_register, like you already did for rumpdisk. The idea is that the "master device port" that applications see is just a chain of master. Applications get it from the / ext2fs, but ext2fs got it from rumpdisk, whose ds_device_open catchs device_open calls on wd*, and otherwise calls device_open on its own master port, gotten from the previous translator in the bootstrap chain, which will now be pci-arbiter, which itself will catch device_open calls on pci, and otherwise calls device_open on its own master port, gotten from the kernel. Samuel