From 3afb7f8c08ab6ce8e47075f7484f470c8c561a11 Mon Sep 17 00:00:00 2001 From: Tanu Kaskinen Date: Sat, 14 Mar 2020 08:22:44 +0200 Subject: [PATCH] pstream: Log "Cannot send block reference..." only once per pstream Despite the ratelimiting, this error gets logged too much. I fixed a typo (Fallig -> Falling) while at it. Related: https://gitlab.freedesktop.org/pulseaudio/pulseaudio/issues/824 Part-of: --- src/pulsecore/pstream.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/pulsecore/pstream.c b/src/pulsecore/pstream.c index eb70508..7147b77 100644 --- a/src/pulsecore/pstream.c +++ b/src/pulsecore/pstream.c @@ -154,6 +154,7 @@ struct pa_pstream { * @registered_memfd_ids: registered memfd pools SHM IDs. Check * pa_pstream_register_memfd_mempool() for more information. */ bool use_shm, use_memfd; + bool non_registered_memfd_id_error_logged; pa_idxset *registered_memfd_ids; pa_memimport *import; @@ -677,9 +678,11 @@ static void prepare_next_write_item(pa_pstream *p) { flags |= PA_FLAG_SHMDATA_MEMFD_BLOCK; send_payload = false; } else { - if (pa_log_ratelimit(PA_LOG_ERROR)) { + if (!p->non_registered_memfd_id_error_logged) { pa_log("Cannot send block reference with non-registered memfd ID = %u", shm_id); - pa_log("Fallig back to copying full block data over socket"); + pa_log("Falling back to copying full block data over socket"); + pa_log("There's a bug report about this: https://gitlab.freedesktop.org/pulseaudio/pulseaudio/issues/824"); + p->non_registered_memfd_id_error_logged = true; } } } -- 2.7.4