Re: [PATCH] acpi: Use DEVICE_ATTR_<RW|RO|WO> macros

From: Rafael J. Wysocki
Date: Fri Jan 22 2021 - 10:21:20 EST


On Thu, Dec 17, 2020 at 1:47 PM Dwaipayan Ray <dwaipayanray1@xxxxxxxxx> wrote:
>
> Instead of open coding DEVICE_ATTR(), use the
> DEVICE_ATTR_RW(), DEVICE_ATTR_RO() and DEVICE_ATTR_WO()
> macros wherever possible.
>
> This required a few functions to be renamed but the
> functionality itself is unchanged.
>
> Signed-off-by: Dwaipayan Ray <dwaipayanray1@xxxxxxxxx>

Applied as 5.12 material, thanks!

> ---
> Note: The patch is compiled tested only.
> Merges cleanly with next-20201210
>
> drivers/acpi/acpi_pad.c | 24 ++++++++------------
> drivers/acpi/acpi_tad.c | 14 ++++++------
> drivers/acpi/bgrt.c | 20 ++++++++---------
> drivers/acpi/device_sysfs.c | 44 ++++++++++++++++++-------------------
> drivers/acpi/dock.c | 26 +++++++++++-----------
> drivers/acpi/power.c | 9 ++++----
> 6 files changed, 66 insertions(+), 71 deletions(-)
>
> diff --git a/drivers/acpi/acpi_pad.c b/drivers/acpi/acpi_pad.c
> index b8745ce48a47..b84ab722feb4 100644
> --- a/drivers/acpi/acpi_pad.c
> +++ b/drivers/acpi/acpi_pad.c
> @@ -261,7 +261,7 @@ static uint32_t acpi_pad_idle_cpus_num(void)
> return ps_tsk_num;
> }
>
> -static ssize_t acpi_pad_rrtime_store(struct device *dev,
> +static ssize_t rrtime_store(struct device *dev,
> struct device_attribute *attr, const char *buf, size_t count)
> {
> unsigned long num;
> @@ -275,16 +275,14 @@ static ssize_t acpi_pad_rrtime_store(struct device *dev,
> return count;
> }
>
> -static ssize_t acpi_pad_rrtime_show(struct device *dev,
> +static ssize_t rrtime_show(struct device *dev,
> struct device_attribute *attr, char *buf)
> {
> return scnprintf(buf, PAGE_SIZE, "%d\n", round_robin_time);
> }
> -static DEVICE_ATTR(rrtime, S_IRUGO|S_IWUSR,
> - acpi_pad_rrtime_show,
> - acpi_pad_rrtime_store);
> +static DEVICE_ATTR_RW(rrtime);
>
> -static ssize_t acpi_pad_idlepct_store(struct device *dev,
> +static ssize_t idlepct_store(struct device *dev,
> struct device_attribute *attr, const char *buf, size_t count)
> {
> unsigned long num;
> @@ -298,16 +296,14 @@ static ssize_t acpi_pad_idlepct_store(struct device *dev,
> return count;
> }
>
> -static ssize_t acpi_pad_idlepct_show(struct device *dev,
> +static ssize_t idlepct_show(struct device *dev,
> struct device_attribute *attr, char *buf)
> {
> return scnprintf(buf, PAGE_SIZE, "%d\n", idle_pct);
> }
> -static DEVICE_ATTR(idlepct, S_IRUGO|S_IWUSR,
> - acpi_pad_idlepct_show,
> - acpi_pad_idlepct_store);
> +static DEVICE_ATTR_RW(idlepct);
>
> -static ssize_t acpi_pad_idlecpus_store(struct device *dev,
> +static ssize_t idlecpus_store(struct device *dev,
> struct device_attribute *attr, const char *buf, size_t count)
> {
> unsigned long num;
> @@ -319,16 +315,14 @@ static ssize_t acpi_pad_idlecpus_store(struct device *dev,
> return count;
> }
>
> -static ssize_t acpi_pad_idlecpus_show(struct device *dev,
> +static ssize_t idlecpus_show(struct device *dev,
> struct device_attribute *attr, char *buf)
> {
> return cpumap_print_to_pagebuf(false, buf,
> to_cpumask(pad_busy_cpus_bits));
> }
>
> -static DEVICE_ATTR(idlecpus, S_IRUGO|S_IWUSR,
> - acpi_pad_idlecpus_show,
> - acpi_pad_idlecpus_store);
> +static DEVICE_ATTR_RW(idlecpus);
>
> static int acpi_pad_add_sysfs(struct acpi_device *device)
> {
> diff --git a/drivers/acpi/acpi_tad.c b/drivers/acpi/acpi_tad.c
> index 7d45cce0c3c1..e9b8e8305e23 100644
> --- a/drivers/acpi/acpi_tad.c
> +++ b/drivers/acpi/acpi_tad.c
> @@ -237,7 +237,7 @@ static ssize_t time_show(struct device *dev, struct device_attribute *attr,
> rt.tz, rt.daylight);
> }
>
> -static DEVICE_ATTR(time, S_IRUSR | S_IWUSR, time_show, time_store);
> +static DEVICE_ATTR_RW(time);
>
> static struct attribute *acpi_tad_time_attrs[] = {
> &dev_attr_time.attr,
> @@ -446,7 +446,7 @@ static ssize_t ac_alarm_show(struct device *dev, struct device_attribute *attr,
> return acpi_tad_alarm_read(dev, buf, ACPI_TAD_AC_TIMER);
> }
>
> -static DEVICE_ATTR(ac_alarm, S_IRUSR | S_IWUSR, ac_alarm_show, ac_alarm_store);
> +static DEVICE_ATTR_RW(ac_alarm);
>
> static ssize_t ac_policy_store(struct device *dev, struct device_attribute *attr,
> const char *buf, size_t count)
> @@ -462,7 +462,7 @@ static ssize_t ac_policy_show(struct device *dev, struct device_attribute *attr,
> return acpi_tad_policy_read(dev, buf, ACPI_TAD_AC_TIMER);
> }
>
> -static DEVICE_ATTR(ac_policy, S_IRUSR | S_IWUSR, ac_policy_show, ac_policy_store);
> +static DEVICE_ATTR_RW(ac_policy);
>
> static ssize_t ac_status_store(struct device *dev, struct device_attribute *attr,
> const char *buf, size_t count)
> @@ -478,7 +478,7 @@ static ssize_t ac_status_show(struct device *dev, struct device_attribute *attr,
> return acpi_tad_status_read(dev, buf, ACPI_TAD_AC_TIMER);
> }
>
> -static DEVICE_ATTR(ac_status, S_IRUSR | S_IWUSR, ac_status_show, ac_status_store);
> +static DEVICE_ATTR_RW(ac_status);
>
> static struct attribute *acpi_tad_attrs[] = {
> &dev_attr_caps.attr,
> @@ -505,7 +505,7 @@ static ssize_t dc_alarm_show(struct device *dev, struct device_attribute *attr,
> return acpi_tad_alarm_read(dev, buf, ACPI_TAD_DC_TIMER);
> }
>
> -static DEVICE_ATTR(dc_alarm, S_IRUSR | S_IWUSR, dc_alarm_show, dc_alarm_store);
> +static DEVICE_ATTR_RW(dc_alarm);
>
> static ssize_t dc_policy_store(struct device *dev, struct device_attribute *attr,
> const char *buf, size_t count)
> @@ -521,7 +521,7 @@ static ssize_t dc_policy_show(struct device *dev, struct device_attribute *attr,
> return acpi_tad_policy_read(dev, buf, ACPI_TAD_DC_TIMER);
> }
>
> -static DEVICE_ATTR(dc_policy, S_IRUSR | S_IWUSR, dc_policy_show, dc_policy_store);
> +static DEVICE_ATTR_RW(dc_policy);
>
> static ssize_t dc_status_store(struct device *dev, struct device_attribute *attr,
> const char *buf, size_t count)
> @@ -537,7 +537,7 @@ static ssize_t dc_status_show(struct device *dev, struct device_attribute *attr,
> return acpi_tad_status_read(dev, buf, ACPI_TAD_DC_TIMER);
> }
>
> -static DEVICE_ATTR(dc_status, S_IRUSR | S_IWUSR, dc_status_show, dc_status_store);
> +static DEVICE_ATTR_RW(dc_status);
>
> static struct attribute *acpi_tad_dc_attrs[] = {
> &dev_attr_dc_alarm.attr,
> diff --git a/drivers/acpi/bgrt.c b/drivers/acpi/bgrt.c
> index 251f961c28cc..19bb7f870204 100644
> --- a/drivers/acpi/bgrt.c
> +++ b/drivers/acpi/bgrt.c
> @@ -15,40 +15,40 @@
> static void *bgrt_image;
> static struct kobject *bgrt_kobj;
>
> -static ssize_t show_version(struct device *dev,
> +static ssize_t version_show(struct device *dev,
> struct device_attribute *attr, char *buf)
> {
> return snprintf(buf, PAGE_SIZE, "%d\n", bgrt_tab.version);
> }
> -static DEVICE_ATTR(version, S_IRUGO, show_version, NULL);
> +static DEVICE_ATTR_RO(version);
>
> -static ssize_t show_status(struct device *dev,
> +static ssize_t status_show(struct device *dev,
> struct device_attribute *attr, char *buf)
> {
> return snprintf(buf, PAGE_SIZE, "%d\n", bgrt_tab.status);
> }
> -static DEVICE_ATTR(status, S_IRUGO, show_status, NULL);
> +static DEVICE_ATTR_RO(status);
>
> -static ssize_t show_type(struct device *dev,
> +static ssize_t type_show(struct device *dev,
> struct device_attribute *attr, char *buf)
> {
> return snprintf(buf, PAGE_SIZE, "%d\n", bgrt_tab.image_type);
> }
> -static DEVICE_ATTR(type, S_IRUGO, show_type, NULL);
> +static DEVICE_ATTR_RO(type);
>
> -static ssize_t show_xoffset(struct device *dev,
> +static ssize_t xoffset_show(struct device *dev,
> struct device_attribute *attr, char *buf)
> {
> return snprintf(buf, PAGE_SIZE, "%d\n", bgrt_tab.image_offset_x);
> }
> -static DEVICE_ATTR(xoffset, S_IRUGO, show_xoffset, NULL);
> +static DEVICE_ATTR_RO(xoffset);
>
> -static ssize_t show_yoffset(struct device *dev,
> +static ssize_t yoffset_show(struct device *dev,
> struct device_attribute *attr, char *buf)
> {
> return snprintf(buf, PAGE_SIZE, "%d\n", bgrt_tab.image_offset_y);
> }
> -static DEVICE_ATTR(yoffset, S_IRUGO, show_yoffset, NULL);
> +static DEVICE_ATTR_RO(yoffset);
>
> static ssize_t image_read(struct file *file, struct kobject *kobj,
> struct bin_attribute *attr, char *buf, loff_t off, size_t count)
> diff --git a/drivers/acpi/device_sysfs.c b/drivers/acpi/device_sysfs.c
> index 96869f1538b9..a25f108240e4 100644
> --- a/drivers/acpi/device_sysfs.c
> +++ b/drivers/acpi/device_sysfs.c
> @@ -333,11 +333,11 @@ int acpi_device_modalias(struct device *dev, char *buf, int size)
> EXPORT_SYMBOL_GPL(acpi_device_modalias);
>
> static ssize_t
> -acpi_device_modalias_show(struct device *dev, struct device_attribute *attr, char *buf)
> +modalias_show(struct device *dev, struct device_attribute *attr, char *buf)
> {
> return __acpi_device_modalias(to_acpi_device(dev), buf, 1024);
> }
> -static DEVICE_ATTR(modalias, 0444, acpi_device_modalias_show, NULL);
> +static DEVICE_ATTR_RO(modalias);
>
> static ssize_t real_power_state_show(struct device *dev,
> struct device_attribute *attr, char *buf)
> @@ -366,8 +366,8 @@ static ssize_t power_state_show(struct device *dev,
> static DEVICE_ATTR_RO(power_state);
>
> static ssize_t
> -acpi_eject_store(struct device *d, struct device_attribute *attr,
> - const char *buf, size_t count)
> +eject_store(struct device *d, struct device_attribute *attr,
> + const char *buf, size_t count)
> {
> struct acpi_device *acpi_device = to_acpi_device(d);
> acpi_object_type not_used;
> @@ -395,28 +395,28 @@ acpi_eject_store(struct device *d, struct device_attribute *attr,
> return status == AE_NO_MEMORY ? -ENOMEM : -EAGAIN;
> }
>
> -static DEVICE_ATTR(eject, 0200, NULL, acpi_eject_store);
> +static DEVICE_ATTR_WO(eject);
>
> static ssize_t
> -acpi_device_hid_show(struct device *dev, struct device_attribute *attr, char *buf)
> +hid_show(struct device *dev, struct device_attribute *attr, char *buf)
> {
> struct acpi_device *acpi_dev = to_acpi_device(dev);
>
> return sprintf(buf, "%s\n", acpi_device_hid(acpi_dev));
> }
> -static DEVICE_ATTR(hid, 0444, acpi_device_hid_show, NULL);
> +static DEVICE_ATTR_RO(hid);
>
> -static ssize_t acpi_device_uid_show(struct device *dev,
> - struct device_attribute *attr, char *buf)
> +static ssize_t uid_show(struct device *dev,
> + struct device_attribute *attr, char *buf)
> {
> struct acpi_device *acpi_dev = to_acpi_device(dev);
>
> return sprintf(buf, "%s\n", acpi_dev->pnp.unique_id);
> }
> -static DEVICE_ATTR(uid, 0444, acpi_device_uid_show, NULL);
> +static DEVICE_ATTR_RO(uid);
>
> -static ssize_t acpi_device_adr_show(struct device *dev,
> - struct device_attribute *attr, char *buf)
> +static ssize_t adr_show(struct device *dev,
> + struct device_attribute *attr, char *buf)
> {
> struct acpi_device *acpi_dev = to_acpi_device(dev);
>
> @@ -425,16 +425,16 @@ static ssize_t acpi_device_adr_show(struct device *dev,
> else
> return sprintf(buf, "0x%08llx\n", acpi_dev->pnp.bus_address);
> }
> -static DEVICE_ATTR(adr, 0444, acpi_device_adr_show, NULL);
> +static DEVICE_ATTR_RO(adr);
>
> -static ssize_t acpi_device_path_show(struct device *dev,
> - struct device_attribute *attr, char *buf)
> +static ssize_t path_show(struct device *dev,
> + struct device_attribute *attr, char *buf)
> {
> struct acpi_device *acpi_dev = to_acpi_device(dev);
>
> return acpi_object_path(acpi_dev->handle, buf);
> }
> -static DEVICE_ATTR(path, 0444, acpi_device_path_show, NULL);
> +static DEVICE_ATTR_RO(path);
>
> /* sysfs file that shows description text from the ACPI _STR method */
> static ssize_t description_show(struct device *dev,
> @@ -463,8 +463,8 @@ static ssize_t description_show(struct device *dev,
> static DEVICE_ATTR_RO(description);
>
> static ssize_t
> -acpi_device_sun_show(struct device *dev, struct device_attribute *attr,
> - char *buf) {
> +sun_show(struct device *dev, struct device_attribute *attr,
> + char *buf) {
> struct acpi_device *acpi_dev = to_acpi_device(dev);
> acpi_status status;
> unsigned long long sun;
> @@ -475,11 +475,11 @@ acpi_device_sun_show(struct device *dev, struct device_attribute *attr,
>
> return sprintf(buf, "%llu\n", sun);
> }
> -static DEVICE_ATTR(sun, 0444, acpi_device_sun_show, NULL);
> +static DEVICE_ATTR_RO(sun);
>
> static ssize_t
> -acpi_device_hrv_show(struct device *dev, struct device_attribute *attr,
> - char *buf) {
> +hrv_show(struct device *dev, struct device_attribute *attr,
> + char *buf) {
> struct acpi_device *acpi_dev = to_acpi_device(dev);
> acpi_status status;
> unsigned long long hrv;
> @@ -490,7 +490,7 @@ acpi_device_hrv_show(struct device *dev, struct device_attribute *attr,
>
> return sprintf(buf, "%llu\n", hrv);
> }
> -static DEVICE_ATTR(hrv, 0444, acpi_device_hrv_show, NULL);
> +static DEVICE_ATTR_RO(hrv);
>
> static ssize_t status_show(struct device *dev, struct device_attribute *attr,
> char *buf) {
> diff --git a/drivers/acpi/dock.c b/drivers/acpi/dock.c
> index 24e076f44d23..0937ceab052e 100644
> --- a/drivers/acpi/dock.c
> +++ b/drivers/acpi/dock.c
> @@ -484,7 +484,7 @@ int dock_notify(struct acpi_device *adev, u32 event)
> /*
> * show_docked - read method for "docked" file in sysfs
> */
> -static ssize_t show_docked(struct device *dev,
> +static ssize_t docked_show(struct device *dev,
> struct device_attribute *attr, char *buf)
> {
> struct dock_station *dock_station = dev->platform_data;
> @@ -493,25 +493,25 @@ static ssize_t show_docked(struct device *dev,
> acpi_bus_get_device(dock_station->handle, &adev);
> return snprintf(buf, PAGE_SIZE, "%u\n", acpi_device_enumerated(adev));
> }
> -static DEVICE_ATTR(docked, S_IRUGO, show_docked, NULL);
> +static DEVICE_ATTR_RO(docked);
>
> /*
> * show_flags - read method for flags file in sysfs
> */
> -static ssize_t show_flags(struct device *dev,
> +static ssize_t flags_show(struct device *dev,
> struct device_attribute *attr, char *buf)
> {
> struct dock_station *dock_station = dev->platform_data;
> return snprintf(buf, PAGE_SIZE, "%d\n", dock_station->flags);
>
> }
> -static DEVICE_ATTR(flags, S_IRUGO, show_flags, NULL);
> +static DEVICE_ATTR_RO(flags);
>
> /*
> * write_undock - write method for "undock" file in sysfs
> */
> -static ssize_t write_undock(struct device *dev, struct device_attribute *attr,
> - const char *buf, size_t count)
> +static ssize_t undock_store(struct device *dev, struct device_attribute *attr,
> + const char *buf, size_t count)
> {
> int ret;
> struct dock_station *dock_station = dev->platform_data;
> @@ -525,13 +525,13 @@ static ssize_t write_undock(struct device *dev, struct device_attribute *attr,
> acpi_scan_lock_release();
> return ret ? ret: count;
> }
> -static DEVICE_ATTR(undock, S_IWUSR, NULL, write_undock);
> +static DEVICE_ATTR_WO(undock);
>
> /*
> * show_dock_uid - read method for "uid" file in sysfs
> */
> -static ssize_t show_dock_uid(struct device *dev,
> - struct device_attribute *attr, char *buf)
> +static ssize_t uid_show(struct device *dev,
> + struct device_attribute *attr, char *buf)
> {
> unsigned long long lbuf;
> struct dock_station *dock_station = dev->platform_data;
> @@ -542,10 +542,10 @@ static ssize_t show_dock_uid(struct device *dev,
>
> return snprintf(buf, PAGE_SIZE, "%llx\n", lbuf);
> }
> -static DEVICE_ATTR(uid, S_IRUGO, show_dock_uid, NULL);
> +static DEVICE_ATTR_RO(uid);
>
> -static ssize_t show_dock_type(struct device *dev,
> - struct device_attribute *attr, char *buf)
> +static ssize_t type_show(struct device *dev,
> + struct device_attribute *attr, char *buf)
> {
> struct dock_station *dock_station = dev->platform_data;
> char *type;
> @@ -561,7 +561,7 @@ static ssize_t show_dock_type(struct device *dev,
>
> return snprintf(buf, PAGE_SIZE, "%s\n", type);
> }
> -static DEVICE_ATTR(type, S_IRUGO, show_dock_type, NULL);
> +static DEVICE_ATTR_RO(type);
>
> static struct attribute *dock_attributes[] = {
> &dev_attr_docked.attr,
> diff --git a/drivers/acpi/power.c b/drivers/acpi/power.c
> index 189a0d4c6d06..3a7d0d703059 100644
> --- a/drivers/acpi/power.c
> +++ b/drivers/acpi/power.c
> @@ -886,15 +886,16 @@ static void acpi_release_power_resource(struct device *dev)
> kfree(resource);
> }
>
> -static ssize_t acpi_power_in_use_show(struct device *dev,
> - struct device_attribute *attr,
> - char *buf) {
> +static ssize_t resource_in_use_show(struct device *dev,
> + struct device_attribute *attr,
> + char *buf)
> +{
> struct acpi_power_resource *resource;
>
> resource = to_power_resource(to_acpi_device(dev));
> return sprintf(buf, "%u\n", !!resource->ref_count);
> }
> -static DEVICE_ATTR(resource_in_use, 0444, acpi_power_in_use_show, NULL);
> +static DEVICE_ATTR_RO(resource_in_use);
>
> static void acpi_power_sysfs_remove(struct acpi_device *device)
> {
> --
> 2.27.0
>