Since the update to pulseaudio 16 (where the `pulseaudio` daemon now comes from the `pulseaudio-daemon` package), I've had a lot of PA crashes. After running in a console with --daemonize=false, I see messages like: E: [alsa-sink-ALC1220 Analog] memblockq.c: Assertion 'bq->n_blocks == 0' failed at ../pulseaudio-16.0/src/pulsecore/memblockq.c:1006, function pa_memblockq_silence(). Aborting. _or_ E: [alsa-sink-USB Audio] memblockq.c: Assertion 'bq->n_blocks == 0' failed at ../pulseaudio-16.0/src/pulsecore/memblockq.c:1006, function pa_memblockq_silence(). Aborting. Downgrading to 15.0-r3, I see warnings that look related: E: [alsa-sink-USB Audio] alsa-sink.c: ALSA woke us up to write new data to the device, but there was actually nothing to write. E: [alsa-sink-USB Audio] alsa-sink.c: Most likely this is a bug in the ALSA driver 'snd_usb_audio'. Please report this issue to the ALSA developers. E: [alsa-sink-USB Audio] alsa-sink.c: We were woken up with POLLOUT set -- however a subsequent snd_pcm_avail() returned 0 or another value < min_avail. However, PA doesn't crash in this case - it just carries on. So it appears as if a warning has been elevated to a full-on bail-out/crash ): The audio device being used is a pair of Corsair HS70 Pro headphones - and I've had no issue with them from day 1, until this PA update. Reproducible: Always Steps to Reproduce: 1. Start playing Diablo2 via WINE & have Discord open, connected to a voice-chat channel 2. Play a bit 3. Crash happens within 15 minutes, but can happen as early as 1 or 2 minutes in. Actual Results: PA crashes & is restarted, but Discord and the game I'm WINE'ing both lose sound completely. I have to restart both. Expected Results: PA shouldn't crash out.
Can you try https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/commit/ee8bfb49adddd271d8a8cafa796c6f9fa84de48a.patch? @igor: there's a few other crash fixes it looks like we might want to pick up too, not sure?
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3408c976d850bad9d19c1cdc25fbf0851cb9b22d commit 3408c976d850bad9d19c1cdc25fbf0851cb9b22d Author: Igor V. Kovalenko <igor.v.kovalenko@gmail.com> AuthorDate: 2022-06-17 23:37:29 +0000 Commit: Sam James <sam@gentoo.org> CommitDate: 2022-06-18 00:18:16 +0000 media-sound/pulseaudio-daemon: Fix crash after combine-sink underrun Upstream commit ee8bfb49adddd271d8a8cafa796c6f9fa84de48a Closes: https://bugs.gentoo.org/852848 Signed-off-by: Igor V. Kovalenko <igor.v.kovalenko@gmail.com> Signed-off-by: Sam James <sam@gentoo.org> ...udio-16.0-fix-combine-sink-underrun-crash.patch | 72 ++++++++++++++++++++++ .../pulseaudio-daemon-16.0-r5.ebuild | 1 + 2 files changed, 73 insertions(+)
(In reply to Davyd McColl from comment #0) > Since the update to pulseaudio 16 (where the `pulseaudio` daemon now comes > from the `pulseaudio-daemon` package), I've had a lot of PA crashes. After > running in a console with --daemonize=false, I see messages like: > > E: [alsa-sink-ALC1220 Analog] memblockq.c: Assertion 'bq->n_blocks == 0' > failed at ../pulseaudio-16.0/src/pulsecore/memblockq.c:1006, function > pa_memblockq_silence(). Aborting. > Could you please update (should pull pulseaudio-daemon-16.0-r5) and check if the issue is fixed for you?
Thank you very much! I have built and will test extensively tonight (: