Messages in this thread Patch in this message | | | From | Bhumika Goyal <> | Subject | [PATCH] drm: etnaviv: constify etnaviv_iommu_ops structures | Date | Mon, 16 Jan 2017 00:20:28 +0530 |
| |
Declare etnaviv_iommu_ops structure as const as it is only used when the reference of one of its field is stored in the ops field of a iommu_domain structure. This ops field is of type const, so etnaviv_iommu_ops structures having similar properties can be declared const too. Done using Coccinelle:
@r1 disable optional_qualifier@ identifier i; position p; @@ static struct etnaviv_iommu_ops i@p={...};
@ok1@ identifier r1.i; position p; struct etnaviv_iommu_domain x; @@ x.domain.ops=&i@p.ops;
@bad@ position p!={r1.p,ok1.p}; identifier r1.i; @@ i@p
@depends on !bad disable optional_qualifier@ identifier r1.i; @@ +const struct etnaviv_iommu_ops i;
Before and after size details of .o file remains the same after cross compiling for arm architecture.
Signed-off-by: Bhumika Goyal <bhumirks@gmail.com> --- drivers/gpu/drm/etnaviv/etnaviv_iommu.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/etnaviv/etnaviv_iommu.c b/drivers/gpu/drm/etnaviv/etnaviv_iommu.c index 81f1583..7a7c97f 100644 --- a/drivers/gpu/drm/etnaviv/etnaviv_iommu.c +++ b/drivers/gpu/drm/etnaviv/etnaviv_iommu.c @@ -184,7 +184,7 @@ static void etnaviv_iommuv1_dump(struct iommu_domain *domain, void *buf) memcpy(buf, etnaviv_domain->pgtable.pgtable, PT_SIZE); } -static struct etnaviv_iommu_ops etnaviv_iommu_ops = { +static const struct etnaviv_iommu_ops etnaviv_iommu_ops = { .ops = { .domain_free = etnaviv_domain_free, .map = etnaviv_iommuv1_map, -- 1.9.1
| |