The sysfs core now allows instances of 'struct bin_attribute' to be moved into read-only memory. Make use of that to protect them against accidental or malicious modifications. Signed-off-by: Thomas Weißschuh <linux@xxxxxxxxxxxxxx> --- drivers/zorro/zorro-sysfs.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/drivers/zorro/zorro-sysfs.c b/drivers/zorro/zorro-sysfs.c index 3d34dba9bb2dd488ffe509792940e51336c1852e..10aedcd21363442b2048ad4b0bebdbfd8c8ad30e 100644 --- a/drivers/zorro/zorro-sysfs.c +++ b/drivers/zorro/zorro-sysfs.c @@ -81,7 +81,7 @@ static struct attribute *zorro_device_attrs[] = { }; static ssize_t zorro_read_config(struct file *filp, struct kobject *kobj, - struct bin_attribute *bin_attr, + const struct bin_attribute *bin_attr, char *buf, loff_t off, size_t count) { struct zorro_dev *z = to_zorro_dev(kobj_to_dev(kobj)); @@ -98,23 +98,23 @@ static ssize_t zorro_read_config(struct file *filp, struct kobject *kobj, return memory_read_from_buffer(buf, count, &off, &cd, sizeof(cd)); } -static struct bin_attribute zorro_config_attr = { +static const struct bin_attribute zorro_config_attr = { .attr = { .name = "config", .mode = S_IRUGO, }, .size = sizeof(struct ConfigDev), - .read = zorro_read_config, + .read_new = zorro_read_config, }; -static struct bin_attribute *zorro_device_bin_attrs[] = { +static const struct bin_attribute *const zorro_device_bin_attrs[] = { &zorro_config_attr, NULL }; static const struct attribute_group zorro_device_attr_group = { .attrs = zorro_device_attrs, - .bin_attrs = zorro_device_bin_attrs, + .bin_attrs_new = zorro_device_bin_attrs, }; const struct attribute_group *zorro_device_attribute_groups[] = { --- base-commit: 78d4f34e2115b517bcbfe7ec0d018bbbb6f9b0b8 change-id: 20241216-sysfs-const-bin_attr-zorro-e644a053d6be Best regards, -- Thomas Weißschuh <linux@xxxxxxxxxxxxxx>