2017-08-07 09:36:54

by Arvind Yadav

[permalink] [raw]
Subject: [PATCH v2] hwmon: adt7475: constify attribute_group structures

attribute_group are not supposed to change at runtime. All functions
working with attribute_group provided by <linux/sysfs.h> work with
const attribute_group. So mark the non-const structs as const.

Signed-off-by: Arvind Yadav <[email protected]>
---
change in v2:
subject was not correct. Removed 'wusbhc' and '.'.

drivers/hwmon/adt7475.c | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/drivers/hwmon/adt7475.c b/drivers/hwmon/adt7475.c
index 1baa213..9ef8499 100644
--- a/drivers/hwmon/adt7475.c
+++ b/drivers/hwmon/adt7475.c
@@ -1319,14 +1319,14 @@ static SENSOR_DEVICE_ATTR_2(pwm3_stall_disable, S_IRUGO | S_IWUSR,
NULL
};

-static struct attribute_group adt7475_attr_group = { .attrs = adt7475_attrs };
-static struct attribute_group fan4_attr_group = { .attrs = fan4_attrs };
-static struct attribute_group pwm2_attr_group = { .attrs = pwm2_attrs };
-static struct attribute_group in0_attr_group = { .attrs = in0_attrs };
-static struct attribute_group in3_attr_group = { .attrs = in3_attrs };
-static struct attribute_group in4_attr_group = { .attrs = in4_attrs };
-static struct attribute_group in5_attr_group = { .attrs = in5_attrs };
-static struct attribute_group vid_attr_group = { .attrs = vid_attrs };
+static const struct attribute_group adt7475_attr_group = { .attrs = adt7475_attrs };
+static const struct attribute_group fan4_attr_group = { .attrs = fan4_attrs };
+static const struct attribute_group pwm2_attr_group = { .attrs = pwm2_attrs };
+static const struct attribute_group in0_attr_group = { .attrs = in0_attrs };
+static const struct attribute_group in3_attr_group = { .attrs = in3_attrs };
+static const struct attribute_group in4_attr_group = { .attrs = in4_attrs };
+static const struct attribute_group in5_attr_group = { .attrs = in5_attrs };
+static const struct attribute_group vid_attr_group = { .attrs = vid_attrs };

static int adt7475_detect(struct i2c_client *client,
struct i2c_board_info *info)
--
1.9.1


2017-08-09 02:05:13

by Guenter Roeck

[permalink] [raw]
Subject: Re: [v2] hwmon: adt7475: constify attribute_group structures

On Mon, Aug 07, 2017 at 03:06:29PM +0530, Arvind Yadav wrote:
> attribute_group are not supposed to change at runtime. All functions
> working with attribute_group provided by <linux/sysfs.h> work with
> const attribute_group. So mark the non-const structs as const.
>
> Signed-off-by: Arvind Yadav <[email protected]>

Kind of confused by this one. I applied a similar patch from you
back in July ??

Guenter

> ---
> change in v2:
> subject was not correct. Removed 'wusbhc' and '.'.
>
> drivers/hwmon/adt7475.c | 16 ++++++++--------
> 1 file changed, 8 insertions(+), 8 deletions(-)
>
> diff --git a/drivers/hwmon/adt7475.c b/drivers/hwmon/adt7475.c
> index 1baa213..9ef8499 100644
> --- a/drivers/hwmon/adt7475.c
> +++ b/drivers/hwmon/adt7475.c
> @@ -1319,14 +1319,14 @@ static SENSOR_DEVICE_ATTR_2(pwm3_stall_disable, S_IRUGO | S_IWUSR,
> NULL
> };
>
> -static struct attribute_group adt7475_attr_group = { .attrs = adt7475_attrs };
> -static struct attribute_group fan4_attr_group = { .attrs = fan4_attrs };
> -static struct attribute_group pwm2_attr_group = { .attrs = pwm2_attrs };
> -static struct attribute_group in0_attr_group = { .attrs = in0_attrs };
> -static struct attribute_group in3_attr_group = { .attrs = in3_attrs };
> -static struct attribute_group in4_attr_group = { .attrs = in4_attrs };
> -static struct attribute_group in5_attr_group = { .attrs = in5_attrs };
> -static struct attribute_group vid_attr_group = { .attrs = vid_attrs };
> +static const struct attribute_group adt7475_attr_group = { .attrs = adt7475_attrs };
> +static const struct attribute_group fan4_attr_group = { .attrs = fan4_attrs };
> +static const struct attribute_group pwm2_attr_group = { .attrs = pwm2_attrs };
> +static const struct attribute_group in0_attr_group = { .attrs = in0_attrs };
> +static const struct attribute_group in3_attr_group = { .attrs = in3_attrs };
> +static const struct attribute_group in4_attr_group = { .attrs = in4_attrs };
> +static const struct attribute_group in5_attr_group = { .attrs = in5_attrs };
> +static const struct attribute_group vid_attr_group = { .attrs = vid_attrs };
>
> static int adt7475_detect(struct i2c_client *client,
> struct i2c_board_info *info)

2017-08-09 04:16:57

by Arvind Yadav

[permalink] [raw]
Subject: Re: [v2] hwmon: adt7475: constify attribute_group structures

yes, Sorry for noise. After rebase, it' was showing unchanged.


On Wednesday 09 August 2017 07:35 AM, Guenter Roeck wrote:
> On Mon, Aug 07, 2017 at 03:06:29PM +0530, Arvind Yadav wrote:
>> attribute_group are not supposed to change at runtime. All functions
>> working with attribute_group provided by <linux/sysfs.h> work with
>> const attribute_group. So mark the non-const structs as const.
>>
>> Signed-off-by: Arvind Yadav <[email protected]>
> Kind of confused by this one. I applied a similar patch from you
> back in July ??
>
> Guenter
>
>> ---
>> change in v2:
>> subject was not correct. Removed 'wusbhc' and '.'.
>>
>> drivers/hwmon/adt7475.c | 16 ++++++++--------
>> 1 file changed, 8 insertions(+), 8 deletions(-)
>>
>> diff --git a/drivers/hwmon/adt7475.c b/drivers/hwmon/adt7475.c
>> index 1baa213..9ef8499 100644
>> --- a/drivers/hwmon/adt7475.c
>> +++ b/drivers/hwmon/adt7475.c
>> @@ -1319,14 +1319,14 @@ static SENSOR_DEVICE_ATTR_2(pwm3_stall_disable, S_IRUGO | S_IWUSR,
>> NULL
>> };
>>
>> -static struct attribute_group adt7475_attr_group = { .attrs = adt7475_attrs };
>> -static struct attribute_group fan4_attr_group = { .attrs = fan4_attrs };
>> -static struct attribute_group pwm2_attr_group = { .attrs = pwm2_attrs };
>> -static struct attribute_group in0_attr_group = { .attrs = in0_attrs };
>> -static struct attribute_group in3_attr_group = { .attrs = in3_attrs };
>> -static struct attribute_group in4_attr_group = { .attrs = in4_attrs };
>> -static struct attribute_group in5_attr_group = { .attrs = in5_attrs };
>> -static struct attribute_group vid_attr_group = { .attrs = vid_attrs };
>> +static const struct attribute_group adt7475_attr_group = { .attrs = adt7475_attrs };
>> +static const struct attribute_group fan4_attr_group = { .attrs = fan4_attrs };
>> +static const struct attribute_group pwm2_attr_group = { .attrs = pwm2_attrs };
>> +static const struct attribute_group in0_attr_group = { .attrs = in0_attrs };
>> +static const struct attribute_group in3_attr_group = { .attrs = in3_attrs };
>> +static const struct attribute_group in4_attr_group = { .attrs = in4_attrs };
>> +static const struct attribute_group in5_attr_group = { .attrs = in5_attrs };
>> +static const struct attribute_group vid_attr_group = { .attrs = vid_attrs };
>>
>> static int adt7475_detect(struct i2c_client *client,
>> struct i2c_board_info *info)
~arvind