On Jun 24, 2014, at 12:26 , Martin Polednik <mpole...@redhat.com> wrote:

> Hello,
> 
> I'm actively working on getting host device passthrough (pci, usb and scsi)
> exposed in VDSM, but I've encountered growing complexity of this feature.
> 
> The devices are currently created in the same manner as virtual devices and
> their reporting is done via hostDevices list in getCaps. As I implemented 
> usb and scsi devices, the size of this list grew almost twice - and that is
> on a laptop.
> 
> Similar problem is with the devices themselves, they are closely tied to host
> and currently, engine would have to keep their mapping to VMs, reattach back
> loose devices and handle all of this in case of migration.
> 
> I would like to hear your opinion on building something like host device pool
> in VDSM. The pool would be populated and periodically updated (to handle 
> hot(un)plugs) and VMs/engine could query it for free/assigned/possibly 
> problematic
> devices (which could be reattached by the pool). This has added benefit of 
> requiring fewer libvirt calls, but a bit more complexity and possibly one 
> thread.
> The persistence of the pool on VDSM restart could be kept in config or 
> constructed
> from XML.

best would be if we can live without too much persistence. Can we find out the 
actual state of things including VM mapping on vdsm startup?

> 
> I'd need new API verbs to allow engine to communicate with the pool, 
> possibly leaving caps as they are and engine could detect the presence of 
> newer
> vdsm by presence of these API verbs. The vmCreate call would remain almost the
> same, only with the addition of new device for VMs (where the detach and 
> tracking
> routine would be communicated with the pool).
> _______________________________________________
> Devel mailing list
> Devel@ovirt.org
> http://lists.ovirt.org/mailman/listinfo/devel

_______________________________________________
Devel mailing list
Devel@ovirt.org
http://lists.ovirt.org/mailman/listinfo/devel

Reply via email to