The ci_type field of the config_item structure do not modify the fields of
the config_item_type structure it points to. And the other pointers
initialized with ci_type do not modify the fields as well.
So, make the ci_type field and the pointers initialized with ci_type 
as const.

Signed-off-by: Bhumika Goyal <bhumi...@gmail.com>
---
 fs/configfs/dir.c        | 8 ++++----
 fs/configfs/item.c       | 2 +-
 fs/configfs/symlink.c    | 4 ++--
 include/linux/configfs.h | 2 +-
 4 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/fs/configfs/dir.c b/fs/configfs/dir.c
index 56fb261..ccdd33f 100644
--- a/fs/configfs/dir.c
+++ b/fs/configfs/dir.c
@@ -584,7 +584,7 @@ static void detach_attrs(struct config_item * item)
 
 static int populate_attrs(struct config_item *item)
 {
-       struct config_item_type *t = item->ci_type;
+       const struct config_item_type *t = item->ci_type;
        struct configfs_attribute *attr;
        struct configfs_bin_attribute *bin_attr;
        int error = 0;
@@ -901,7 +901,7 @@ static void configfs_detach_group(struct config_item *item)
 static void client_disconnect_notify(struct config_item *parent_item,
                                     struct config_item *item)
 {
-       struct config_item_type *type;
+       const struct config_item_type *type;
 
        type = parent_item->ci_type;
        BUG_ON(!type);
@@ -920,7 +920,7 @@ static void client_disconnect_notify(struct config_item 
*parent_item,
 static void client_drop_item(struct config_item *parent_item,
                             struct config_item *item)
 {
-       struct config_item_type *type;
+       const struct config_item_type *type;
 
        type = parent_item->ci_type;
        BUG_ON(!type);
@@ -1260,7 +1260,7 @@ static int configfs_mkdir(struct inode *dir, struct 
dentry *dentry, umode_t mode
        struct config_item *parent_item;
        struct configfs_subsystem *subsys;
        struct configfs_dirent *sd;
-       struct config_item_type *type;
+       const struct config_item_type *type;
        struct module *subsys_owner = NULL, *new_item_owner = NULL;
        char *name;
 
diff --git a/fs/configfs/item.c b/fs/configfs/item.c
index a66f662..b1f57eb 100644
--- a/fs/configfs/item.c
+++ b/fs/configfs/item.c
@@ -148,7 +148,7 @@ struct config_item *config_item_get_unless_zero(struct 
config_item *item)
 
 static void config_item_cleanup(struct config_item *item)
 {
-       struct config_item_type *t = item->ci_type;
+       const struct config_item_type *t = item->ci_type;
        struct config_group *s = item->ci_group;
        struct config_item *parent = item->ci_parent;
 
diff --git a/fs/configfs/symlink.c b/fs/configfs/symlink.c
index c8aabba..78ffc26 100644
--- a/fs/configfs/symlink.c
+++ b/fs/configfs/symlink.c
@@ -138,7 +138,7 @@ int configfs_symlink(struct inode *dir, struct dentry 
*dentry, const char *symna
        struct configfs_dirent *sd;
        struct config_item *parent_item;
        struct config_item *target_item = NULL;
-       struct config_item_type *type;
+       const struct config_item_type *type;
 
        sd = dentry->d_parent->d_fsdata;
        /*
@@ -186,7 +186,7 @@ int configfs_unlink(struct inode *dir, struct dentry 
*dentry)
        struct configfs_dirent *sd = dentry->d_fsdata;
        struct configfs_symlink *sl;
        struct config_item *parent_item;
-       struct config_item_type *type;
+       const struct config_item_type *type;
        int ret;
 
        ret = -EPERM;  /* What lack-of-symlink returns */
diff --git a/include/linux/configfs.h b/include/linux/configfs.h
index c967090..c91ba94 100644
--- a/include/linux/configfs.h
+++ b/include/linux/configfs.h
@@ -58,7 +58,7 @@ struct config_item {
        struct list_head        ci_entry;
        struct config_item      *ci_parent;
        struct config_group     *ci_group;
-       struct config_item_type *ci_type;
+       const struct config_item_type   *ci_type;
        struct dentry           *ci_dentry;
 };
 
-- 
1.9.1

Reply via email to