All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] ddbridge: constify i2c_algorithm structure
@ 2017-07-10  1:15 Gustavo A. R. Silva
  2017-07-10 15:16 ` Daniel Scheller
  0 siblings, 1 reply; 3+ messages in thread
From: Gustavo A. R. Silva @ 2017-07-10  1:15 UTC (permalink / raw)
  To: Mauro Carvalho Chehab; +Cc: linux-media, linux-kernel, Gustavo A. R. Silva

Check for i2c_algorithm structures that are only stored in
the algo field of an i2c_adapter structure. This field is
declared const, so i2c_algorithm structures that have this
property can be declared as const also.

This issue was identified using Coccinelle and the following
semantic patch:

@r disable optional_qualifier@
identifier i;
position p;
@@
static struct i2c_algorithm i@p = { ... };

@ok@
identifier r.i;
struct i2c_adapter e;
position p;
@@
e.algo = &i@p;

@bad@
position p != {r.p,ok.p};
identifier r.i;
@@
i@p

@depends on !bad disable optional_qualifier@
identifier r.i;
@@
static
+const
 struct i2c_algorithm i = { ... };

Signed-off-by: Gustavo A. R. Silva <garsilva@embeddedor.com>
---
 drivers/media/pci/ddbridge/ddbridge-core.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/media/pci/ddbridge/ddbridge-core.c b/drivers/media/pci/ddbridge/ddbridge-core.c
index cd1723e..9663a4c 100644
--- a/drivers/media/pci/ddbridge/ddbridge-core.c
+++ b/drivers/media/pci/ddbridge/ddbridge-core.c
@@ -200,7 +200,7 @@ static u32 ddb_i2c_functionality(struct i2c_adapter *adap)
 	return I2C_FUNC_SMBUS_EMUL;
 }
 
-static struct i2c_algorithm ddb_i2c_algo = {
+static const struct i2c_algorithm ddb_i2c_algo = {
 	.master_xfer   = ddb_i2c_master_xfer,
 	.functionality = ddb_i2c_functionality,
 };
-- 
2.5.0

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] ddbridge: constify i2c_algorithm structure
  2017-07-10  1:15 [PATCH] ddbridge: constify i2c_algorithm structure Gustavo A. R. Silva
@ 2017-07-10 15:16 ` Daniel Scheller
  2017-07-17  4:10   ` Gustavo A. R. Silva
  0 siblings, 1 reply; 3+ messages in thread
From: Daniel Scheller @ 2017-07-10 15:16 UTC (permalink / raw)
  To: Gustavo A. R. Silva, Mauro Carvalho Chehab; +Cc: linux-media, linux-kernel

Am Sun, 9 Jul 2017 20:15:36 -0500
schrieb "Gustavo A. R. Silva" <garsilva@embeddedor.com>:

> Check for i2c_algorithm structures that are only stored in
> the algo field of an i2c_adapter structure. This field is
> declared const, so i2c_algorithm structures that have this
> property can be declared as const also.
> 
> This issue was identified using Coccinelle and the following
> semantic patch:
> 
> @r disable optional_qualifier@
> identifier i;
> position p;
> @@
> static struct i2c_algorithm i@p = { ... };
> 
> @ok@
> identifier r.i;
> struct i2c_adapter e;
> position p;
> @@
> e.algo = &i@p;
> 
> @bad@
> position p != {r.p,ok.p};
> identifier r.i;
> @@
> i@p
> 
> @depends on !bad disable optional_qualifier@
> identifier r.i;
> @@
> static
> +const
>  struct i2c_algorithm i = { ... };
> 
> Signed-off-by: Gustavo A. R. Silva <garsilva@embeddedor.com>
> ---
>  drivers/media/pci/ddbridge/ddbridge-core.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/media/pci/ddbridge/ddbridge-core.c
> b/drivers/media/pci/ddbridge/ddbridge-core.c index cd1723e..9663a4c
> 100644 --- a/drivers/media/pci/ddbridge/ddbridge-core.c
> +++ b/drivers/media/pci/ddbridge/ddbridge-core.c
> @@ -200,7 +200,7 @@ static u32 ddb_i2c_functionality(struct
> i2c_adapter *adap) return I2C_FUNC_SMBUS_EMUL;
>  }
>  
> -static struct i2c_algorithm ddb_i2c_algo = {
> +static const struct i2c_algorithm ddb_i2c_algo = {
>  	.master_xfer   = ddb_i2c_master_xfer,
>  	.functionality = ddb_i2c_functionality,
>  };

Hi Gustavo,
Hi all,

please hold this single one patch from the constify patches back for
now, since we're in the process of bumping the whole driver to a newer
version which involves lots of code shuffling. With this, quite some
GIT rebasing work needs to be done, and adding this one liner at a
later time (thus rebasing it) is way easier.

To be sure this will not be forgotten afterwards, I've already posted a
patch applying the exact change at [1].

Thank you very much!

[1] https://patchwork.linuxtv.org/patch/42393/

Best regards,
Daniel Scheller
-- 
https://github.com/herrnst

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] ddbridge: constify i2c_algorithm structure
  2017-07-10 15:16 ` Daniel Scheller
@ 2017-07-17  4:10   ` Gustavo A. R. Silva
  0 siblings, 0 replies; 3+ messages in thread
From: Gustavo A. R. Silva @ 2017-07-17  4:10 UTC (permalink / raw)
  To: Daniel Scheller, Mauro Carvalho Chehab; +Cc: linux-media, linux-kernel

Hi Daniel,


On 07/10/2017 10:16 AM, Daniel Scheller wrote:
> Am Sun, 9 Jul 2017 20:15:36 -0500
> schrieb "Gustavo A. R. Silva" <garsilva@embeddedor.com>:
>
>> Check for i2c_algorithm structures that are only stored in
>> the algo field of an i2c_adapter structure. This field is
>> declared const, so i2c_algorithm structures that have this
>> property can be declared as const also.
>>
>> This issue was identified using Coccinelle and the following
>> semantic patch:
>>
>> @r disable optional_qualifier@
>> identifier i;
>> position p;
>> @@
>> static struct i2c_algorithm i@p = { ... };
>>
>> @ok@
>> identifier r.i;
>> struct i2c_adapter e;
>> position p;
>> @@
>> e.algo = &i@p;
>>
>> @bad@
>> position p != {r.p,ok.p};
>> identifier r.i;
>> @@
>> i@p
>>
>> @depends on !bad disable optional_qualifier@
>> identifier r.i;
>> @@
>> static
>> +const
>>   struct i2c_algorithm i = { ... };
>>
>> Signed-off-by: Gustavo A. R. Silva <garsilva@embeddedor.com>
>> ---
>>   drivers/media/pci/ddbridge/ddbridge-core.c | 2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/media/pci/ddbridge/ddbridge-core.c
>> b/drivers/media/pci/ddbridge/ddbridge-core.c index cd1723e..9663a4c
>> 100644 --- a/drivers/media/pci/ddbridge/ddbridge-core.c
>> +++ b/drivers/media/pci/ddbridge/ddbridge-core.c
>> @@ -200,7 +200,7 @@ static u32 ddb_i2c_functionality(struct
>> i2c_adapter *adap) return I2C_FUNC_SMBUS_EMUL;
>>   }
>>   
>> -static struct i2c_algorithm ddb_i2c_algo = {
>> +static const struct i2c_algorithm ddb_i2c_algo = {
>>   	.master_xfer   = ddb_i2c_master_xfer,
>>   	.functionality = ddb_i2c_functionality,
>>   };
> Hi Gustavo,
> Hi all,
>
> please hold this single one patch from the constify patches back for
> now, since we're in the process of bumping the whole driver to a newer
> version which involves lots of code shuffling. With this, quite some
> GIT rebasing work needs to be done, and adding this one liner at a
> later time (thus rebasing it) is way easier.
>
> To be sure this will not be forgotten afterwards, I've already posted a
> patch applying the exact change at [1].
>
> Thank you very much!
>
> [1] https://patchwork.linuxtv.org/patch/42393/

Thank you!

-- 
Gustavo A. R. Silva

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2017-07-17  4:34 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-07-10  1:15 [PATCH] ddbridge: constify i2c_algorithm structure Gustavo A. R. Silva
2017-07-10 15:16 ` Daniel Scheller
2017-07-17  4:10   ` 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.