* [PATCH v2 1/5] power: Use %pe to print error pointers symbolically
2026-09-12 19:11 [PATCH v2 0/5] PM: Use %pe to print error pointers symbolically Sumeet Pawnikar
@ 2026-09-12 19:11 ` Sumeet Pawnikar
2026-09-12 19:11 ` [PATCH v2 2/5] devfreq: " Sumeet Pawnikar
` (3 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: Sumeet Pawnikar @ 2026-09-12 19:11 UTC (permalink / raw)
To: rafael, krzk, amit.kachhap, daniel.lezcano, thara.gopinath,
talel, hayashi.kunihiko, mhiramat, mmayer, viresh.kumar, sumitg,
peter.griffin, myungjoo.ham, kyungmin.park, cw00.choi, Frank.Li,
s.hauer, matthias.bgg, angelogioacchino.delregno, sven, j,
marcan, casey.connolly, sre, wens, t.schramm
Cc: bcm-kernel-feedback-list, linux-samsung-soc, kernel, imx,
linux-mediatek, linux-arm-kernel, linux-arm-msm, linux-pm,
linux-kernel, sumeet4linux
Replace PTR_ERR() and %ld/%li with %pe and pass the original pointer
directly to dev_info(), dev_Warn and dev_dbg(). The %pe format specifier
prints a symbolic error name (e.g. -ENOMEM) when CONFIG_SYMBOLIC_ERRNAME
is enabled, otherwise it falls back gracefully and prints the raw integer
value. This makes messages more readable without any functional change.
Signed-off-by: Sumeet Pawnikar <sumeet4linux@gmail.com>
---
drivers/power/reset/macsmc-reboot.c | 4 ++--
drivers/power/supply/cpcap-charger.c | 4 ++--
drivers/power/supply/intel_dc_ti_battery.c | 2 +-
drivers/power/supply/qcom_smbx.c | 2 +-
4 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/drivers/power/reset/macsmc-reboot.c b/drivers/power/reset/macsmc-reboot.c
index 9fc36fa68676..7b8460a55e9d 100644
--- a/drivers/power/reset/macsmc-reboot.c
+++ b/drivers/power/reset/macsmc-reboot.c
@@ -221,8 +221,8 @@ static int macsmc_reboot_probe(struct platform_device *pdev)
if (IS_ERR(cell)) {
if (PTR_ERR(cell) == -EPROBE_DEFER)
return -EPROBE_DEFER;
- dev_warn(&pdev->dev, "Missing NVMEM cell %s (%ld)\n",
- nvmem_names[i], PTR_ERR(cell));
+ dev_warn(&pdev->dev, "Missing NVMEM cell %s (%pe)\n",
+ nvmem_names[i], cell);
/* Non fatal, we'll deal with it */
cell = NULL;
}
diff --git a/drivers/power/supply/cpcap-charger.c b/drivers/power/supply/cpcap-charger.c
index 34a57dd5c3cf..d423a8bdc0c2 100644
--- a/drivers/power/supply/cpcap-charger.c
+++ b/drivers/power/supply/cpcap-charger.c
@@ -808,8 +808,8 @@ static void cpcap_charger_init_optional_gpios(struct cpcap_charger_ddata *ddata)
ddata->gpio[i] = devm_gpiod_get_index(ddata->dev, "mode",
i, GPIOD_OUT_HIGH);
if (IS_ERR(ddata->gpio[i])) {
- dev_info(ddata->dev, "no mode change GPIO%i: %li\n",
- i, PTR_ERR(ddata->gpio[i]));
+ dev_info(ddata->dev, "no mode change GPIO%i: %pe\n",
+ i, ddata->gpio[i]);
ddata->gpio[i] = NULL;
}
}
diff --git a/drivers/power/supply/intel_dc_ti_battery.c b/drivers/power/supply/intel_dc_ti_battery.c
index cb6fa8d88b43..5819df23a543 100644
--- a/drivers/power/supply/intel_dc_ti_battery.c
+++ b/drivers/power/supply/intel_dc_ti_battery.c
@@ -349,7 +349,7 @@ static int dc_ti_battery_probe(struct platform_device *pdev)
chip->vbat_channel = devm_iio_channel_get(dev, "VBAT");
if (IS_ERR(chip->vbat_channel)) {
- dev_dbg(dev, "devm_iio_channel_get() ret %ld\n", PTR_ERR(chip->vbat_channel));
+ dev_dbg(dev, "devm_iio_channel_get() ret %pe\n", chip->vbat_channel);
return dev_err_probe(dev, -EPROBE_DEFER, "Waiting for VBAT IIO channel\n");
}
diff --git a/drivers/power/supply/qcom_smbx.c b/drivers/power/supply/qcom_smbx.c
index 67fdb4335338..c8e242341d04 100644
--- a/drivers/power/supply/qcom_smbx.c
+++ b/drivers/power/supply/qcom_smbx.c
@@ -613,7 +613,7 @@ static int smb_get_iio_chan(struct smb_chip *chip, struct iio_channel *chan,
}
if (IS_ERR(chan)) {
- dev_err(chip->dev, "Failed to chan, err = %li", PTR_ERR(chan));
+ dev_err(chip->dev, "Failed to chan, err = %pe", chan);
return PTR_ERR(chan);
}
--
2.43.0
^ permalink raw reply [flat|nested] 6+ messages in thread* [PATCH v2 2/5] devfreq: Use %pe to print error pointers symbolically
2026-09-12 19:11 [PATCH v2 0/5] PM: Use %pe to print error pointers symbolically Sumeet Pawnikar
2026-09-12 19:11 ` [PATCH v2 1/5] power: " Sumeet Pawnikar
@ 2026-09-12 19:11 ` Sumeet Pawnikar
2026-09-12 19:11 ` [PATCH v2 3/5] cpufreq: " Sumeet Pawnikar
` (2 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: Sumeet Pawnikar @ 2026-09-12 19:11 UTC (permalink / raw)
To: rafael, krzk, amit.kachhap, daniel.lezcano, thara.gopinath,
talel, hayashi.kunihiko, mhiramat, mmayer, viresh.kumar, sumitg,
peter.griffin, myungjoo.ham, kyungmin.park, cw00.choi, Frank.Li,
s.hauer, matthias.bgg, angelogioacchino.delregno, sven, j,
marcan, casey.connolly, sre, wens, t.schramm
Cc: bcm-kernel-feedback-list, linux-samsung-soc, kernel, imx,
linux-mediatek, linux-arm-kernel, linux-arm-msm, linux-pm,
linux-kernel, sumeet4linux
Replace PTR_ERR() and %ld with %pe and pass the original pointer directly
to dev_err(). The %pe format specifier prints a symbolic error name (e.g.
-ENOMEM) when CONFIG_SYMBOLIC_ERRNAME is enabled, otherwise it falls back
gracefully and prints the raw integer value. This makes messages more
readable without any functional change.
Signed-off-by: Sumeet Pawnikar <sumeet4linux@gmail.com>
---
drivers/devfreq/imx-bus.c | 4 ++--
drivers/devfreq/imx8m-ddrc.c | 3 +--
2 files changed, 3 insertions(+), 4 deletions(-)
diff --git a/drivers/devfreq/imx-bus.c b/drivers/devfreq/imx-bus.c
index 49798f542d68..dba76d8b9e5a 100644
--- a/drivers/devfreq/imx-bus.c
+++ b/drivers/devfreq/imx-bus.c
@@ -75,8 +75,8 @@ static int imx_bus_init_icc(struct device *dev)
priv->icc_pdev = platform_device_register_data(
dev, icc_driver_name, -1, NULL, 0);
if (IS_ERR(priv->icc_pdev)) {
- dev_err(dev, "failed to register icc provider %s: %ld\n",
- icc_driver_name, PTR_ERR(priv->icc_pdev));
+ dev_err(dev, "failed to register icc provider %s: %pe\n",
+ icc_driver_name, priv->icc_pdev);
return PTR_ERR(priv->icc_pdev);
}
diff --git a/drivers/devfreq/imx8m-ddrc.c b/drivers/devfreq/imx8m-ddrc.c
index 52beeb5b7d65..28d7c595fa17 100644
--- a/drivers/devfreq/imx8m-ddrc.c
+++ b/drivers/devfreq/imx8m-ddrc.c
@@ -340,8 +340,7 @@ static int imx8m_ddrc_check_opps(struct device *dev)
for (i = 0, freq = 0; i < opp_count; ++i, ++freq) {
opp = dev_pm_opp_find_freq_ceil(dev, &freq);
if (IS_ERR(opp)) {
- dev_err(dev, "Failed enumerating OPPs: %ld\n",
- PTR_ERR(opp));
+ dev_err(dev, "Failed enumerating OPPs: %pe\n", opp);
return PTR_ERR(opp);
}
dev_pm_opp_put(opp);
--
2.43.0
^ permalink raw reply [flat|nested] 6+ messages in thread* [PATCH v2 3/5] cpufreq: Use %pe to print error pointers symbolically
2026-09-12 19:11 [PATCH v2 0/5] PM: Use %pe to print error pointers symbolically Sumeet Pawnikar
2026-09-12 19:11 ` [PATCH v2 1/5] power: " Sumeet Pawnikar
2026-09-12 19:11 ` [PATCH v2 2/5] devfreq: " Sumeet Pawnikar
@ 2026-09-12 19:11 ` Sumeet Pawnikar
2026-09-12 19:11 ` [PATCH v2 4/5] thermal: " Sumeet Pawnikar
2026-09-12 19:11 ` [PATCH v2 5/5] powercap: intel_rapl: " Sumeet Pawnikar
4 siblings, 0 replies; 6+ messages in thread
From: Sumeet Pawnikar @ 2026-09-12 19:11 UTC (permalink / raw)
To: rafael, krzk, amit.kachhap, daniel.lezcano, thara.gopinath,
talel, hayashi.kunihiko, mhiramat, mmayer, viresh.kumar, sumitg,
peter.griffin, myungjoo.ham, kyungmin.park, cw00.choi, Frank.Li,
s.hauer, matthias.bgg, angelogioacchino.delregno, sven, j,
marcan, casey.connolly, sre, wens, t.schramm
Cc: bcm-kernel-feedback-list, linux-samsung-soc, kernel, imx,
linux-mediatek, linux-arm-kernel, linux-arm-msm, linux-pm,
linux-kernel, sumeet4linux
Replace PTR_ERR() and %ld with %pe and pass the original pointer directly
to pr_err() and pr_warn(). The %pe format specifier prints a symbolic error
name (e.g. -ENOMEM) when CONFIG_SYMBOLIC_ERRNAME is enabled, otherwise it
falls back gracefully and prints the raw integer value. This makes messages
more readable without any functional change.
Signed-off-by: Sumeet Pawnikar <sumeet4linux@gmail.com>
---
drivers/cpufreq/bmips-cpufreq.c | 4 ++--
drivers/cpufreq/cppc_cpufreq.c | 4 ++--
drivers/cpufreq/qoriq-cpufreq.c | 4 ++--
drivers/cpufreq/s3c64xx-cpufreq.c | 5 ++---
4 files changed, 8 insertions(+), 9 deletions(-)
diff --git a/drivers/cpufreq/bmips-cpufreq.c b/drivers/cpufreq/bmips-cpufreq.c
index a8e35bc75fb2..389fff5e6f65 100644
--- a/drivers/cpufreq/bmips-cpufreq.c
+++ b/drivers/cpufreq/bmips-cpufreq.c
@@ -132,8 +132,8 @@ static int bmips_cpufreq_init(struct cpufreq_policy *policy)
freq_table = bmips_cpufreq_get_freq_table(policy);
if (IS_ERR(freq_table)) {
- pr_err("%s: couldn't determine frequency table (%ld).\n",
- BMIPS_CPUFREQ_NAME, PTR_ERR(freq_table));
+ pr_err("%s: couldn't determine frequency table (%pe).\n",
+ BMIPS_CPUFREQ_NAME, freq_table);
return PTR_ERR(freq_table);
}
diff --git a/drivers/cpufreq/cppc_cpufreq.c b/drivers/cpufreq/cppc_cpufreq.c
index 80893844353c..f767898ebfb5 100644
--- a/drivers/cpufreq/cppc_cpufreq.c
+++ b/drivers/cpufreq/cppc_cpufreq.c
@@ -230,8 +230,8 @@ static void cppc_fie_kworker_init(void)
kworker_fie = kthread_run_worker(0, "cppc_fie");
if (IS_ERR(kworker_fie)) {
- pr_warn("%s: failed to create kworker_fie: %ld\n", __func__,
- PTR_ERR(kworker_fie));
+ pr_warn("%s: failed to create kworker_fie: %pe\n", __func__,
+ kworker_fie);
fie_disabled = FIE_DISABLED;
kworker_fie = NULL;
return;
diff --git a/drivers/cpufreq/qoriq-cpufreq.c b/drivers/cpufreq/qoriq-cpufreq.c
index 42edb41ad459..0652e5df0278 100644
--- a/drivers/cpufreq/qoriq-cpufreq.c
+++ b/drivers/cpufreq/qoriq-cpufreq.c
@@ -57,8 +57,8 @@ static u32 get_bus_freq(void)
/* get platform freq by its clock name */
pltclk = clk_get(NULL, "cg-pll0-div1");
if (IS_ERR(pltclk)) {
- pr_err("%s: can't get bus frequency %ld\n",
- __func__, PTR_ERR(pltclk));
+ pr_err("%s: can't get bus frequency %pe\n",
+ __func__, pltclk);
return PTR_ERR(pltclk);
}
diff --git a/drivers/cpufreq/s3c64xx-cpufreq.c b/drivers/cpufreq/s3c64xx-cpufreq.c
index 9cef71528076..9a01592425ee 100644
--- a/drivers/cpufreq/s3c64xx-cpufreq.c
+++ b/drivers/cpufreq/s3c64xx-cpufreq.c
@@ -152,15 +152,14 @@ static int s3c64xx_cpufreq_driver_init(struct cpufreq_policy *policy)
policy->clk = clk_get(NULL, "armclk");
if (IS_ERR(policy->clk)) {
- pr_err("Unable to obtain ARMCLK: %ld\n",
- PTR_ERR(policy->clk));
+ pr_err("Unable to obtain ARMCLK: %pe\n", policy->clk);
return PTR_ERR(policy->clk);
}
#ifdef CONFIG_REGULATOR
vddarm = regulator_get(NULL, "vddarm");
if (IS_ERR(vddarm)) {
- pr_err("Failed to obtain VDDARM: %ld\n", PTR_ERR(vddarm));
+ pr_err("Failed to obtain VDDARM: %pe\n", vddarm);
pr_err("Only frequency scaling available\n");
vddarm = NULL;
} else {
--
2.43.0
^ permalink raw reply [flat|nested] 6+ messages in thread* [PATCH v2 4/5] thermal: Use %pe to print error pointers symbolically
2026-09-12 19:11 [PATCH v2 0/5] PM: Use %pe to print error pointers symbolically Sumeet Pawnikar
` (2 preceding siblings ...)
2026-09-12 19:11 ` [PATCH v2 3/5] cpufreq: " Sumeet Pawnikar
@ 2026-09-12 19:11 ` Sumeet Pawnikar
2026-09-12 19:11 ` [PATCH v2 5/5] powercap: intel_rapl: " Sumeet Pawnikar
4 siblings, 0 replies; 6+ messages in thread
From: Sumeet Pawnikar @ 2026-09-12 19:11 UTC (permalink / raw)
To: rafael, krzk, amit.kachhap, daniel.lezcano, thara.gopinath,
talel, hayashi.kunihiko, mhiramat, mmayer, viresh.kumar, sumitg,
peter.griffin, myungjoo.ham, kyungmin.park, cw00.choi, Frank.Li,
s.hauer, matthias.bgg, angelogioacchino.delregno, sven, j,
marcan, casey.connolly, sre, wens, t.schramm
Cc: bcm-kernel-feedback-list, linux-samsung-soc, kernel, imx,
linux-mediatek, linux-arm-kernel, linux-arm-msm, linux-pm,
linux-kernel, sumeet4linux
Replace PTR_ERR() and %ld with %pe and pass the original pointer directly
to pr_err() and dev_err(). The %pe format specifier prints a symbolic error
name (e.g. -ENOMEM) when CONFIG_SYMBOLIC_ERRNAME is enabled, otherwise it
falls back gracefully and prints the raw integer value. This makes messages
more readable without any functional change.
Signed-off-by: Sumeet Pawnikar <sumeet4linux@gmail.com>
---
drivers/thermal/cpufreq_cooling.c | 4 ++--
drivers/thermal/devfreq_cooling.c | 4 ++--
drivers/thermal/qcom/qcom-spmi-adc-tm5.c | 4 ++--
3 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/drivers/thermal/cpufreq_cooling.c b/drivers/thermal/cpufreq_cooling.c
index 768859a7aed0..856d619370db 100644
--- a/drivers/thermal/cpufreq_cooling.c
+++ b/drivers/thermal/cpufreq_cooling.c
@@ -661,8 +661,8 @@ of_cpufreq_cooling_register(struct cpufreq_policy *policy)
cdev = __cpufreq_cooling_register(np, policy, em);
if (IS_ERR(cdev)) {
- pr_err("cpufreq_cooling: cpu%d failed to register as cooling device: %ld\n",
- policy->cpu, PTR_ERR(cdev));
+ pr_err("cpufreq_cooling: cpu%d failed to register as cooling device: %pe\n",
+ policy->cpu, cdev);
cdev = NULL;
}
}
diff --git a/drivers/thermal/devfreq_cooling.c b/drivers/thermal/devfreq_cooling.c
index 0330a8112832..9ada52cbf7dd 100644
--- a/drivers/thermal/devfreq_cooling.c
+++ b/drivers/thermal/devfreq_cooling.c
@@ -156,8 +156,8 @@ static unsigned long get_voltage(struct devfreq *df, unsigned long freq)
opp = dev_pm_opp_find_freq_exact(dev, freq, false);
if (IS_ERR(opp)) {
- dev_err_ratelimited(dev, "Failed to find OPP for frequency %lu: %ld\n",
- freq, PTR_ERR(opp));
+ dev_err_ratelimited(dev, "Failed to find OPP for frequency %lu: %pe\n",
+ freq, opp);
return 0;
}
diff --git a/drivers/thermal/qcom/qcom-spmi-adc-tm5.c b/drivers/thermal/qcom/qcom-spmi-adc-tm5.c
index af72db6299cd..4554a6fa55d1 100644
--- a/drivers/thermal/qcom/qcom-spmi-adc-tm5.c
+++ b/drivers/thermal/qcom/qcom-spmi-adc-tm5.c
@@ -680,8 +680,8 @@ static int adc_tm5_register_tzd(struct adc_tm5_chip *adc_tm)
continue;
}
- dev_err(adc_tm->dev, "Error registering TZ zone for channel %d: %ld\n",
- adc_tm->channels[i].channel, PTR_ERR(tzd));
+ dev_err(adc_tm->dev, "Error registering TZ zone for channel %d: %pe\n",
+ adc_tm->channels[i].channel, tzd);
return PTR_ERR(tzd);
}
adc_tm->channels[i].tzd = tzd;
--
2.43.0
^ permalink raw reply [flat|nested] 6+ messages in thread* [PATCH v2 5/5] powercap: intel_rapl: Use %pe to print error pointers symbolically
2026-09-12 19:11 [PATCH v2 0/5] PM: Use %pe to print error pointers symbolically Sumeet Pawnikar
` (3 preceding siblings ...)
2026-09-12 19:11 ` [PATCH v2 4/5] thermal: " Sumeet Pawnikar
@ 2026-09-12 19:11 ` Sumeet Pawnikar
4 siblings, 0 replies; 6+ messages in thread
From: Sumeet Pawnikar @ 2026-09-12 19:11 UTC (permalink / raw)
To: rafael, krzk, amit.kachhap, daniel.lezcano, thara.gopinath,
talel, hayashi.kunihiko, mhiramat, mmayer, viresh.kumar, sumitg,
peter.griffin, myungjoo.ham, kyungmin.park, cw00.choi, Frank.Li,
s.hauer, matthias.bgg, angelogioacchino.delregno, sven, j,
marcan, casey.connolly, sre, wens, t.schramm
Cc: bcm-kernel-feedback-list, linux-samsung-soc, kernel, imx,
linux-mediatek, linux-arm-kernel, linux-arm-msm, linux-pm,
linux-kernel, sumeet4linux
Replace PTR_ERR() and %ld with %pe and pass the original pointer directly
to pr_debug(). The %pe format specifier prints a symbolic error name
(e.g. -ENOMEM) when CONFIG_SYMBOLIC_ERRNAME is enabled, otherwise it falls
back gracefully and prints the raw integer value. This makes messages more
readable without any functional change.
Signed-off-by: Sumeet Pawnikar <sumeet4linux@gmail.com>
---
drivers/powercap/intel_rapl_msr.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/powercap/intel_rapl_msr.c b/drivers/powercap/intel_rapl_msr.c
index a34543e66446..46972ee1ff84 100644
--- a/drivers/powercap/intel_rapl_msr.c
+++ b/drivers/powercap/intel_rapl_msr.c
@@ -582,8 +582,8 @@ static int intel_rapl_msr_init(void)
rapl_msr_platdev = platform_device_register_data(NULL, "intel_rapl_msr", 0, def,
sizeof(*def));
if (IS_ERR(rapl_msr_platdev))
- pr_debug("intel_rapl_msr device register failed, ret:%ld\n",
- PTR_ERR(rapl_msr_platdev));
+ pr_debug("intel_rapl_msr device register failed, ret:%pe\n",
+ rapl_msr_platdev);
return 0;
}
--
2.43.0
^ permalink raw reply [flat|nested] 6+ messages in thread