On Wed, 9 Nov 2016 15:25:16 +0000 Ilya Lesokhin <ilyal@xxxxxxxxxxxx> wrote: > > -----Original Message----- > > From: Alex Williamson [mailto:alex.williamson@xxxxxxxxxx] > > Sent: Wednesday, November 09, 2016 5:08 PM > > To: Ilya Lesokhin <ilyal@xxxxxxxxxxxx> > > Cc: linux-pci@xxxxxxxxxxxxxxx; kvm@xxxxxxxxxxxxxxx; bhelgaas@xxxxxxxxxx; > > Adi Menachem <adim@xxxxxxxxxxxx> > > Subject: Re: Shouldn't VFIO virtualize the ATS capability? > > > > On Wed, 9 Nov 2016 14:49:02 +0000 > > Ilya Lesokhin <ilyal@xxxxxxxxxxxx> wrote: > > > > > I would virtualize the "ATS Control Register". > > > > And do what? > I think it should be read only. That would violate the spec, in which case it shouldn't be virtualized, the capability should be hidden. > > > Regarding poor behavior, I couldn't really find what happens when ATS is > > misconfigured, but I would assume it can cause problems. > > > The scenarios I'm concerned about are: > > > 1. The guest enables translation caching, while the hypervisor thinks > > there are disabled -> Hypervisor won't issue invalidations. > > > > Aren't invalidations issued by the iommu, why does the hypervisor need to > > participate? How would a software entity induce an invalidation? > That's what one might expect from a sane design, but > http://lxr.free-electrons.com/source/drivers/iommu/intel-iommu.c?v=4.8#L1549 > seems to imply otherwise :( > > > > > 2. Smallest Translation Unit misconfiguration. Not sure if it will cause > > invalid access or only poor caching behavior. > > > > > > Thanks, > > > Ilya > > > > > > > -----Original Message----- > > > > From: Alex Williamson [mailto:alex.williamson@xxxxxxxxxx] > > > > Sent: Sunday, November 06, 2016 7:09 PM > > > > To: Ilya Lesokhin <ilyal@xxxxxxxxxxxx> > > > > Cc: linux-pci@xxxxxxxxxxxxxxx; kvm@xxxxxxxxxxxxxxx; > > > > bhelgaas@xxxxxxxxxx > > > > Subject: Re: Shouldn't VFIO virtualize the ATS capability? > > > > > > > > On Sun, 6 Nov 2016 11:13:09 +0000 > > > > Ilya Lesokhin <ilyal@xxxxxxxxxxxx> wrote: > > > > > > > > > Hi > > > > > I've noticed that VFIO doesn't virtualize the ATS capability. > > > > > It seems to me that translation caching and Smallest Translation > > > > > Unit is > > > > something you would want to control on the host. Am I wrong? > > > > > > > > What about those fields would we virtualize? Why does the host need > > > > to be an intermediary? Can the user induce poor behavior with > > > > direct access to them? Thanks, > > > > > > > > Alex > -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html