Hello, We are eventually working on the vSMMU implementation. Relying on the talk Will Deacon gave at the Linux Plumbers IOMMU Microconference on October 2014 (http://linuxplumbersconf.org/2014/ocw/proposals/2019), I tried the vSMMU initialization. I have a question about the KVM_DEV_ARM_SMMU_V2_CFG_INIT call. What is exactly expected as parameters ? My guess is, as it is the base address of the vSMMU, it should be the address expected to be the "physical address" of the vSMMU on the guest side. Am I right ? Thanks, Baptiste On Wed, Feb 18, 2015 at 7:56 PM, Will Deacon wrote: > On Wed, Feb 18, 2015 at 05:04:21PM +0000, Baptiste Reynal wrote: > > We are currently working on the ARM SMMU 2-stage support in order to > > expose SMMU capabilities to a guest OS. > > By doing some research, we noticed some work has already be done by Will > > Deacon on exposing virtual IOMMU interface to KVM guest. After going > > through slides and code (on > > git://git.kernel.org/pub/scm/linux/kernel/git/will/linux.git< > http://git.kernel.org/pub/scm/linux/kernel/git/will/linux.git>, > > branch: iommu/vsmmu), we have some questions : > > > > - What is the status of this work ? Is Alex still working on it ? > > I got a reasonable way through implementing something, but ran into a > wall for a few reasons: > > (1) I don't have anything where I can test this (yet) > > (2) Nobody's actually asking for it... > > > - Are there any test case about the current vsmmu implementation ? > > No. > > > - What is exposed to the guest in the current implementation ? > > An emulation of a stage-1 only SMMU. > > > - How do the guest program the stage-1 translation ? > > Just like it would for a physical SMMU. > It's probably easiest if you look at the (incomplete, WIP) code: > > > https://git.kernel.org/cgit/linux/kernel/git/will/linux.git/commit/?h=iommu/vsmmu&id=539dbcb964e5c730791a6a31a4f58ceff4b945c2 > > Anyway, until somebody actually wants this feature I've put it on ice as > it adds a whole bunch of complication to the ARM SMMU driver, as well as > new user ABI extensions that I don't really want to maintain for fun. > > The only murmurs I've heard about IOMMU usage from a guest relate to a > paravirtualised interface, which abstracts the details of the host IOMMU > altogether and allows the translation to be collapsed (which can be > better for TLB utilisation). > > Will >