diff options
author | Thomas Weißschuh <linux@weissschuh.net> | 2024-12-15 17:49:10 +0300 |
---|---|---|
committer | Tzung-Bi Shih <tzungbi@kernel.org> | 2024-12-17 06:59:31 +0300 |
commit | 7da14dea76fb6a90f62938e6dfa9f34c980af358 (patch) | |
tree | 565e0e6a5da49447e2d757ebff0bcdd7145188f2 | |
parent | bf2066caee80c1612cb5a3356dc16a7a298f58ab (diff) | |
download | linux-7da14dea76fb6a90f62938e6dfa9f34c980af358.tar.xz |
firmware: google: gsmi: Constify 'struct bin_attribute'
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@weissschuh.net>
Acked-by: Brian Norris <briannorris@chromium.org>
Link: https://lore.kernel.org/r/20241215-sysfs-const-bin_attr-google-v1-2-e5c2808f5833@weissschuh.net
Signed-off-by: Tzung-Bi Shih <tzungbi@kernel.org>
-rw-r--r-- | drivers/firmware/google/gsmi.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/firmware/google/gsmi.c b/drivers/firmware/google/gsmi.c index 24e666d5c3d1..e8fb00dcaf65 100644 --- a/drivers/firmware/google/gsmi.c +++ b/drivers/firmware/google/gsmi.c @@ -488,7 +488,7 @@ static const struct efivar_operations efivar_ops = { #endif /* CONFIG_EFI */ static ssize_t eventlog_write(struct file *filp, struct kobject *kobj, - struct bin_attribute *bin_attr, + const struct bin_attribute *bin_attr, char *buf, loff_t pos, size_t count) { struct gsmi_set_eventlog_param param = { @@ -528,9 +528,9 @@ static ssize_t eventlog_write(struct file *filp, struct kobject *kobj, } -static struct bin_attribute eventlog_bin_attr = { +static const struct bin_attribute eventlog_bin_attr = { .attr = {.name = "append_to_eventlog", .mode = 0200}, - .write = eventlog_write, + .write_new = eventlog_write, }; static ssize_t gsmi_clear_eventlog_store(struct kobject *kobj, |