[RFC PATCH v6 03/20] iommu/arm-smmu: add IOMMU_CAP_NOEXEC to the ARM SMMU driver
Subsystems:
iommu subsystem, the rest
STALE4404d
4 messages,
3 authors,
2014-06-16 · open the first message on its own page
The ARM SMMU supports the IOMMU_NOEXEC protection flag. Add the
corresponding IOMMU capability.
Signed-off-by: Antonios Motakis <redacted>
---
drivers/iommu/arm-smmu.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/iommu/arm-smmu.c b/drivers/iommu/arm-smmu.c
index d5a2200..15ab2af 100644
--- a/drivers/iommu/arm-smmu.c
+++ b/drivers/iommu/arm-smmu.c
@@ -1544,6 +1544,8 @@ static int arm_smmu_domain_has_cap(struct iommu_domain *domain,
if (smmu_domain->root_cfg.smmu->features & ARM_SMMU_FEAT_COHERENT_WALK)
caps |= IOMMU_CAP_CACHE_COHERENCY;
+ caps |= IOMMU_CAP_NOEXEC;
+
return !!(cap & caps);
}
--
1.8.3.2
On Thu, Jun 05, 2014 at 06:03:11PM +0100, Antonios Motakis wrote:
quoted hunk
The ARM SMMU supports the IOMMU_NOEXEC protection flag. Add the
corresponding IOMMU capability.
Signed-off-by: Antonios Motakis <redacted>
---
drivers/iommu/arm-smmu.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/iommu/arm-smmu.c b/drivers/iommu/arm-smmu.c
index d5a2200..15ab2af 100644
--- a/drivers/iommu/arm-smmu.c
+++ b/drivers/iommu/arm-smmu.c
@@ -1544,6 +1544,8 @@ static int arm_smmu_domain_has_cap(struct iommu_domain *domain,
if (smmu_domain->root_cfg.smmu->features & ARM_SMMU_FEAT_COHERENT_WALK)
caps |= IOMMU_CAP_CACHE_COHERENCY;
+ caps |= IOMMU_CAP_NOEXEC;
+
Just initialise caps to IOMMU_CAP_NOEXEC.
Will
On Mon, 2014-06-16 at 16:04 +0100, Will Deacon wrote:
On Thu, Jun 05, 2014 at 06:03:11PM +0100, Antonios Motakis wrote:
quoted
The ARM SMMU supports the IOMMU_NOEXEC protection flag. Add the
corresponding IOMMU capability.
Signed-off-by: Antonios Motakis <redacted>
---
drivers/iommu/arm-smmu.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/iommu/arm-smmu.c b/drivers/iommu/arm-smmu.c
index d5a2200..15ab2af 100644
--- a/drivers/iommu/arm-smmu.c
+++ b/drivers/iommu/arm-smmu.c
@@ -1544,6 +1544,8 @@ static int arm_smmu_domain_has_cap(struct iommu_domain *domain,
if (smmu_domain->root_cfg.smmu->features & ARM_SMMU_FEAT_COHERENT_WALK)
caps |= IOMMU_CAP_CACHE_COHERENCY;
+ caps |= IOMMU_CAP_NOEXEC;
+
Just initialise caps to IOMMU_CAP_NOEXEC.
No, it shouldn't be a bitmap in the first place. Thanks,
Alex
On Mon, Jun 16, 2014 at 04:25:28PM +0100, Alex Williamson wrote:
On Mon, 2014-06-16 at 16:04 +0100, Will Deacon wrote:
quoted
On Thu, Jun 05, 2014 at 06:03:11PM +0100, Antonios Motakis wrote:
quoted
The ARM SMMU supports the IOMMU_NOEXEC protection flag. Add the
corresponding IOMMU capability.
Signed-off-by: Antonios Motakis <redacted>
---
drivers/iommu/arm-smmu.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/iommu/arm-smmu.c b/drivers/iommu/arm-smmu.c
index d5a2200..15ab2af 100644
--- a/drivers/iommu/arm-smmu.c
+++ b/drivers/iommu/arm-smmu.c
@@ -1544,6 +1544,8 @@ static int arm_smmu_domain_has_cap(struct iommu_domain *domain,
if (smmu_domain->root_cfg.smmu->features & ARM_SMMU_FEAT_COHERENT_WALK)
caps |= IOMMU_CAP_CACHE_COHERENCY;
+ caps |= IOMMU_CAP_NOEXEC;
+
Just initialise caps to IOMMU_CAP_NOEXEC.
No, it shouldn't be a bitmap in the first place. Thanks,
Ah, ok. I probably led Antonios down the garden path with the ARM SMMU
driver then. Apologies!
Will