Bug 91956 - tunnel sink new crashes in conjuction with combine
Summary: tunnel sink new crashes in conjuction with combine
Alias: None
Product: PulseAudio
Classification: Unclassified
Component: modules (show other bugs)
Version: unspecified
Hardware: Other All
: medium normal
Assignee: pulseaudio-bugs
QA Contact: pulseaudio-bugs
Depends on:
Blocks: 73426
  Show dependency treegraph
Reported: 2015-09-10 07:10 UTC by Malte Deiseroth
Modified: 2018-07-30 10:13 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:

last part of the debug output before the core dump (4.24 KB, text/plain)
2015-09-10 07:10 UTC, Malte Deiseroth

Description Malte Deiseroth 2015-09-10 07:10:20 UTC
Created attachment 118178 [details]
last part of the debug output before the core dump

A tunnel from module-tunnel-sink-new can not be used together with module-combine-sink. If such a new tunnel is used with combine, pulseaudio crashes with a core dump. I have tested this in ARMv6, ARMv7 and x86_64 unsing pulseaudio 6.0-2 from the ArchLinux repository.
The attachement shows the to my understanding important part of the debug output.
Comment 1 Tanu Kaskinen 2015-09-10 10:42:33 UTC
I have submitted patches that probably fix this crash: http://thread.gmane.org/gmane.comp.audio.pulseaudio.general/22605

The first four patches have already been applied, but the last two are needed too.
Comment 2 gavin_darkglider 2016-01-30 23:51:56 UTC
Having same issue, after applying patches to pulseaudio 8.0 

I am also using the opus patch found here. https://bugs.freedesktop.org/attachment.cgi?id=117144 which is a part of this request https://bugs.freedesktop.org/show_bug.cgi?id=56993.

I also noticed in the log, the line that says "[tunnel-sink] rtpoll.c: Assertion 'p' failed at /var/tmp/portage/media-sound/pulseaudio-8.0/work/pulseaudio-8.0/src/pulsecore/rtpoll.c:578, function pa_rtpoll_item_new_asyncmsgq_read(). Aborting." doesnt say [tunnel-sink-new], which is the module I am using for sync.

It would be nice to get this working propperly, as the idea was to set up individual raspberry pi's around the house, and then be able to play music through them all.
Comment 3 gavin_darkglider 2016-01-31 02:39:42 UTC
It appears the patches didnt apply, so I am going to try manually adding the last 2 patches, Then it will be a matter of if I can still apply the opus patch after I apply the tunnel-sink-new patch.
Comment 4 gavin_darkglider 2016-01-31 20:48:58 UTC
I got it to work, patches worked after I applied the last 2 by hand, and removed this line from rtpoll.c:  pa_rtpoll_quit(rtpoll); as the function pa_rtpoll)quit() doesnt exist in pulseaudio 8, as far as I can tell. All in all, I can combine multiple network syncs, and keep my opus compression. Thanks for the work. I might put the patch file I came up with with all of the patches I have applied to pulseaudio, but since it is one file with multiple patches for multiple things, this is not the place for it.
Comment 5 Jason A. Donenfeld 2016-09-17 20:58:42 UTC
Tanu Kaskinen -- why did your patches never get applied? This functionality is still broken, and it's a problem. It rears its head when using bluetooth with module-tunnel-sink-new, for example.
Comment 6 Tanu Kaskinen 2016-09-18 11:17:31 UTC
(In reply to Jason A. Donenfeld from comment #5)
> Tanu Kaskinen -- why did your patches never get applied?

First it took a long time before they got reviewed. Some changes were requested, and then it has taken a long time for me to implement those changes.
Comment 7 Martin Kudlacek 2017-02-11 10:58:52 UTC
Hi guys,
 I ran into this bug on Debian Stretch, Pulseaudio 10.0. How does it look with applying those patches into the mainstream version?
Comment 8 GitLab Migration User 2018-07-30 10:13:46 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/pulseaudio/pulseaudio/issues/285.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.