diff options
| author | Armin Wolf <W_Armin@gmx.de> | 2026-06-10 22:34:52 +0200 |
|---|---|---|
| committer | Ilpo Järvinen <ilpo.jarvinen@linux.intel.com> | 2026-06-12 16:01:53 +0300 |
| commit | c3cbac4be03d769571f32e7f27241b2c58f722f5 (patch) | |
| tree | 2d55692870fcf53b7d03cb185daf68fd6094bb59 | |
| parent | b79ad5e8ba5cfda93a83e0cf71d4743829cc9f83 (diff) | |
platform/wmi: Make sysfs attributes const
The sysfs core supports const attributes. Use this to mark all
sysfs attributes as const so that they can be placed into read-only
memory for better security.
Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Signed-off-by: Armin Wolf <W_Armin@gmx.de>
Link: https://patch.msgid.link/20260610203453.816254-9-W_Armin@gmx.de
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
| -rw-r--r-- | drivers/platform/wmi/core.c | 29 |
1 files changed, 18 insertions, 11 deletions
diff --git a/drivers/platform/wmi/core.c b/drivers/platform/wmi/core.c index 0782ebc33c00..529825dcfbfe 100644 --- a/drivers/platform/wmi/core.c +++ b/drivers/platform/wmi/core.c @@ -858,7 +858,8 @@ static ssize_t modalias_show(struct device *dev, struct device_attribute *attr, return sysfs_emit(buf, "wmi:%pUL\n", &wblock->gblock.guid); } -static DEVICE_ATTR_RO(modalias); + +static const DEVICE_ATTR_RO(modalias); static ssize_t guid_show(struct device *dev, struct device_attribute *attr, char *buf) @@ -867,7 +868,8 @@ static ssize_t guid_show(struct device *dev, struct device_attribute *attr, return sysfs_emit(buf, "%pUL\n", &wblock->gblock.guid); } -static DEVICE_ATTR_RO(guid); + +static const DEVICE_ATTR_RO(guid); static ssize_t instance_count_show(struct device *dev, struct device_attribute *attr, char *buf) @@ -876,7 +878,8 @@ static ssize_t instance_count_show(struct device *dev, return sysfs_emit(buf, "%d\n", (int)wblock->gblock.instance_count); } -static DEVICE_ATTR_RO(instance_count); + +static const DEVICE_ATTR_RO(instance_count); static ssize_t expensive_show(struct device *dev, struct device_attribute *attr, char *buf) @@ -886,9 +889,10 @@ static ssize_t expensive_show(struct device *dev, return sysfs_emit(buf, "%d\n", (wblock->gblock.flags & ACPI_WMI_EXPENSIVE) != 0); } -static DEVICE_ATTR_RO(expensive); -static struct attribute *wmi_attrs[] = { +static const DEVICE_ATTR_RO(expensive); + +static const struct attribute * const wmi_attrs[] = { &dev_attr_modalias.attr, &dev_attr_guid.attr, &dev_attr_instance_count.attr, @@ -904,9 +908,10 @@ static ssize_t notify_id_show(struct device *dev, struct device_attribute *attr, return sysfs_emit(buf, "%02X\n", (unsigned int)wblock->gblock.notify_id); } -static DEVICE_ATTR_RO(notify_id); -static struct attribute *wmi_event_attrs[] = { +static const DEVICE_ATTR_RO(notify_id); + +static const struct attribute * const wmi_event_attrs[] = { &dev_attr_notify_id.attr, NULL }; @@ -920,7 +925,8 @@ static ssize_t object_id_show(struct device *dev, struct device_attribute *attr, return sysfs_emit(buf, "%c%c\n", wblock->gblock.object_id[0], wblock->gblock.object_id[1]); } -static DEVICE_ATTR_RO(object_id); + +static const DEVICE_ATTR_RO(object_id); static ssize_t setable_show(struct device *dev, struct device_attribute *attr, char *buf) @@ -929,16 +935,17 @@ static ssize_t setable_show(struct device *dev, struct device_attribute *attr, return sysfs_emit(buf, "%d\n", (int)wdev->setable); } -static DEVICE_ATTR_RO(setable); -static struct attribute *wmi_data_attrs[] = { +static const DEVICE_ATTR_RO(setable); + +static const struct attribute * const wmi_data_attrs[] = { &dev_attr_object_id.attr, &dev_attr_setable.attr, NULL }; ATTRIBUTE_GROUPS(wmi_data); -static struct attribute *wmi_method_attrs[] = { +static const struct attribute * const wmi_method_attrs[] = { &dev_attr_object_id.attr, NULL }; |
