* [PATCH] power: add const to bin_attribute structures
@ 2017-08-02 10:29 Bhumika Goyal
2017-08-02 14:25 ` Bhumika Goyal
2017-08-09 15:49 ` Sebastian Reichel
0 siblings, 2 replies; 3+ messages in thread
From: Bhumika Goyal @ 2017-08-02 10:29 UTC (permalink / raw)
To: julia.lawall, sre, linux-pm, linux-kernel; +Cc: Bhumika Goyal
Add const to bin_attribute structures as they are only passed to the
functions sysfs_{remove/create}_bin_file or
device_{remove/create}_bin_file. The corresponding parameters
passed are of type const, so declare the structures to be const.
Done using Coccinelle:
@m disable optional_qualifier@
identifier s;
position p;
@@
static struct bin_attribute s@p={...};
@okay1@
position p;
identifier m.s;
@@
(
sysfs_create_bin_file(...,&s@p,...)
|
sysfs_remove_bin_file(...,&s@p,...)
)
@bad@
position p!={m.p,okay1.p};
identifier m.s;
@@
s@p
@change depends on !bad disable optional_qualifier@
identifier m.s;
@@
static
+const
struct bin_attribute s={...};
Same script was modified for device_{create/remove}_bin_file functions.
Signed-off-by: Bhumika Goyal <bhumirks@gmail.com>
---
Could not find an architecture to cross compile olpc_battery.o file.
drivers/power/supply/ds2780_battery.c | 4 ++--
drivers/power/supply/ds2781_battery.c | 4 ++--
drivers/power/supply/olpc_battery.c | 2 +-
3 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/drivers/power/supply/ds2780_battery.c b/drivers/power/supply/ds2780_battery.c
index 8edd4aa..e5d81b4 100644
--- a/drivers/power/supply/ds2780_battery.c
+++ b/drivers/power/supply/ds2780_battery.c
@@ -663,7 +663,7 @@ static ssize_t ds2780_write_param_eeprom_bin(struct file *filp,
return count;
}
-static struct bin_attribute ds2780_param_eeprom_bin_attr = {
+static const struct bin_attribute ds2780_param_eeprom_bin_attr = {
.attr = {
.name = "param_eeprom",
.mode = S_IRUGO | S_IWUSR,
@@ -708,7 +708,7 @@ static ssize_t ds2780_write_user_eeprom_bin(struct file *filp,
return count;
}
-static struct bin_attribute ds2780_user_eeprom_bin_attr = {
+static const struct bin_attribute ds2780_user_eeprom_bin_attr = {
.attr = {
.name = "user_eeprom",
.mode = S_IRUGO | S_IWUSR,
diff --git a/drivers/power/supply/ds2781_battery.c b/drivers/power/supply/ds2781_battery.c
index 4400402..efe83ef 100644
--- a/drivers/power/supply/ds2781_battery.c
+++ b/drivers/power/supply/ds2781_battery.c
@@ -665,7 +665,7 @@ static ssize_t ds2781_write_param_eeprom_bin(struct file *filp,
return count;
}
-static struct bin_attribute ds2781_param_eeprom_bin_attr = {
+static const struct bin_attribute ds2781_param_eeprom_bin_attr = {
.attr = {
.name = "param_eeprom",
.mode = S_IRUGO | S_IWUSR,
@@ -711,7 +711,7 @@ static ssize_t ds2781_write_user_eeprom_bin(struct file *filp,
return count;
}
-static struct bin_attribute ds2781_user_eeprom_bin_attr = {
+static const struct bin_attribute ds2781_user_eeprom_bin_attr = {
.attr = {
.name = "user_eeprom",
.mode = S_IRUGO | S_IWUSR,
diff --git a/drivers/power/supply/olpc_battery.c b/drivers/power/supply/olpc_battery.c
index 9e29b13..fc20ca3 100644
--- a/drivers/power/supply/olpc_battery.c
+++ b/drivers/power/supply/olpc_battery.c
@@ -535,7 +535,7 @@ static ssize_t olpc_bat_eeprom_read(struct file *filp, struct kobject *kobj,
return count;
}
-static struct bin_attribute olpc_bat_eeprom = {
+static const struct bin_attribute olpc_bat_eeprom = {
.attr = {
.name = "eeprom",
.mode = S_IRUGO,
--
1.9.1
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] power: add const to bin_attribute structures
2017-08-02 10:29 [PATCH] power: add const to bin_attribute structures Bhumika Goyal
@ 2017-08-02 14:25 ` Bhumika Goyal
2017-08-09 15:49 ` Sebastian Reichel
1 sibling, 0 replies; 3+ messages in thread
From: Bhumika Goyal @ 2017-08-02 14:25 UTC (permalink / raw)
To: Julia Lawall, sre, linux-pm, linux-kernel
On Wed, Aug 2, 2017 at 3:59 PM, Bhumika Goyal <bhumirks@gmail.com> wrote:
> Add const to bin_attribute structures as they are only passed to the
> functions sysfs_{remove/create}_bin_file or
> device_{remove/create}_bin_file. The corresponding parameters
> passed are of type const, so declare the structures to be const.
>
> Done using Coccinelle:
>
> @m disable optional_qualifier@
> identifier s;
> position p;
> @@
> static struct bin_attribute s@p={...};
>
> @okay1@
> position p;
> identifier m.s;
> @@
> (
> sysfs_create_bin_file(...,&s@p,...)
> |
> sysfs_remove_bin_file(...,&s@p,...)
> )
>
> @bad@
> position p!={m.p,okay1.p};
> identifier m.s;
> @@
> s@p
>
> @change depends on !bad disable optional_qualifier@
> identifier m.s;
> @@
> static
> +const
> struct bin_attribute s={...};
>
> Same script was modified for device_{create/remove}_bin_file functions.
>
> Signed-off-by: Bhumika Goyal <bhumirks@gmail.com>
> ---
> Could not find an architecture to cross compile olpc_battery.o file.
>
Any suggestions on how to cross compile olpc_battery.o file?
The configuration option for this file did not match any architecture.
Thanks,
Bhumika
> drivers/power/supply/ds2780_battery.c | 4 ++--
> drivers/power/supply/ds2781_battery.c | 4 ++--
> drivers/power/supply/olpc_battery.c | 2 +-
> 3 files changed, 5 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/power/supply/ds2780_battery.c b/drivers/power/supply/ds2780_battery.c
> index 8edd4aa..e5d81b4 100644
> --- a/drivers/power/supply/ds2780_battery.c
> +++ b/drivers/power/supply/ds2780_battery.c
> @@ -663,7 +663,7 @@ static ssize_t ds2780_write_param_eeprom_bin(struct file *filp,
> return count;
> }
>
> -static struct bin_attribute ds2780_param_eeprom_bin_attr = {
> +static const struct bin_attribute ds2780_param_eeprom_bin_attr = {
> .attr = {
> .name = "param_eeprom",
> .mode = S_IRUGO | S_IWUSR,
> @@ -708,7 +708,7 @@ static ssize_t ds2780_write_user_eeprom_bin(struct file *filp,
> return count;
> }
>
> -static struct bin_attribute ds2780_user_eeprom_bin_attr = {
> +static const struct bin_attribute ds2780_user_eeprom_bin_attr = {
> .attr = {
> .name = "user_eeprom",
> .mode = S_IRUGO | S_IWUSR,
> diff --git a/drivers/power/supply/ds2781_battery.c b/drivers/power/supply/ds2781_battery.c
> index 4400402..efe83ef 100644
> --- a/drivers/power/supply/ds2781_battery.c
> +++ b/drivers/power/supply/ds2781_battery.c
> @@ -665,7 +665,7 @@ static ssize_t ds2781_write_param_eeprom_bin(struct file *filp,
> return count;
> }
>
> -static struct bin_attribute ds2781_param_eeprom_bin_attr = {
> +static const struct bin_attribute ds2781_param_eeprom_bin_attr = {
> .attr = {
> .name = "param_eeprom",
> .mode = S_IRUGO | S_IWUSR,
> @@ -711,7 +711,7 @@ static ssize_t ds2781_write_user_eeprom_bin(struct file *filp,
> return count;
> }
>
> -static struct bin_attribute ds2781_user_eeprom_bin_attr = {
> +static const struct bin_attribute ds2781_user_eeprom_bin_attr = {
> .attr = {
> .name = "user_eeprom",
> .mode = S_IRUGO | S_IWUSR,
> diff --git a/drivers/power/supply/olpc_battery.c b/drivers/power/supply/olpc_battery.c
> index 9e29b13..fc20ca3 100644
> --- a/drivers/power/supply/olpc_battery.c
> +++ b/drivers/power/supply/olpc_battery.c
> @@ -535,7 +535,7 @@ static ssize_t olpc_bat_eeprom_read(struct file *filp, struct kobject *kobj,
> return count;
> }
>
> -static struct bin_attribute olpc_bat_eeprom = {
> +static const struct bin_attribute olpc_bat_eeprom = {
> .attr = {
> .name = "eeprom",
> .mode = S_IRUGO,
> --
> 1.9.1
>
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] power: add const to bin_attribute structures
2017-08-02 10:29 [PATCH] power: add const to bin_attribute structures Bhumika Goyal
2017-08-02 14:25 ` Bhumika Goyal
@ 2017-08-09 15:49 ` Sebastian Reichel
1 sibling, 0 replies; 3+ messages in thread
From: Sebastian Reichel @ 2017-08-09 15:49 UTC (permalink / raw)
To: Bhumika Goyal; +Cc: julia.lawall, linux-pm, linux-kernel
[-- Attachment #1: Type: text/plain, Size: 1322 bytes --]
Hi,
On Wed, Aug 02, 2017 at 03:59:38PM +0530, Bhumika Goyal wrote:
> Add const to bin_attribute structures as they are only passed to the
> functions sysfs_{remove/create}_bin_file or
> device_{remove/create}_bin_file. The corresponding parameters
> passed are of type const, so declare the structures to be const.
>
> Done using Coccinelle:
>
> @m disable optional_qualifier@
> identifier s;
> position p;
> @@
> static struct bin_attribute s@p={...};
>
> @okay1@
> position p;
> identifier m.s;
> @@
> (
> sysfs_create_bin_file(...,&s@p,...)
> |
> sysfs_remove_bin_file(...,&s@p,...)
> )
>
> @bad@
> position p!={m.p,okay1.p};
> identifier m.s;
> @@
> s@p
>
> @change depends on !bad disable optional_qualifier@
> identifier m.s;
> @@
> static
> +const
> struct bin_attribute s={...};
>
> Same script was modified for device_{create/remove}_bin_file functions.
>
> Signed-off-by: Bhumika Goyal <bhumirks@gmail.com>
> ---
Thanks, applied.
> Could not find an architecture to cross compile olpc_battery.o file.
OLPC is a 32 bit x86 system.
> drivers/power/supply/ds2780_battery.c | 4 ++--
> drivers/power/supply/ds2781_battery.c | 4 ++--
> drivers/power/supply/olpc_battery.c | 2 +-
> 3 files changed, 5 insertions(+), 5 deletions(-)
-- Sebastian
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2017-08-09 15:55 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-08-02 10:29 [PATCH] power: add const to bin_attribute structures Bhumika Goyal
2017-08-02 14:25 ` Bhumika Goyal
2017-08-09 15:49 ` Sebastian Reichel
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).