On Wed, Aug 31, 2016 at 10:05:25AM +0200, Julia Lawall wrote: > Check for rtc_class_ops structures that are only passed to > devm_rtc_device_register, rtc_device_register, > platform_device_register_data, all of which declare the corresponding > parameter as const. Declare rtc_class_ops structures that have these > properties as const. > > The semantic patch that makes this change is as follows: > (http://coccinelle.lip6.fr/) > > // > @r disable optional_qualifier@ > identifier i; > position p; > @@ > static struct rtc_class_ops i@p = { ... }; > > @ok@ > identifier r.i; > expression e1,e2,e3,e4; > position p; > @@ > ( > devm_rtc_device_register(e1,e2,&i@p,e3) > | > rtc_device_register(e1,e2,&i@p,e3) > | > platform_device_register_data(e1,e2,e3,&i@p,e4) > ) > > @bad@ > position p != {r.p,ok.p}; > identifier r.i; > @@ > i@p > > @depends on !bad disable optional_qualifier@ > identifier r.i; > @@ > static > +const > struct rtc_class_ops i = { ... }; > // > > Signed-off-by: Julia Lawall [...] > drivers/rtc/rtc-tegra.c | 2 +- [...] Acked-by: Thierry Reding