On Tue, Sep 08, 2020 at 06:12:19PM +0200, Pavel Hrdina wrote: > On Tue, Sep 08, 2020 at 04:44:38PM +0100, Daniel P. Berrangé wrote: > > On Tue, Sep 08, 2020 at 03:42:58PM +0200, Pavel Hrdina wrote: > > > On Tue, Sep 08, 2020 at 03:50:07PM +0400, Roman Bogorodskiy wrote: > > > > Pavel Hrdina wrote: > > > > > > > > > There was one attempt a year ago done by me to drop HAL [1] but it was > > > > > never resolved. There was another time when Dan suggested to drop HAL > > > > > driver [2] but it was decided to keep it around in case device > > > > > assignment will be implemented for FreeBSD and the fact that > > > > > virt-manager uses node device driver [3]. > > > > > > > > > > I checked git history and code and it doesn't look like bhyve supports > > > > > device assignment so from that POV it should not block removing HAL. > > > > > > > > The bhyve driver currently does not support device assignment. > > > > Bhyve it self does not support live device attach too. > > > > > > > > What bhyve does support is passthru of some device types (I have tested > > > > NIC passthrough and it works, and also it looks like GPU passthrough > > > > also works in some configurations, and also there are some work going on > > > > to make it better). > > > > > > > > I'm wondering if the removal of HAL support will block adding support > > > > for host device passthrough? > > > > > > So I checked qemu driver and we use node device driver only to implement > > > these APIs: > > > > > > virNodeDeviceDettach > > > virNodeDeviceDetachFlags > > > virNodeDeviceReAttach > > > virNodeDeviceReset > > > > > > which can be used by users or management applications to detach the PCI > > > devices from host and prepare them to be used by VMs. This can be done > > > manually not using libvirt APIs as well. > > > > > > So it looks like HAL will not be required to support host device > > > assignment. > > > > That may be true from a strictly technical sense, but most existing mgmt > > applications using libvirt expect the node device APIs to exist and won't > > enable use of host device assignment without them. > > That make sense, so implementing host device assignment will require > working node device driver. > > As it was already stated, it is not currently implemented and there are > no plans to implement it in near future AFAIK. > > HAL driver is deprecated, there is no upstream development and it's > blocking removal of libdbus from libvirt. > > Can we agree on dropping HAL now? We can figure out devd support once > someone starts working on host device assignment support for bhyve. It is fine by me, as it didn't look like the strategically correct future even for FreeBSD - more just a historical curiosity, with 'devd' being the sane option, or the libudev shim aroun devd. Regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|