Message ID | 1501965437-30730-4-git-send-email-Julia.Lawall@lip6.fr (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Saturday, August 05, 2017 10:37:16 PM Julia Lawall wrote: > The thermal_zone_of_device_ops structure is only passed as the fourth > argument to thermal_zone_of_sensor_register, which is declared as const. > Thus the thermal_zone_of_device_ops structure itself can be const. > > Done with the help of Coccinelle. > > // <smpl> > @r disable optional_qualifier@ > identifier i; > position p; > @@ > static struct thermal_zone_of_device_ops i@p = { ... }; > > @ok1@ > identifier r.i; > expression e1,e2,e3; > position p; > @@ > thermal_zone_of_sensor_register(e1,e2,e3,&i@p) > > @bad@ > position p != {r.p,ok1.p}; > identifier r.i; > struct thermal_zone_of_device_ops e; > @@ > e@i@p > > @depends on !bad disable optional_qualifier@ > identifier r.i; > @@ > static > +const > struct thermal_zone_of_device_ops i = { ... }; > // </smpl> > > Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr> Acked-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> Eduardo/Zhang, Please queue this patch for upstream, thanks! Best regards, -- Bartlomiej Zolnierkiewicz Samsung R&D Institute Poland Samsung Electronics
diff --git a/drivers/thermal/samsung/exynos_tmu.c b/drivers/thermal/samsung/exynos_tmu.c index 7b8ef09..ed805c7 100644 --- a/drivers/thermal/samsung/exynos_tmu.c +++ b/drivers/thermal/samsung/exynos_tmu.c @@ -1286,7 +1286,7 @@ static int exynos_map_dt_data(struct platform_device *pdev) return 0; } -static struct thermal_zone_of_device_ops exynos_sensor_ops = { +static const struct thermal_zone_of_device_ops exynos_sensor_ops = { .get_temp = exynos_get_temp, .set_emul_temp = exynos_tmu_set_emulation, };
The thermal_zone_of_device_ops structure is only passed as the fourth argument to thermal_zone_of_sensor_register, which is declared as const. Thus the thermal_zone_of_device_ops structure itself can be const. Done with the help of Coccinelle. // <smpl> @r disable optional_qualifier@ identifier i; position p; @@ static struct thermal_zone_of_device_ops i@p = { ... }; @ok1@ identifier r.i; expression e1,e2,e3; position p; @@ thermal_zone_of_sensor_register(e1,e2,e3,&i@p) @bad@ position p != {r.p,ok1.p}; identifier r.i; struct thermal_zone_of_device_ops e; @@ e@i@p @depends on !bad disable optional_qualifier@ identifier r.i; @@ static +const struct thermal_zone_of_device_ops i = { ... }; // </smpl> Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr> --- drivers/thermal/samsung/exynos_tmu.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)