On Mon, Aug 10, 2020 at 07:32:24AM +0000, Tian, Kevin wrote: > > I would prefer to see that the existing userspace interface have the > > extra needed bits for virtualization (eg by having appropriate > > internal kernel APIs to make this easy) and all the emulation to build > > the synthetic PCI device be done in userspace. > > In the end what decides the direction is the amount of changes that > we have to put in kernel, not whether we call it 'emulation'. No, this is not right. The decision should be based on what will end up more maintable in the long run. Yes it would be more code to dis-aggregate some of the things currently only bundled as uAPI inside VFIO (eg your vSVA argument above) but once it is disaggregated the maintability of the whole solution will be better overall, and more drivers will be able to use this functionality. Jason