On Tue, Aug 23, 2011 at 01:08:29PM -0400, Alex Williamson wrote: > On Tue, 2011-08-23 at 15:14 +0200, Roedel, Joerg wrote:
> > Handling it through fds is a good idea. This makes sure that everything > > belongs to one process. I am not really sure yet if we go the way to > > just bind plain groups together or if we create meta-groups. The > > meta-groups thing seems somewhat cleaner, though. > > I'm leaning towards binding because we need to make it dynamic, but I > don't really have a good picture of the lifecycle of a meta-group. In my view the life-cycle of the meta-group is a subrange of the qemu-instance's life-cycle. > > Putting the process to sleep (which would be uninterruptible) seems bad. > > The process would sleep until the guest releases the device-group, which > > can take days or months. > > The best thing (and the most intrusive :-) ) is to change PCI core to > > allow unbindings to fail, I think. But this probably further complicates > > the way to upstream VFIO... > > Yes, it's not ideal but I think it's sufficient for now and if we later > get support for returning an error from release, we can set a timeout > after notifying the user to make use of that. Thanks, Ben had the idea of just forcing to hard-unplug this device from the guest. Thats probably the best way to deal with that, I think. VFIO sends a notification to qemu that the device is gone and qemu informs the guest in some way about it. Joerg -- AMD Operating System Research Center Advanced Micro Devices GmbH Einsteinring 24 85609 Dornach General Managers: Alberto Bozzo, Andrew Bowd Registration: Dornach, Landkr. Muenchen; Registerger. Muenchen, HRB Nr. 43632