From: srinivas pandruvada <srinivas.pandruvada@linux.intel.com>
To: Thorsten Blum <thorsten.blum@linux.dev>,
"Rafael J. Wysocki" <rafael@kernel.org>,
Daniel Lezcano <daniel.lezcano@linaro.org>,
Zhang Rui <rui.zhang@intel.com>,
Lukasz Luba <lukasz.luba@arm.com>,
Ingo Molnar <mingo@kernel.org>,
"Peter Zijlstra (Intel)" <peterz@infradead.org>,
"Xin Li (Intel)" <xin@zytor.com>
Cc: "Rafael J. Wysocki" <rafael.j.wysocki@intel.com>,
Dave Hansen <dave.hansen@linux.intel.com>,
linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH] thermal: intel: int340x: Use sysfs_emit{_at} in sysfs show functions
Date: Mon, 22 Dec 2025 06:43:45 -0800 [thread overview]
Message-ID: <1dd5045fbbb443fc12e602fc2803857401289294.camel@linux.intel.com> (raw)
In-Reply-To: <20251220223026.125678-1-thorsten.blum@linux.dev>
On Sat, 2025-12-20 at 23:30 +0100, Thorsten Blum wrote:
> Replace sprintf() with sysfs_emit() and sysfs_emit_at() in sysfs show
> functions. sysfs_emit() and sysfs_emit_at() are preferred to format
> sysfs output as it provides better bounds checking.
>
> Signed-off-by: Thorsten Blum <thorsten.blum@linux.dev>
Reviewed-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
> ---
> .../intel/int340x_thermal/processor_thermal_device.c | 5 +++--
> .../intel/int340x_thermal/processor_thermal_rfim.c | 9 +++++--
> --
> .../intel/int340x_thermal/processor_thermal_wt_req.c | 7 ++++---
> 3 files changed, 12 insertions(+), 9 deletions(-)
>
> diff --git
> a/drivers/thermal/intel/int340x_thermal/processor_thermal_device.c
> b/drivers/thermal/intel/int340x_thermal/processor_thermal_device.c
> index 48e7849d4816..f80dbe2ca7e4 100644
> ---
> a/drivers/thermal/intel/int340x_thermal/processor_thermal_device.c
> +++
> b/drivers/thermal/intel/int340x_thermal/processor_thermal_device.c
> @@ -8,6 +8,7 @@
> #include <linux/kernel.h>
> #include <linux/module.h>
> #include <linux/pci.h>
> +#include <linux/sysfs.h>
> #include <linux/thermal.h>
> #include <asm/msr.h>
> #include "int340x_thermal_zone.h"
> @@ -23,7 +24,7 @@ static ssize_t
> power_limit_##index##_##suffix##_show(struct device *dev, \
> { \
> struct proc_thermal_device *proc_dev = dev_get_drvdata(dev);
> \
> \
> - return sprintf(buf, "%lu\n",\
> + return sysfs_emit(buf, "%lu\n",\
> (unsigned long)proc_dev->power_limits[index].suffix * 1000);
> \
> }
>
> @@ -143,7 +144,7 @@ static ssize_t
> tcc_offset_degree_celsius_show(struct device *dev,
> if (offset < 0)
> return offset;
>
> - return sprintf(buf, "%d\n", offset);
> + return sysfs_emit(buf, "%d\n", offset);
> }
>
> static ssize_t tcc_offset_degree_celsius_store(struct device *dev,
> diff --git
> a/drivers/thermal/intel/int340x_thermal/processor_thermal_rfim.c
> b/drivers/thermal/intel/int340x_thermal/processor_thermal_rfim.c
> index 589a3a71f0c4..bb9398dfa3c1 100644
> --- a/drivers/thermal/intel/int340x_thermal/processor_thermal_rfim.c
> +++ b/drivers/thermal/intel/int340x_thermal/processor_thermal_rfim.c
> @@ -7,6 +7,7 @@
> #include <linux/kernel.h>
> #include <linux/module.h>
> #include <linux/pci.h>
> +#include <linux/sysfs.h>
> #include "processor_thermal_device.h"
>
> MODULE_IMPORT_NS("INT340X_THERMAL");
> @@ -211,9 +212,9 @@ static ssize_t suffix##_show(struct device *dev,\
> ret = (reg_val >> mmio_regs[ret].shift) &
> mmio_regs[ret].mask;\
> err = get_mapped_string(mapping, attr->attr.name, ret,
> &str);\
> if (!err)\
> - return sprintf(buf, "%s\n", str);\
> + return sysfs_emit(buf, "%s\n", str);\
> if (err == -EOPNOTSUPP)\
> - return sprintf(buf, "%u\n", ret);\
> + return sysfs_emit(buf, "%u\n", ret);\
> return err;\
> }
>
> @@ -398,7 +399,7 @@ static ssize_t rfi_restriction_show(struct device
> *dev,
> if (ret)
> return ret;
>
> - return sprintf(buf, "%llu\n", resp);
> + return sysfs_emit(buf, "%llu\n", resp);
> }
>
> static ssize_t ddr_data_rate_show(struct device *dev,
> @@ -413,7 +414,7 @@ static ssize_t ddr_data_rate_show(struct device
> *dev,
> if (ret)
> return ret;
>
> - return sprintf(buf, "%llu\n", resp);
> + return sysfs_emit(buf, "%llu\n", resp);
> }
>
> static DEVICE_ATTR_RW(rfi_restriction);
> diff --git
> a/drivers/thermal/intel/int340x_thermal/processor_thermal_wt_req.c
> b/drivers/thermal/intel/int340x_thermal/processor_thermal_wt_req.c
> index b95810f4a011..2372f5202019 100644
> ---
> a/drivers/thermal/intel/int340x_thermal/processor_thermal_wt_req.c
> +++
> b/drivers/thermal/intel/int340x_thermal/processor_thermal_wt_req.c
> @@ -7,6 +7,7 @@
> */
>
> #include <linux/pci.h>
> +#include <linux/sysfs.h>
> #include "processor_thermal_device.h"
>
> /* List of workload types */
> @@ -28,9 +29,9 @@ static ssize_t workload_available_types_show(struct
> device *dev,
> int ret = 0;
>
> while (workload_types[i] != NULL)
> - ret += sprintf(&buf[ret], "%s ",
> workload_types[i++]);
> + ret += sysfs_emit_at(buf, ret, "%s ",
> workload_types[i++]);
>
> - ret += sprintf(&buf[ret], "\n");
> + ret += sysfs_emit_at(buf, ret, "\n");
>
> return ret;
> }
> @@ -85,7 +86,7 @@ static ssize_t workload_type_show(struct device
> *dev,
> if (cmd_resp > ARRAY_SIZE(workload_types) - 1)
> return -EINVAL;
>
> - return sprintf(buf, "%s\n", workload_types[cmd_resp]);
> + return sysfs_emit(buf, "%s\n", workload_types[cmd_resp]);
> }
>
> static DEVICE_ATTR_RW(workload_type);
next prev parent reply other threads:[~2025-12-22 14:43 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-12-20 22:30 [PATCH] thermal: intel: int340x: Use sysfs_emit{_at} in sysfs show functions Thorsten Blum
2025-12-22 14:43 ` srinivas pandruvada [this message]
2026-01-07 20:47 ` Rafael J. Wysocki
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1dd5045fbbb443fc12e602fc2803857401289294.camel@linux.intel.com \
--to=srinivas.pandruvada@linux.intel.com \
--cc=daniel.lezcano@linaro.org \
--cc=dave.hansen@linux.intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=lukasz.luba@arm.com \
--cc=mingo@kernel.org \
--cc=peterz@infradead.org \
--cc=rafael.j.wysocki@intel.com \
--cc=rafael@kernel.org \
--cc=rui.zhang@intel.com \
--cc=thorsten.blum@linux.dev \
--cc=xin@zytor.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.