]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
coresight: perf: Use %px for printing pointers
authorLeo Yan <leo.yan@arm.com>
Wed, 11 Jun 2025 14:44:02 +0000 (15:44 +0100)
committerSuzuki K Poulose <suzuki.poulose@arm.com>
Tue, 2 Sep 2025 08:12:58 +0000 (09:12 +0100)
Use "%px" to print a pointer, which is better than casting the pointer
to unsigned long and printing it with the "%lx" specifier.

Note, the printing format will be updated as 64-bit value:

  # cat /sys/devices/cs_etm/sinks/trbe0
  0x000000003744496a

This commit dismisses the following smatch warnings:

  coresight-etm-perf.c:854 etm_perf_sink_name_show() warn: argument 4 to %lx specifier is cast from pointer
  coresight-etm-perf.c:946 etm_perf_cscfg_event_show() warn: argument 4 to %lx specifier is cast from pointer

Signed-off-by: Leo Yan <leo.yan@arm.com>
Signed-off-by: Suzuki K Poulose <suzuki.poulose@arm.com>
Link: https://lore.kernel.org/r/20250611-arm_cs_fix_smatch_warning_v1-v1-2-02a66c69b604@arm.com
drivers/hwtracing/coresight/coresight-etm-perf.c

index f1551c08ecb20ebd7feab82dbaee3176e6bcc999..f677c08233ba1a28b277674662c6e6db904873dd 100644 (file)
@@ -851,7 +851,7 @@ static ssize_t etm_perf_sink_name_show(struct device *dev,
        struct dev_ext_attribute *ea;
 
        ea = container_of(dattr, struct dev_ext_attribute, attr);
-       return scnprintf(buf, PAGE_SIZE, "0x%lx\n", (unsigned long)(ea->var));
+       return scnprintf(buf, PAGE_SIZE, "0x%px\n", ea->var);
 }
 
 static struct dev_ext_attribute *
@@ -943,7 +943,7 @@ static ssize_t etm_perf_cscfg_event_show(struct device *dev,
        struct dev_ext_attribute *ea;
 
        ea = container_of(dattr, struct dev_ext_attribute, attr);
-       return scnprintf(buf, PAGE_SIZE, "configid=0x%lx\n", (unsigned long)(ea->var));
+       return scnprintf(buf, PAGE_SIZE, "configid=0x%px\n", ea->var);
 }
 
 int etm_perf_add_symlink_cscfg(struct device *dev, struct cscfg_config_desc *config_desc)