Re: [PATCH 08/12] coresight: don't use bitmap_print_to_pagebuf()

From: Thomas Weißschuh

Date: Thu Feb 19 2026 - 13:42:19 EST


Hi Yury,

On 2026-02-19 13:14:00-0500, Yury Norov wrote:
> Switch to a more common scnprintf("%*pbl") where appropriate.
>
> Signed-off-by: Yury Norov <ynorov@xxxxxxxxxx>
> ---
> .../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