* [PATCH] watchdog: ts72xx_wdt: constify watchdog_ops structure
@ 2017-07-08 0:18 Gustavo A. R. Silva
2017-07-08 1:44 ` Guenter Roeck
0 siblings, 1 reply; 3+ messages in thread
From: Gustavo A. R. Silva @ 2017-07-08 0:18 UTC (permalink / raw)
To: Wim Van Sebroeck, Guenter Roeck
Cc: linux-watchdog, linux-kernel, Gustavo A. R. Silva
Check for watchdog_ops structures that are only stored in the ops field of
a watchdog_device structure. This field is declared const, so watchdog_ops
structures that have this property can be declared as const also.
This issue was detected using Coccinelle and the following semantic patch:
@r
disable optional_qualifier@
identifier i;
position p;
@@
static struct watchdog_ops i@p = { ... };
@ok@
identifier r.i;
struct watchdog_device e;
position p;
@@
e.ops = &i@p;
@bad@
position p != {r.p,ok.p};
identifier r.i;
struct watchdog_ops e;
@@
e@i@p
@depends on !bad disable optional_qualifier@
identifier r.i;
@@
static
+const
struct watchdog_ops i = { ... };
Signed-off-by: Gustavo A. R. Silva <garsilva@embeddedor.com>
---
drivers/watchdog/ts72xx_wdt.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/watchdog/ts72xx_wdt.c b/drivers/watchdog/ts72xx_wdt.c
index 17c25da..811e43c 100644
--- a/drivers/watchdog/ts72xx_wdt.c
+++ b/drivers/watchdog/ts72xx_wdt.c
@@ -112,7 +112,7 @@ static const struct watchdog_info ts72xx_wdt_ident = {
.identity = "TS-72XX WDT",
};
-static struct watchdog_ops ts72xx_wdt_ops = {
+static const struct watchdog_ops ts72xx_wdt_ops = {
.owner = THIS_MODULE,
.start = ts72xx_wdt_start,
.stop = ts72xx_wdt_stop,
--
2.5.0
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] watchdog: ts72xx_wdt: constify watchdog_ops structure
2017-07-08 0:18 [PATCH] watchdog: ts72xx_wdt: constify watchdog_ops structure Gustavo A. R. Silva
@ 2017-07-08 1:44 ` Guenter Roeck
2017-07-17 4:02 ` Gustavo A. R. Silva
0 siblings, 1 reply; 3+ messages in thread
From: Guenter Roeck @ 2017-07-08 1:44 UTC (permalink / raw)
To: Gustavo A. R. Silva, Wim Van Sebroeck; +Cc: linux-watchdog, linux-kernel
On 07/07/2017 05:18 PM, Gustavo A. R. Silva wrote:
> Check for watchdog_ops structures that are only stored in the ops field of
> a watchdog_device structure. This field is declared const, so watchdog_ops
> structures that have this property can be declared as const also.
>
> This issue was detected using Coccinelle and the following semantic patch:
>
> @r
> disable optional_qualifier@
> identifier i;
> position p;
> @@
> static struct watchdog_ops i@p = { ... };
>
> @ok@
> identifier r.i;
> struct watchdog_device e;
> position p;
> @@
> e.ops = &i@p;
>
> @bad@
> position p != {r.p,ok.p};
> identifier r.i;
> struct watchdog_ops e;
> @@
> e@i@p
>
> @depends on !bad disable optional_qualifier@
> identifier r.i;
> @@
> static
> +const
> struct watchdog_ops i = { ... };
>
> Signed-off-by: Gustavo A. R. Silva <garsilva@embeddedor.com>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
> ---
> drivers/watchdog/ts72xx_wdt.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/watchdog/ts72xx_wdt.c b/drivers/watchdog/ts72xx_wdt.c
> index 17c25da..811e43c 100644
> --- a/drivers/watchdog/ts72xx_wdt.c
> +++ b/drivers/watchdog/ts72xx_wdt.c
> @@ -112,7 +112,7 @@ static const struct watchdog_info ts72xx_wdt_ident = {
> .identity = "TS-72XX WDT",
> };
>
> -static struct watchdog_ops ts72xx_wdt_ops = {
> +static const struct watchdog_ops ts72xx_wdt_ops = {
> .owner = THIS_MODULE,
> .start = ts72xx_wdt_start,
> .stop = ts72xx_wdt_stop,
>
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] watchdog: ts72xx_wdt: constify watchdog_ops structure
2017-07-08 1:44 ` Guenter Roeck
@ 2017-07-17 4:02 ` Gustavo A. R. Silva
0 siblings, 0 replies; 3+ messages in thread
From: Gustavo A. R. Silva @ 2017-07-17 4:02 UTC (permalink / raw)
To: Guenter Roeck, Wim Van Sebroeck; +Cc: linux-watchdog, linux-kernel
On 07/07/2017 08:44 PM, Guenter Roeck wrote:
> On 07/07/2017 05:18 PM, Gustavo A. R. Silva wrote:
>> Check for watchdog_ops structures that are only stored in the ops
>> field of
>> a watchdog_device structure. This field is declared const, so
>> watchdog_ops
>> structures that have this property can be declared as const also.
>>
>> This issue was detected using Coccinelle and the following semantic
>> patch:
>>
>> @r
>> disable optional_qualifier@
>> identifier i;
>> position p;
>> @@
>> static struct watchdog_ops i@p = { ... };
>>
>> @ok@
>> identifier r.i;
>> struct watchdog_device e;
>> position p;
>> @@
>> e.ops = &i@p;
>>
>> @bad@
>> position p != {r.p,ok.p};
>> identifier r.i;
>> struct watchdog_ops e;
>> @@
>> e@i@p
>>
>> @depends on !bad disable optional_qualifier@
>> identifier r.i;
>> @@
>> static
>> +const
>> struct watchdog_ops i = { ... };
>>
>> Signed-off-by: Gustavo A. R. Silva <garsilva@embeddedor.com>
>
> Reviewed-by: Guenter Roeck <linux@roeck-us.net>
>
Thank you, Guenter.
>> ---
>> drivers/watchdog/ts72xx_wdt.c | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/watchdog/ts72xx_wdt.c
>> b/drivers/watchdog/ts72xx_wdt.c
>> index 17c25da..811e43c 100644
>> --- a/drivers/watchdog/ts72xx_wdt.c
>> +++ b/drivers/watchdog/ts72xx_wdt.c
>> @@ -112,7 +112,7 @@ static const struct watchdog_info
>> ts72xx_wdt_ident = {
>> .identity = "TS-72XX WDT",
>> };
>> -static struct watchdog_ops ts72xx_wdt_ops = {
>> +static const struct watchdog_ops ts72xx_wdt_ops = {
>> .owner = THIS_MODULE,
>> .start = ts72xx_wdt_start,
>> .stop = ts72xx_wdt_stop,
>>
>
--
Gustavo A. R. Silva
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2017-07-17 4:02 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-07-08 0:18 [PATCH] watchdog: ts72xx_wdt: constify watchdog_ops structure Gustavo A. R. Silva
2017-07-08 1:44 ` Guenter Roeck
2017-07-17 4:02 ` Gustavo A. R. Silva
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.