IB/qib: add const to bin_attribute structures
authorBhumika Goyal <bhumirks@gmail.com>
Wed, 2 Aug 2017 10:01:29 +0000 (15:31 +0530)
committerDoug Ledford <dledford@redhat.com>
Fri, 18 Aug 2017 18:06:09 +0000 (14:06 -0400)
Add const to bin_attribute structures as they are only passed to the
functions sysfs_{remove/create}_bin_file. The arguments 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={...};

Signed-off-by: Bhumika Goyal <bhumirks@gmail.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
drivers/infiniband/hw/qib/qib_sysfs.c

index fe4cf5e..ca2638d 100644 (file)
@@ -247,7 +247,7 @@ static struct kobj_type qib_port_cc_ktype = {
        .release = qib_port_release,
 };
 
-static struct bin_attribute cc_table_bin_attr = {
+static const struct bin_attribute cc_table_bin_attr = {
        .attr = {.name = "cc_table_bin", .mode = 0444},
        .read = read_cc_table_bin,
        .size = PAGE_SIZE,
@@ -286,7 +286,7 @@ static ssize_t read_cc_setting_bin(struct file *filp, struct kobject *kobj,
        return count;
 }
 
-static struct bin_attribute cc_setting_bin_attr = {
+static const struct bin_attribute cc_setting_bin_attr = {
        .attr = {.name = "cc_settings_bin", .mode = 0444},
        .read = read_cc_setting_bin,
        .size = PAGE_SIZE,