[PATCH] iommu/ipmmu-vmsa: change IOMMU_EXEC to IOMMU_NOEXEC

Laurent Pinchart laurent.pinchart at ideasonboard.com
Mon Dec 15 10:37:18 PST 2014


Hi Geert,

On Monday 15 December 2014 11:45:27 Geert Uytterhoeven wrote:
> On Sun, Dec 14, 2014 at 1:55 AM, Laurent Pinchart wrote:
> > The IOMMU_EXEC flag has been renamed to IOMMU_NOEXEC by commit
> 
> ... inverted and replaced by ...
> 
> At first I hadn't noticed this, and was wondering about the seemingly
> unrelated change in the first hunk.

Good point. I'll submit a v2.

> > a720b41c41f5a7e4 ("iommu/arm-smmu: change IOMMU_EXEC to IOMMU_NOEXEC").
> > Update the driver accordingly.
> > 
> > Signed-off-by: Laurent Pinchart
> > <laurent.pinchart+renesas at ideasonboard.com>
> > ---
> > 
> >  drivers/iommu/ipmmu-vmsa.c | 6 +++---
> >  1 file changed, 3 insertions(+), 3 deletions(-)
> > 
> > This fixes a build breakage in Linus' master branch introduce by the
> > commit mentioned above.
> > 
> > diff --git a/drivers/iommu/ipmmu-vmsa.c b/drivers/iommu/ipmmu-vmsa.c
> > index e5ed0216929f..7a1bcf6627b6 100644
> > --- a/drivers/iommu/ipmmu-vmsa.c
> > +++ b/drivers/iommu/ipmmu-vmsa.c
> > @@ -558,7 +558,7 @@ static pmd_t *ipmmu_alloc_pmd(struct ipmmu_vmsa_device
> > *mmu, pgd_t *pgd,
> >  static u64 ipmmu_page_prot(unsigned int prot, u64 type)
> >  {
> > -       u64 pgprot = ARM_VMSA_PTE_XN | ARM_VMSA_PTE_nG | ARM_VMSA_PTE_AF
> > +       u64 pgprot = ARM_VMSA_PTE_nG | ARM_VMSA_PTE_AF
> >                    | ARM_VMSA_PTE_SH_IS | ARM_VMSA_PTE_AP_UNPRIV
> >                    | ARM_VMSA_PTE_NS | type;
> > @@ -568,8 +568,8 @@ static u64 ipmmu_page_prot(unsigned int prot, u64
> > type)
> >         if (prot & IOMMU_CACHE)
> >                 pgprot |= IMMAIR_ATTR_IDX_WBRWA <<
> >                 ARM_VMSA_PTE_ATTRINDX_SHIFT;
> > -       if (prot & IOMMU_EXEC)
> > -               pgprot &= ~ARM_VMSA_PTE_XN;
> > +       if (prot & IOMMU_NOEXEC)
> > +               pgprot |= ARM_VMSA_PTE_XN;
> >         else if (!(prot & (IOMMU_READ | IOMMU_WRITE)))
> >                 /* If no access create a faulting entry to avoid TLB
> >                 fills. */
> >                 pgprot &= ~ARM_VMSA_PTE_PAGE;

-- 
Regards,

Laurent Pinchart




More information about the linux-arm-kernel mailing list