* [PATCH 1/5] powercap: intel_rapl: Use %pe to print error pointers symbolically
2026-09-06 6:17 [PATCH 0/5] PM: Use %pe to print error pointers symbolically Sumeet Pawnikar
@ 2026-09-06 6:17 ` Sumeet Pawnikar
2026-09-06 6:28 ` Krzysztof Kozlowski
2026-09-06 6:17 ` [PATCH 2/5] thermal: " Sumeet Pawnikar
` (3 subsequent siblings)
4 siblings, 1 reply; 11+ messages in thread
From: Sumeet Pawnikar @ 2026-09-06 6:17 UTC (permalink / raw)
To: rafael, amit.kachhap, daniel.lezcano, thara.gopinath, talel,
hayashi.kunihiko, mhiramat, mmayer, viresh.kumar, sumitg, krzk,
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() 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/powercap/intel_rapl_msr.c | 4 ++--
drivers/powercap/intel_rapl_tpmi.c | 4 ++--
2 files changed, 4 insertions(+), 4 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;
}
diff --git a/drivers/powercap/intel_rapl_tpmi.c b/drivers/powercap/intel_rapl_tpmi.c
index 73f36d9c09b1..6baaad3c59ef 100644
--- a/drivers/powercap/intel_rapl_tpmi.c
+++ b/drivers/powercap/intel_rapl_tpmi.c
@@ -408,8 +408,8 @@ static int intel_rapl_tpmi_probe(struct auxiliary_device *auxdev,
trp->rp = rapl_add_package(info->package_id, &trp->priv, false);
if (IS_ERR(trp->rp)) {
- dev_err(&auxdev->dev, "Failed to add RAPL Domain for Package%d, %ld\n",
- info->package_id, PTR_ERR(trp->rp));
+ dev_err(&auxdev->dev, "Failed to add RAPL Domain for Package%d, %pe\n",
+ info->package_id, trp->rp);
ret = PTR_ERR(trp->rp);
goto err;
}
--
2.43.0
^ permalink raw reply [flat|nested] 11+ messages in thread* Re: [PATCH 1/5] powercap: intel_rapl: Use %pe to print error pointers symbolically
2026-09-06 6:17 ` [PATCH 1/5] powercap: intel_rapl: " Sumeet Pawnikar
@ 2026-09-06 6:28 ` Krzysztof Kozlowski
0 siblings, 0 replies; 11+ messages in thread
From: Krzysztof Kozlowski @ 2026-09-06 6:28 UTC (permalink / raw)
To: Sumeet Pawnikar, rafael, 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
On 06/09/2026 08:17, Sumeet Pawnikar wrote:
> trp->rp = rapl_add_package(info->package_id, &trp->priv, false);
> if (IS_ERR(trp->rp)) {
> - dev_err(&auxdev->dev, "Failed to add RAPL Domain for Package%d, %ld\n",
> - info->package_id, PTR_ERR(trp->rp));
> + dev_err(&auxdev->dev, "Failed to add RAPL Domain for Package%d, %pe\n",
> + info->package_id, trp->rp);
Instead you should use dev_err_probe and drop the last argument.
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH 2/5] thermal: Use %pe to print error pointers symbolically
2026-09-06 6:17 [PATCH 0/5] PM: Use %pe to print error pointers symbolically Sumeet Pawnikar
2026-09-06 6:17 ` [PATCH 1/5] powercap: intel_rapl: " Sumeet Pawnikar
@ 2026-09-06 6:17 ` Sumeet Pawnikar
2026-09-06 6:29 ` Krzysztof Kozlowski
2026-09-06 6:17 ` [PATCH 3/5] cpufreq: " Sumeet Pawnikar
` (2 subsequent siblings)
4 siblings, 1 reply; 11+ messages in thread
From: Sumeet Pawnikar @ 2026-09-06 6:17 UTC (permalink / raw)
To: rafael, amit.kachhap, daniel.lezcano, thara.gopinath, talel,
hayashi.kunihiko, mhiramat, mmayer, viresh.kumar, sumitg, krzk,
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 ++--
drivers/thermal/thermal_mmio.c | 3 +--
drivers/thermal/uniphier_thermal.c | 3 +--
5 files changed, 8 insertions(+), 10 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;
diff --git a/drivers/thermal/thermal_mmio.c b/drivers/thermal/thermal_mmio.c
index 6845756ad5e7..b34e70991d3d 100644
--- a/drivers/thermal/thermal_mmio.c
+++ b/drivers/thermal/thermal_mmio.c
@@ -71,8 +71,7 @@ static int thermal_mmio_probe(struct platform_device *pdev)
&thermal_mmio_ops);
if (IS_ERR(thermal_zone)) {
dev_err(&pdev->dev,
- "failed to register sensor (%ld)\n",
- PTR_ERR(thermal_zone));
+ "failed to register sensor (%pe)\n", thermal_zone);
return PTR_ERR(thermal_zone);
}
diff --git a/drivers/thermal/uniphier_thermal.c b/drivers/thermal/uniphier_thermal.c
index 1a04294effea..e451674d9709 100644
--- a/drivers/thermal/uniphier_thermal.c
+++ b/drivers/thermal/uniphier_thermal.c
@@ -286,8 +286,7 @@ static int uniphier_tm_probe(struct platform_device *pdev)
regmap = syscon_node_to_regmap(parent);
of_node_put(parent);
if (IS_ERR(regmap)) {
- dev_err(dev, "failed to get regmap (error %ld)\n",
- PTR_ERR(regmap));
+ dev_err(dev, "failed to get regmap (error %pe)\n", regmap);
return PTR_ERR(regmap);
}
tdev->regmap = regmap;
--
2.43.0
^ permalink raw reply [flat|nested] 11+ messages in thread* Re: [PATCH 2/5] thermal: Use %pe to print error pointers symbolically
2026-09-06 6:17 ` [PATCH 2/5] thermal: " Sumeet Pawnikar
@ 2026-09-06 6:29 ` Krzysztof Kozlowski
0 siblings, 0 replies; 11+ messages in thread
From: Krzysztof Kozlowski @ 2026-09-06 6:29 UTC (permalink / raw)
To: Sumeet Pawnikar, rafael, 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
On 06/09/2026 08:17, Sumeet Pawnikar wrote:
> +++ b/drivers/thermal/thermal_mmio.c
> @@ -71,8 +71,7 @@ static int thermal_mmio_probe(struct platform_device *pdev)
> &thermal_mmio_ops);
> if (IS_ERR(thermal_zone)) {
> dev_err(&pdev->dev,
> - "failed to register sensor (%ld)\n",
> - PTR_ERR(thermal_zone));
> + "failed to register sensor (%pe)\n", thermal_zone);
> return PTR_ERR(thermal_zone);
Same comments. Syntax is just return dev_err_probe. When making such
changes, you should not do them blindly, but replace the code into
really the correct one.
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH 3/5] cpufreq: Use %pe to print error pointers symbolically
2026-09-06 6:17 [PATCH 0/5] PM: Use %pe to print error pointers symbolically Sumeet Pawnikar
2026-09-06 6:17 ` [PATCH 1/5] powercap: intel_rapl: " Sumeet Pawnikar
2026-09-06 6:17 ` [PATCH 2/5] thermal: " Sumeet Pawnikar
@ 2026-09-06 6:17 ` Sumeet Pawnikar
2026-09-07 4:39 ` Viresh Kumar
2026-09-06 6:17 ` [PATCH 4/5] devfreq: " Sumeet Pawnikar
2026-09-06 6:17 ` [PATCH 5/5] power: " Sumeet Pawnikar
4 siblings, 1 reply; 11+ messages in thread
From: Sumeet Pawnikar @ 2026-09-06 6:17 UTC (permalink / raw)
To: rafael, amit.kachhap, daniel.lezcano, thara.gopinath, talel,
hayashi.kunihiko, mhiramat, mmayer, viresh.kumar, sumitg, krzk,
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] 11+ messages in thread* Re: [PATCH 3/5] cpufreq: Use %pe to print error pointers symbolically
2026-09-06 6:17 ` [PATCH 3/5] cpufreq: " Sumeet Pawnikar
@ 2026-09-07 4:39 ` Viresh Kumar
0 siblings, 0 replies; 11+ messages in thread
From: Viresh Kumar @ 2026-09-07 4:39 UTC (permalink / raw)
To: Sumeet Pawnikar
Cc: rafael, amit.kachhap, daniel.lezcano, thara.gopinath, talel,
hayashi.kunihiko, mhiramat, mmayer, sumitg, krzk, 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, bcm-kernel-feedback-list,
linux-samsung-soc, kernel, imx, linux-mediatek, linux-arm-kernel,
linux-arm-msm, linux-pm, linux-kernel
On 06-09-26, 11:47, Sumeet Pawnikar wrote:
> 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(-)
Applied. Thanks.
--
viresh
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH 4/5] devfreq: Use %pe to print error pointers symbolically
2026-09-06 6:17 [PATCH 0/5] PM: Use %pe to print error pointers symbolically Sumeet Pawnikar
` (2 preceding siblings ...)
2026-09-06 6:17 ` [PATCH 3/5] cpufreq: " Sumeet Pawnikar
@ 2026-09-06 6:17 ` Sumeet Pawnikar
2026-09-06 6:30 ` Krzysztof Kozlowski
2026-09-06 6:17 ` [PATCH 5/5] power: " Sumeet Pawnikar
4 siblings, 1 reply; 11+ messages in thread
From: Sumeet Pawnikar @ 2026-09-06 6:17 UTC (permalink / raw)
To: rafael, amit.kachhap, daniel.lezcano, thara.gopinath, talel,
hayashi.kunihiko, mhiramat, mmayer, viresh.kumar, sumitg, krzk,
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 +--
drivers/devfreq/mtk-cci-devfreq.c | 4 ++--
3 files changed, 5 insertions(+), 6 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);
diff --git a/drivers/devfreq/mtk-cci-devfreq.c b/drivers/devfreq/mtk-cci-devfreq.c
index 4c22be728f6a..bda788909887 100644
--- a/drivers/devfreq/mtk-cci-devfreq.c
+++ b/drivers/devfreq/mtk-cci-devfreq.c
@@ -364,8 +364,8 @@ static int mtk_ccifreq_probe(struct platform_device *pdev)
passive_data);
if (IS_ERR(drv->devfreq)) {
ret = -EPROBE_DEFER;
- dev_err(dev, "failed to add devfreq device: %ld\n",
- PTR_ERR(drv->devfreq));
+ dev_err(dev, "failed to add devfreq device: %pe\n",
+ drv->devfreq);
goto out_remove_opp_table;
}
--
2.43.0
^ permalink raw reply [flat|nested] 11+ messages in thread* Re: [PATCH 4/5] devfreq: Use %pe to print error pointers symbolically
2026-09-06 6:17 ` [PATCH 4/5] devfreq: " Sumeet Pawnikar
@ 2026-09-06 6:30 ` Krzysztof Kozlowski
0 siblings, 0 replies; 11+ messages in thread
From: Krzysztof Kozlowski @ 2026-09-06 6:30 UTC (permalink / raw)
To: Sumeet Pawnikar, rafael, 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
On 06/09/2026 08:17, Sumeet Pawnikar wrote:
> ret = -EPROBE_DEFER;
> - dev_err(dev, "failed to add devfreq device: %ld\n",
> - PTR_ERR(drv->devfreq));
> + dev_err(dev, "failed to add devfreq device: %pe\n",
> + drv->devfreq);
Instead you should use dev_err_probe and drop the last argument.
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH 5/5] power: Use %pe to print error pointers symbolically
2026-09-06 6:17 [PATCH 0/5] PM: Use %pe to print error pointers symbolically Sumeet Pawnikar
` (3 preceding siblings ...)
2026-09-06 6:17 ` [PATCH 4/5] devfreq: " Sumeet Pawnikar
@ 2026-09-06 6:17 ` Sumeet Pawnikar
2026-09-06 6:30 ` Krzysztof Kozlowski
4 siblings, 1 reply; 11+ messages in thread
From: Sumeet Pawnikar @ 2026-09-06 6:17 UTC (permalink / raw)
To: rafael, amit.kachhap, daniel.lezcano, thara.gopinath, talel,
hayashi.kunihiko, mhiramat, mmayer, viresh.kumar, sumitg, krzk,
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(), dev_err() 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/axp20x_battery.c | 4 ++--
drivers/power/supply/cpcap-charger.c | 4 ++--
drivers/power/supply/cw2015_battery.c | 4 ++--
drivers/power/supply/intel_dc_ti_battery.c | 2 +-
drivers/power/supply/qcom_smbx.c | 2 +-
6 files changed, 10 insertions(+), 10 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/axp20x_battery.c b/drivers/power/supply/axp20x_battery.c
index ee8701a6e907..915b6f6881db 100644
--- a/drivers/power/supply/axp20x_battery.c
+++ b/drivers/power/supply/axp20x_battery.c
@@ -1123,8 +1123,8 @@ static int axp20x_power_probe(struct platform_device *pdev)
axp20x_batt->data->bat_ps_desc,
&psy_cfg);
if (IS_ERR(axp20x_batt->batt)) {
- dev_err(&pdev->dev, "failed to register power supply: %ld\n",
- PTR_ERR(axp20x_batt->batt));
+ dev_err(&pdev->dev, "failed to register power supply: %pe\n",
+ axp20x_batt->batt);
return PTR_ERR(axp20x_batt->batt);
}
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/cw2015_battery.c b/drivers/power/supply/cw2015_battery.c
index 1bcb60cf763d..48643f7bf503 100644
--- a/drivers/power/supply/cw2015_battery.c
+++ b/drivers/power/supply/cw2015_battery.c
@@ -658,8 +658,8 @@ static int cw_bat_probe(struct i2c_client *client)
cw_bat->regmap = devm_regmap_init_i2c(client, &cw2015_regmap_config);
if (IS_ERR(cw_bat->regmap)) {
- dev_err(cw_bat->dev, "Failed to allocate regmap: %ld\n",
- PTR_ERR(cw_bat->regmap));
+ dev_err(cw_bat->dev, "Failed to allocate regmap: %pe\n",
+ cw_bat->regmap);
return PTR_ERR(cw_bat->regmap);
}
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] 11+ messages in thread* Re: [PATCH 5/5] power: Use %pe to print error pointers symbolically
2026-09-06 6:17 ` [PATCH 5/5] power: " Sumeet Pawnikar
@ 2026-09-06 6:30 ` Krzysztof Kozlowski
0 siblings, 0 replies; 11+ messages in thread
From: Krzysztof Kozlowski @ 2026-09-06 6:30 UTC (permalink / raw)
To: Sumeet Pawnikar, rafael, 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
On 06/09/2026 08:17, Sumeet Pawnikar wrote:
> }
> diff --git a/drivers/power/supply/cw2015_battery.c b/drivers/power/supply/cw2015_battery.c
> index 1bcb60cf763d..48643f7bf503 100644
> --- a/drivers/power/supply/cw2015_battery.c
> +++ b/drivers/power/supply/cw2015_battery.c
> @@ -658,8 +658,8 @@ static int cw_bat_probe(struct i2c_client *client)
>
> cw_bat->regmap = devm_regmap_init_i2c(client, &cw2015_regmap_config);
> if (IS_ERR(cw_bat->regmap)) {
> - dev_err(cw_bat->dev, "Failed to allocate regmap: %ld\n",
> - PTR_ERR(cw_bat->regmap));
> + dev_err(cw_bat->dev, "Failed to allocate regmap: %pe\n",
> + cw_bat->regmap);
> return PTR_ERR(cw_bat->regmap);
return dev_err_probe
Instead you should use dev_err_probe and drop the last argument.
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 11+ messages in thread