* [PATCH] ALSA: pcm_drm_eld: rate-limit ELD parsing errors
[not found] <MSG-ID-Takashi>
@ 2026-05-15 15:58 ` Sav
2026-05-16 12:24 ` Takashi Iwai
0 siblings, 1 reply; 4+ messages in thread
From: Sav @ 2026-05-15 15:58 UTC (permalink / raw)
To: tiwai, perex; +Cc: broonie, linux-sound, linux-kernel, Sav
From: Sav <62543096+dongioia@users.noreply.github.com>
snd_parse_eld() is the generic helper used by ASoC hdmi-codec, equivalent
to the hdac_hdmi parse path Mark Brown rate-limited in
lkml.kernel.org/lkml/2025/6/13/1380. The same spam shows up here for the
same reason.
When a HDMI sink is not connected (for example a board with two HDMI
outputs and a cable in only one of them), userspace audio servers like
PipeWire keep opening the empty card. snd_parse_eld() then logs
HDMI: Unknown ELD version 0
on every retry. On rk3588 that easily produces 30+ messages per burst.
A malformed ELD (MNL out of range) hits the same code path. Neither is
worth a separate dev_info() per occurrence; switch both to
dev_info_ratelimited().
Signed-off-by: Sav <62543096+dongioia@users.noreply.github.com>
---
sound/core/pcm_drm_eld.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/sound/core/pcm_drm_eld.c b/sound/core/pcm_drm_eld.c
index cb2eebaac85f..1941ee520063 100644
--- a/sound/core/pcm_drm_eld.c
+++ b/sound/core/pcm_drm_eld.c
@@ -334,7 +334,7 @@ int snd_parse_eld(struct device *dev, struct snd_parsed_hdmi_eld *e,
e->eld_ver = GRAB_BITS(buf, 0, 3, 5);
if (e->eld_ver != ELD_VER_CEA_861D &&
e->eld_ver != ELD_VER_PARTIAL) {
- dev_info(dev, "HDMI: Unknown ELD version %d\n", e->eld_ver);
+ dev_info_ratelimited(dev, "HDMI: Unknown ELD version %d\n", e->eld_ver);
goto out_fail;
}
@@ -357,7 +357,7 @@ int snd_parse_eld(struct device *dev, struct snd_parsed_hdmi_eld *e,
e->product_id = get_unaligned_le16(buf + 18);
if (mnl > ELD_MAX_MNL) {
- dev_info(dev, "HDMI: MNL is reserved value %d\n", mnl);
+ dev_info_ratelimited(dev, "HDMI: MNL is reserved value %d\n", mnl);
goto out_fail;
} else if (ELD_FIXED_BYTES + mnl > size) {
dev_info(dev, "HDMI: out of range MNL %d\n", mnl);
--
2.54.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH] ALSA: pcm_drm_eld: rate-limit ELD parsing errors
2026-05-15 15:58 ` [PATCH] ALSA: pcm_drm_eld: rate-limit ELD parsing errors Sav
@ 2026-05-16 12:24 ` Takashi Iwai
2026-05-16 14:12 ` [PATCH RESEND] " Francesco Saverio Pavone
0 siblings, 1 reply; 4+ messages in thread
From: Takashi Iwai @ 2026-05-16 12:24 UTC (permalink / raw)
To: Sav; +Cc: tiwai, perex, broonie, linux-sound, linux-kernel, Sav
On Fri, 15 May 2026 17:58:36 +0200,
Sav wrote:
>
> From: Sav <62543096+dongioia@users.noreply.github.com>
>
> snd_parse_eld() is the generic helper used by ASoC hdmi-codec, equivalent
> to the hdac_hdmi parse path Mark Brown rate-limited in
> lkml.kernel.org/lkml/2025/6/13/1380. The same spam shows up here for the
> same reason.
>
> When a HDMI sink is not connected (for example a board with two HDMI
> outputs and a cable in only one of them), userspace audio servers like
> PipeWire keep opening the empty card. snd_parse_eld() then logs
>
> HDMI: Unknown ELD version 0
>
> on every retry. On rk3588 that easily produces 30+ messages per burst.
> A malformed ELD (MNL out of range) hits the same code path. Neither is
> worth a separate dev_info() per occurrence; switch both to
> dev_info_ratelimited().
>
> Signed-off-by: Sav <62543096+dongioia@users.noreply.github.com>
Could you use the proper name (a real name or a known identity) and
the mail address for Signed-off-by and From, and resubmit? It's a
legal requirement for the upstreaming.
thanks,
Takashi
> ---
> sound/core/pcm_drm_eld.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/sound/core/pcm_drm_eld.c b/sound/core/pcm_drm_eld.c
> index cb2eebaac85f..1941ee520063 100644
> --- a/sound/core/pcm_drm_eld.c
> +++ b/sound/core/pcm_drm_eld.c
> @@ -334,7 +334,7 @@ int snd_parse_eld(struct device *dev, struct snd_parsed_hdmi_eld *e,
> e->eld_ver = GRAB_BITS(buf, 0, 3, 5);
> if (e->eld_ver != ELD_VER_CEA_861D &&
> e->eld_ver != ELD_VER_PARTIAL) {
> - dev_info(dev, "HDMI: Unknown ELD version %d\n", e->eld_ver);
> + dev_info_ratelimited(dev, "HDMI: Unknown ELD version %d\n", e->eld_ver);
> goto out_fail;
> }
>
> @@ -357,7 +357,7 @@ int snd_parse_eld(struct device *dev, struct snd_parsed_hdmi_eld *e,
> e->product_id = get_unaligned_le16(buf + 18);
>
> if (mnl > ELD_MAX_MNL) {
> - dev_info(dev, "HDMI: MNL is reserved value %d\n", mnl);
> + dev_info_ratelimited(dev, "HDMI: MNL is reserved value %d\n", mnl);
> goto out_fail;
> } else if (ELD_FIXED_BYTES + mnl > size) {
> dev_info(dev, "HDMI: out of range MNL %d\n", mnl);
> --
> 2.54.0
>
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH RESEND] ALSA: pcm_drm_eld: rate-limit ELD parsing errors
2026-05-16 12:24 ` Takashi Iwai
@ 2026-05-16 14:12 ` Francesco Saverio Pavone
2026-05-16 14:19 ` Takashi Iwai
0 siblings, 1 reply; 4+ messages in thread
From: Francesco Saverio Pavone @ 2026-05-16 14:12 UTC (permalink / raw)
To: tiwai; +Cc: perex, broonie, linux-sound, linux-kernel
Mirror of Mark Brown's ASoC: hdac_hdmi rate-limit patch (commit
[lkml.kernel.org/lkml/2025/6/13/1380]) for the generic snd_parse_eld()
helper used by ASoC hdmi-codec.
When a HDMI sink is disconnected (e.g. a board with two HDMI outputs and
only one cable), userspace audio servers like PipeWire keep probing the
disconnected card and trigger:
HDMI: Unknown ELD version 0
at every probe — easily 30+ messages per burst on rk3588. The same
applies to malformed ELD (MNL out of range). Both conditions are
expected when no sink is attached; rate-limit the dev_info() so the
kernel ring buffer does not fill up.
Signed-off-by: Francesco Saverio Pavone <pavone.lawyer@gmail.com>
---
sound/core/pcm_drm_eld.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/sound/core/pcm_drm_eld.c b/sound/core/pcm_drm_eld.c
index cb2eebaac85f..1941ee520063 100644
--- a/sound/core/pcm_drm_eld.c
+++ b/sound/core/pcm_drm_eld.c
@@ -334,7 +334,7 @@ int snd_parse_eld(struct device *dev, struct snd_parsed_hdmi_eld *e,
e->eld_ver = GRAB_BITS(buf, 0, 3, 5);
if (e->eld_ver != ELD_VER_CEA_861D &&
e->eld_ver != ELD_VER_PARTIAL) {
- dev_info(dev, "HDMI: Unknown ELD version %d\n", e->eld_ver);
+ dev_info_ratelimited(dev, "HDMI: Unknown ELD version %d\n", e->eld_ver);
goto out_fail;
}
@@ -357,7 +357,7 @@ int snd_parse_eld(struct device *dev, struct snd_parsed_hdmi_eld *e,
e->product_id = get_unaligned_le16(buf + 18);
if (mnl > ELD_MAX_MNL) {
- dev_info(dev, "HDMI: MNL is reserved value %d\n", mnl);
+ dev_info_ratelimited(dev, "HDMI: MNL is reserved value %d\n", mnl);
goto out_fail;
} else if (ELD_FIXED_BYTES + mnl > size) {
dev_info(dev, "HDMI: out of range MNL %d\n", mnl);
--
2.54.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH RESEND] ALSA: pcm_drm_eld: rate-limit ELD parsing errors
2026-05-16 14:12 ` [PATCH RESEND] " Francesco Saverio Pavone
@ 2026-05-16 14:19 ` Takashi Iwai
0 siblings, 0 replies; 4+ messages in thread
From: Takashi Iwai @ 2026-05-16 14:19 UTC (permalink / raw)
To: Francesco Saverio Pavone; +Cc: tiwai, perex, broonie, linux-sound, linux-kernel
On Sat, 16 May 2026 16:12:44 +0200,
Francesco Saverio Pavone wrote:
>
>
> Mirror of Mark Brown's ASoC: hdac_hdmi rate-limit patch (commit
> [lkml.kernel.org/lkml/2025/6/13/1380]) for the generic snd_parse_eld()
> helper used by ASoC hdmi-codec.
>
> When a HDMI sink is disconnected (e.g. a board with two HDMI outputs and
> only one cable), userspace audio servers like PipeWire keep probing the
> disconnected card and trigger:
>
> HDMI: Unknown ELD version 0
>
> at every probe ― easily 30+ messages per burst on rk3588. The same
> applies to malformed ELD (MNL out of range). Both conditions are
> expected when no sink is attached; rate-limit the dev_info() so the
> kernel ring buffer does not fill up.
>
> Signed-off-by: Francesco Saverio Pavone <pavone.lawyer@gmail.com>
Applied now. Thanks.
Takashi
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2026-05-16 14:19 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <MSG-ID-Takashi>
2026-05-15 15:58 ` [PATCH] ALSA: pcm_drm_eld: rate-limit ELD parsing errors Sav
2026-05-16 12:24 ` Takashi Iwai
2026-05-16 14:12 ` [PATCH RESEND] " Francesco Saverio Pavone
2026-05-16 14:19 ` Takashi Iwai
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox