[Pkg-bluetooth-maintainers] Bug#856487: pulseaudio: SIGSEGV upon streaming to bluetooth headset

Felipe Sateler fsateler at debian.org
Fri Mar 3 16:14:56 UTC 2017


On Fri, Mar 3, 2017 at 11:06 AM, Felipe Sateler <fsateler at debian.org> wrote:
> Control: tags -1 - help
> Control: reassign -1 libsbc1 1.3-1+b2
> Control: retitle -1 libsbc1: build with PIE causes stack corruption
> Control: affects -1 pulseaudio
> Control: severity -1 serious
>
>
> On Fri, Mar 3, 2017 at 10:52 AM, Linus Lüssing <linus.luessing at c0d3.blue> wrote:
>> On Thu, Mar 02, 2017 at 08:36:29PM -0300, Felipe Sateler wrote:
>>> Indeed. However, from what I can see the most likely (only?) way to
>>> get there is via a sbc_encode that is called in module-bluez5-device.
>>> However, that part of the code does not look changed since 9.0. Have
>>> you confirmed downgrading to 9.0 fixes the issue?
>>
>> Oh, sorry, good point. I think we are narrowing it down now:
>>
>> It's actually not the pulsaudio upgrade from 9.0 to 10 but the
>> update of libsbc1 from 1.3-1 to 1.3-1+b2, which I did during the
>> same "apt-get dist-upgrade".
>>
>> Downgrading libsbc1 to 1.3-1 is enough to make the crash vanish!
>
> OK. That rebuild was done to enable PIE. So it looks like PIE
> conflicts with the hand-written asm code, at least for armhf. It seems
> to me PIE will have to be disabled there.

It has been pointed out to me that this may be unrelated to PIE, but
just caused by a newer GCC version. Could you check if disabling PIE
makes the binary work again? To do so:

apt-get source sbc
sudo apt-get build-dep sbc
cd sbc-1.3
DEB_BUILD_OPTIONS=hardening=-pie dpkg-buildpackage -us -uc
sudo dpkg -i ../libsbc1_*.deb


Fortunately the library is small so it shouldn't take that long to build.

-- 

Saludos,
Felipe Sateler



More information about the Pkg-bluetooth-maintainers mailing list