]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
thermal: intel: int340x: Use sysfs_emit{_at}() in sysfs show functions
authorThorsten Blum <thorsten.blum@linux.dev>
Sat, 20 Dec 2025 22:30:11 +0000 (23:30 +0100)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Wed, 7 Jan 2026 20:46:13 +0000 (21:46 +0100)
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 they provide better bounds checking.

Signed-off-by: Thorsten Blum <thorsten.blum@linux.dev>
Reviewed-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
[ rjw: Subject adjustment, changelog edits ]
Link: https://patch.msgid.link/20251220223026.125678-1-thorsten.blum@linux.dev
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/thermal/intel/int340x_thermal/processor_thermal_device.c
drivers/thermal/intel/int340x_thermal/processor_thermal_rfim.c
drivers/thermal/intel/int340x_thermal/processor_thermal_wt_req.c

index 48e7849d48160e2d6fe370f5fefdb85da4b17544..f80dbe2ca7e477c92fd2a95b15f33f700f89d368 100644 (file)
@@ -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,
index 589a3a71f0c4c12d1f1f52f4fd58234e9cbd4082..bb9398dfa3c13a542bf71059623a228cb6972627 100644 (file)
@@ -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);
index b95810f4a0118a16729d81421c5178b8ffbd3bd6..2372f520201990f599a6eb314f07e225fc5adb68 100644 (file)
@@ -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);