2017-07-03 07:31:23

by Arvind Yadav

[permalink] [raw]
Subject: [PATCH] bus: arm-ccn: constify attribute_group structures.

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

File size before:
text data bss dec hex filename
9074 5592 416 15082 3aea drivers/bus/arm-ccn.o

File size After adding 'const':
text data bss dec hex filename
9327 5336 416 15079 3ae7 drivers/bus/arm-ccn.o

Signed-off-by: Arvind Yadav <[email protected]>
---
drivers/bus/arm-ccn.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/bus/arm-ccn.c b/drivers/bus/arm-ccn.c
index 4d6a2b7..bebcf15 100644
--- a/drivers/bus/arm-ccn.c
+++ b/drivers/bus/arm-ccn.c
@@ -262,7 +262,7 @@ static ssize_t arm_ccn_pmu_format_show(struct device *dev,
NULL
};

-static struct attribute_group arm_ccn_pmu_format_attr_group = {
+static const struct attribute_group arm_ccn_pmu_format_attr_group = {
.name = "format",
.attrs = arm_ccn_pmu_format_attrs,
};
@@ -451,7 +451,7 @@ static umode_t arm_ccn_pmu_events_is_visible(struct kobject *kobj,
static struct attribute
*arm_ccn_pmu_events_attrs[ARRAY_SIZE(arm_ccn_pmu_events) + 1];

-static struct attribute_group arm_ccn_pmu_events_attr_group = {
+static const struct attribute_group arm_ccn_pmu_events_attr_group = {
.name = "events",
.is_visible = arm_ccn_pmu_events_is_visible,
.attrs = arm_ccn_pmu_events_attrs,
@@ -548,7 +548,7 @@ static ssize_t arm_ccn_pmu_cmp_mask_store(struct device *dev,
NULL
};

-static struct attribute_group arm_ccn_pmu_cmp_mask_attr_group = {
+static const struct attribute_group arm_ccn_pmu_cmp_mask_attr_group = {
.name = "cmp_mask",
.attrs = arm_ccn_pmu_cmp_mask_attrs,
};
@@ -569,7 +569,7 @@ static ssize_t arm_ccn_pmu_cpumask_show(struct device *dev,
NULL,
};

-static struct attribute_group arm_ccn_pmu_cpumask_attr_group = {
+static const struct attribute_group arm_ccn_pmu_cpumask_attr_group = {
.attrs = arm_ccn_pmu_cpumask_attrs,
};

--
1.9.1


2017-07-04 11:27:21

by Pawel Moll

[permalink] [raw]
Subject: Re: [PATCH] bus: arm-ccn: constify attribute_group structures.

On Mon, 2017-07-03 at 13:01 +0530, Arvind Yadav wrote:
> attribute_groups are not supposed to change at runtime. All functions
> working with attribute_groups provided by work with const
> attribute_group. So mark the non-const structs as const.
>
> File size before:
>    text    data     bss     dec     hex filename
>    9074    5592     416   15082    3aea drivers/bus/arm-ccn.o
>
> File size After adding 'const':
>    text    data     bss     dec     hex filename
>    9327    5336     416   15079    3ae7 drivers/bus/arm-ccn.o
>
> Signed-off-by: Arvind Yadav <[email protected]>

Looks fine to me. I'll queue it for the next time I push out CCN driver
fixes (no dates promised, though...)

Thanks!

Paweł