On 9/3/2016 5:27 AM, Laine Stump wrote: > On 09/02/2016 05:44 PM, Paolo Bonzini wrote: >> >> >> On 02/09/2016 22:19, John Ferlan wrote: >>> We don't have such a pool for GPU's (yet) - although I suppose they >>> could just become a class of storage pools. >>> >>> The issue being nodedev device objects are not saved between reboots. >>> They are generated on the fly. Hence the "create-nodedev' API - notice >>> there's no "define-nodedev' API, although I suppose one could be >>> created. It's just more work to get this all to work properly. >> >> It can all be made transient to begin with. The VM can be defined but >> won't start unless the mdev(s) exist with the right UUIDs. >> >>>> After creating the vGPU, if required by the host driver, all the other >>>> type ids would disappear from "virsh nodedev-dumpxml >>>> pci_0000_86_00_0" too. >>> >>> Not wanting to make assumptions, but this reads as if I create one type >>> 11 vGPU, then I can create no others on the host. Maybe I'm reading it >>> wrong - it's been a long week. >> >> Correct, at least for NVIDIA. >> >>> PCI devices have the "managed='yes|no'" attribute as well. That's what >>> determines whether the device is to be detached from the host or not. >>> That's been something very painful to manage for vfio and well libvirt! >> >> mdevs do not exist on the host (they do not have a driver on the host >> because they are not PCI devices) so they do need any management. At >> least I hope that's good news. :) > > What's your definition of "management"? They don't need the same type of > management as a traditional hostdev, but they certainly don't just > appear by magic! :-) > > For standard PCI devices, the managed attribute says whether or not the > device needs to be detached from the host driver and attached to > vfio-pci. For other kinds of hostdev devices, we could decide that it > meant something different. In this case, perhaps managed='yes' could > mean that the vGPU will be created as needed, and destroyed when the > guest is finished with it, and managed='no' could mean that we expect a > vGPU to already exist, and just need starting. > > Or not. Maybe that's a pointless distinction in this case. Just pointing > out the option... > Mediated devices are like virtual device, there could be no direct physical device associated with it. All mdev devices are owned by vfio_mdev module, which is similar to vfio_pci module. I don't think we need to interpret 'managed' attribute for mdev devices same as standard PCI devices. If mdev device is created, you would find the device directory in /sys/bus/mdev/devices/ directory. Kirti. -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list