Re: [PATCH] vfio: Depend on MMU

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Mar 05, 2021 at 09:46:49AM +0100, Cornelia Huck wrote:
> On Thu, 4 Mar 2021 21:30:03 -0400
> Jason Gunthorpe <jgg@xxxxxxxxxx> wrote:
> 
> > VFIO_IOMMU_TYPE1 does not compile with !MMU:
> > 
> > ../drivers/vfio/vfio_iommu_type1.c: In function 'follow_fault_pfn':
> > ../drivers/vfio/vfio_iommu_type1.c:536:22: error: implicit declaration of function 'pte_write'; did you mean 'vfs_write'? [-Werror=implicit-function-declaration]
> > 
> > So require it.
> > 
> > Suggested-by: Cornelia Huck <cohuck@xxxxxxxxxx>
> > Signed-off-by: Jason Gunthorpe <jgg@xxxxxxxxxx>
> >  drivers/vfio/Kconfig | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> > 
> > diff --git a/drivers/vfio/Kconfig b/drivers/vfio/Kconfig
> > index 90c0525b1e0cf4..67d0bf4efa1606 100644
> > +++ b/drivers/vfio/Kconfig
> > @@ -22,7 +22,7 @@ config VFIO_VIRQFD
> >  menuconfig VFIO
> >  	tristate "VFIO Non-Privileged userspace driver framework"
> >  	select IOMMU_API
> > -	select VFIO_IOMMU_TYPE1 if (X86 || S390 || ARM || ARM64)
> > +	select VFIO_IOMMU_TYPE1 if MMU && (X86 || S390 || ARM || ARM64)
> >  	help
> >  	  VFIO provides a framework for secure userspace device drivers.
> >  	  See Documentation/driver-api/vfio.rst for more details.
> 
> Actually, I'm wondering how much sense vfio makes on !MMU at all? (And
> maybe just merge this with your patch that switches IOMMU_API from a
> depend to a select, because that is the change that makes the MMU
> dependency required?)

Why does changing depend to select affect MMU vs !MMU? Am I missing
something?

It looks like IOMMU_API can be turned with ARM !MMU here, for
instance:

config MSM_IOMMU
        bool "MSM IOMMU Support"
        depends on ARM
        depends on ARCH_MSM8X60 || ARCH_MSM8960 || COMPILE_TEST
        select IOMMU_API

Generally with !MMU I try to ignore it as much as possible unless
things don't compile, as I have no idea what people use it for :)

Jason



[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux