sysfs: constify bin_attribute argument of sysfs_bin_attr_simple_read()
authorThomas Weißschuh <linux@weissschuh.net>
Sat, 28 Dec 2024 08:43:41 +0000 (09:43 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 9 Jan 2025 09:43:58 +0000 (10:43 +0100)
Most users use this function through the BIN_ATTR_SIMPLE* macros,
they can handle the switch transparently.
Also adapt the two non-macro users in the same change.

Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>
Acked-by: Madhavan Srinivasan <maddy@linux.ibm.com>
Reviewed-by: Mahesh Salgaonkar <mahesh@linux.ibm.com>
Tested-by: Aditya Gupta <adityag@linux.ibm.com>
Link: https://lore.kernel.org/r/20241228-sysfs-const-bin_attr-simple-v2-1-7c6f3f1767a3@weissschuh.net
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
arch/powerpc/platforms/powernv/opal.c
fs/sysfs/file.c
include/linux/sysfs.h
kernel/module/sysfs.c

index 5d0f35bb917ebced8c741cd3af2c511949a1d2ef..013637e2b2a8e6a4ec6b93a520f8d5d9d3245467 100644 (file)
@@ -818,7 +818,7 @@ static int opal_add_one_export(struct kobject *parent, const char *export_name,
        sysfs_bin_attr_init(attr);
        attr->attr.name = name;
        attr->attr.mode = 0400;
-       attr->read = sysfs_bin_attr_simple_read;
+       attr->read_new = sysfs_bin_attr_simple_read;
        attr->private = __va(vals[0]);
        attr->size = vals[1];
 
index 785408861c01c89fc84c787848243a13c1338367..6931308876c4ac3b4c19878d5e1158ad8fe4f16f 100644 (file)
@@ -817,7 +817,7 @@ EXPORT_SYMBOL_GPL(sysfs_emit_at);
  * Returns number of bytes written to @buf.
  */
 ssize_t sysfs_bin_attr_simple_read(struct file *file, struct kobject *kobj,
-                                  struct bin_attribute *attr, char *buf,
+                                  const struct bin_attribute *attr, char *buf,
                                   loff_t off, size_t count)
 {
        memcpy(buf, attr->private + off, count);
index b4368377fac96734a5ee98209f9532b838953f07..18f7e1fd093c9179a86aaa16f3f8851338778b0b 100644 (file)
@@ -511,7 +511,7 @@ __printf(3, 4)
 int sysfs_emit_at(char *buf, int at, const char *fmt, ...);
 
 ssize_t sysfs_bin_attr_simple_read(struct file *file, struct kobject *kobj,
-                                  struct bin_attribute *attr, char *buf,
+                                  const struct bin_attribute *attr, char *buf,
                                   loff_t off, size_t count);
 
 #else /* CONFIG_SYSFS */
@@ -774,7 +774,7 @@ static inline int sysfs_emit_at(char *buf, int at, const char *fmt, ...)
 
 static inline ssize_t sysfs_bin_attr_simple_read(struct file *file,
                                                 struct kobject *kobj,
-                                                struct bin_attribute *attr,
+                                                const struct bin_attribute *attr,
                                                 char *buf, loff_t off,
                                                 size_t count)
 {
index 456358e1fdc43e6b5b24f383bbefa37812971174..254017b58b645d4afcf6876d29bcc2e2113a8dc4 100644 (file)
@@ -196,7 +196,7 @@ static int add_notes_attrs(struct module *mod, const struct load_info *info)
                        nattr->attr.mode = 0444;
                        nattr->size = info->sechdrs[i].sh_size;
                        nattr->private = (void *)info->sechdrs[i].sh_addr;
-                       nattr->read = sysfs_bin_attr_simple_read;
+                       nattr->read_new = sysfs_bin_attr_simple_read;
                        ++nattr;
                }
                ++loaded;