diff mbox series

pinctrl: pinmux: Suppress error message for -EPROBE_DEFER

Message ID 20240305143859.2449147-1-andre.przywara@arm.com (mailing list archive)
State New, archived
Headers show
Series pinctrl: pinmux: Suppress error message for -EPROBE_DEFER | expand

Commit Message

Andre Przywara March 5, 2024, 2:38 p.m. UTC
EPROBE_DEFER error returns are not really critical, since they cancel
the probe process, but the kernel will return later and retry.
However, depending on the probe order, this might issue quite some
verbatim and scary, though pointless messages:

[    2.388731] 300b000.pinctrl: pin-224 (5000000.serial) status -517
[    2.397321] 300b000.pinctrl: could not request pin 224 (PH0) from group PH0  on device 300b000.pinctrl

Replace dev_err() with dev_err_probe(), which not only drops the
priority of the message from error to debug, but also puts some text
into debugfs' devices_deferred file, for later reference.

Signed-off-by: Andre Przywara <andre.przywara@arm.com>
---
 drivers/pinctrl/pinmux.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

Comments

Linus Walleij March 5, 2024, 10:30 p.m. UTC | #1
On Tue, Mar 5, 2024 at 3:39 PM Andre Przywara <andre.przywara@arm.com> wrote:

> EPROBE_DEFER error returns are not really critical, since they cancel
> the probe process, but the kernel will return later and retry.
> However, depending on the probe order, this might issue quite some
> verbatim and scary, though pointless messages:
>
> [    2.388731] 300b000.pinctrl: pin-224 (5000000.serial) status -517
> [    2.397321] 300b000.pinctrl: could not request pin 224 (PH0) from group PH0  on device 300b000.pinctrl
>
> Replace dev_err() with dev_err_probe(), which not only drops the
> priority of the message from error to debug, but also puts some text
> into debugfs' devices_deferred file, for later reference.
>
> Signed-off-by: Andre Przywara <andre.przywara@arm.com>

That does cut a lot of noise.

Patch applied!

Yours,
Linus Walleij
diff mbox series

Patch

diff --git a/drivers/pinctrl/pinmux.c b/drivers/pinctrl/pinmux.c
index 23d2da0b99b92..a6d2fd1658128 100644
--- a/drivers/pinctrl/pinmux.c
+++ b/drivers/pinctrl/pinmux.c
@@ -188,8 +188,8 @@  static int pin_request(struct pinctrl_dev *pctldev,
 	}
 out:
 	if (status)
-		dev_err(pctldev->dev, "pin-%d (%s) status %d\n",
-			pin, owner, status);
+		dev_err_probe(pctldev->dev, status, "pin-%d (%s)\n",
+			      pin, owner);
 
 	return status;
 }
@@ -441,7 +441,7 @@  int pinmux_enable_setting(const struct pinctrl_setting *setting)
 			pname = desc ? desc->name : "non-existing";
 			gname = pctlops->get_group_name(pctldev,
 						setting->data.mux.group);
-			dev_err(pctldev->dev,
+			dev_err_probe(pctldev->dev, ret,
 				"could not request pin %d (%s) from group %s "
 				" on device %s\n",
 				pins[i], pname, gname,