Hi Yury,
On 2026-02-19 13:14:00-0500, Yury Norov wrote:
quoted hunk ↗ jump to hunk
Switch to a more common scnprintf("%*pbl") where appropriate.
Signed-off-by: Yury Norov <redacted>
---
.../hwtracing/coresight/coresight-cti-sysfs.c | 33 +++++++++----------
1 file changed, 15 insertions(+), 18 deletions(-)
diff --git a/drivers/hwtracing/coresight/coresight-cti-sysfs.c b/drivers/hwtracing/coresight/coresight-cti-sysfs.c
index 572b80ee96fb..182c8db52a04 100644
--- a/drivers/hwtracing/coresight/coresight-cti-sysfs.c
+++ b/drivers/hwtracing/coresight/coresight-cti-sysfs.c
@@ -606,14 +606,11 @@ static ssize_t chan_gate_enable_show(struct device *dev,
struct cti_drvdata *drvdata = dev_get_drvdata(dev->parent);
struct cti_config *cfg = &drvdata->config;
unsigned long ctigate_bitmask = cfg->ctigate;
- int size = 0;
if (cfg->ctigate == 0)
- size = sprintf(buf, "\n");
- else
- size = bitmap_print_to_pagebuf(true, buf, &ctigate_bitmask,
- cfg->nr_ctm_channels);
- return size;
+ return sprintf(buf, "\n");
+
+ return scnprintf(buf, rest_of_page(buf), "%*pbl\n", cfg->nr_ctm_channels, &ctigate_bitmask);
For sysfs show handlers the correct formatting function is sysfs_emit()
rather than raw scnprintf(). It validates that buf is page-aligned
(which is always true for sysfs show handlers) and that the output does
not exceed PAGE_SIZE.
(...)
Thomas