[Adding rumpkernel-users]
El 19/09/15 a les 01:21, Olaf Buddenhagen ha escrit:
Is there no way to limit the probing to a particular device, though? In the long run, it really seems cleaner to tell the driver, "please try to serve this device", rather than "go out and see whether you can find any devices to your liking..."
See the Linux version of rumpcomp_pci_map() in pci-userspace [1]. IIRC this is used by librumpdev_pci to enumerate available PCI devices. Or if not that function, certainly something in that file ;-) On Linux, this is ultimately determined by UIO module settings (admin tells Linux which devices are available to user-space code, see [2] for UIO setup instructions). When I implemented the GNU/Hurd backend, I observed there's no such thing as Linux' UIO restricting access to PCI devices, so I simply made it use libpciaccess for scanning and blindly accepting anything it finds (not the Linux backend doesn't use libpciaccess at all, it just uses UIO for equivalent functionality). So AFAIK there's no framework to manage which devices are available to Rump, but if one wanted to implement it pci-userspace/src-gnu/ seems the place to do it. [1] https://github.com/rumpkernel/pci-userspace [2] https://github.com/rumpkernel/wiki/wiki/Howto%3A-Accessing-PCI-devices-from-userspace -- Robert Millan