[SRU] pulseaudio-droid module crashes on start

Bug #1728791 reported by bhushan
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
pulseaudio (Ubuntu)
Invalid
Undecided
bhushan
Xenial
Fix Released
Undecided
Unassigned

Bug Description

Ubuntu 16.04 Xenial, and pulseaudio version 8.0-0ubuntu3.4

[Impact]

 * This bug prevents users (currently Project Halium, UBports, Plasma Mobile) from using the pulseaudio-modules-droid on android devices.
 * This behavior can be seen in Ubuntu Xenial 16.04 with xenial-updates enabled.
 * Last 3 releases of pulseaudio included multiple patches which modified behavior of pulsecore library but required changes were not made in pulseaudio-module-droid.
 * This results in crash in pulseaudio-modules-droid

#0 init_profile (u=0x59528) at modules/droid/module-droid-card.c:370
#1 module_droid_card_22_LTX_pa__init (m=0x3c3f8) at modules/droid/module-droid-card.c:923
#2 0xf76feb88 in pa_module_load (c=c@entry=0x33a80, name=name@entry=0x58240 "module-droid-card-22", argument=0x0) at pulsecore/module.c:180
#3 0xf76f1d7e in pa_cli_command_load (c=0x33a80, t=0x49320, buf=0x44f28, fail=0x3c1f4) at pulsecore/cli-command.c:439
#4 0xf76f6ad8 in pa_cli_command_execute_line_stateful (c=0x33a80, s=s@entry=0x59120 "load-module module-droid-card-22", buf=buf@entry=0x44f28, fail=fail@entry=0x3c1f4, ifstate=ifstate@entry=0x0) at pulsecore/cli-command.c:2134
#5 0xf76f6fc8 in pa_cli_command_execute_line (c=<optimized out>, s=s@entry=0x59120 "load-module module-droid-card-22", buf=buf@entry=0x44f28, fail=fail@entry=0x3c1f4) at pulsecore/cli-command.c:2155
#6 0xee32fc82 in line_callback (line=0x3c208, s=0x59120 "load-module module-droid-card-22", userdata=0x3c1e0) at pulsecore/cli.c:153
#7 0xf76a1360 in scan_for_lines (skip=<optimized out>, l=0x3c208) at pulsecore/ioline.c:269
#8 do_read (l=0x3c208) at pulsecore/ioline.c:337
#9 do_work (l=0x3c208) at pulsecore/ioline.c:386
#10 0xf7655fa6 in dispatch_pollfds (m=0x32bd0) at pulse/mainloop.c:655
#11 pa_mainloop_dispatch (m=m@entry=0x32bd0) at pulse/mainloop.c:898
#12 0xf765629a in pa_mainloop_iterate (m=0x32bd0, block=<optimized out>, retval=0xfffef1c4) at pulse/mainloop.c:929
#13 0xf7656314 in pa_mainloop_run (m=m@entry=0x32bd0, retval=retval@entry=0xfffef1c4) at pulse/mainloop.c:944
#14 0x000158ca in main (argc=<optimized out>, argv=<optimized out>) at daemon/main.c:1152

[Test Case]

 * Start pulseaudio
 * From another session run pacmd
 * In prompt type load-module module-droid-discover
 * On ubuntu touch devices, it will crash at startup

[Regression Potential]

 * There is no regression potential for other parts of pulseaudio components.

tags: added: pulse-x xenial
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

A Stable Release Update would be required to change Ubuntu 16.04. As you seem to be interested and knowledgeable about module-droid, please follow the SRU process and you can release an official update yourself!

https://wiki.ubuntu.com/StableReleaseUpdates

P.S. module-droid is not present in Ubuntu 17.10 or later so you can skip "1. Check that the bug is fixed in the current development release ...".

Changed in pulseaudio (Ubuntu):
status: New → Incomplete
Revision history for this message
bhushan (bhush94) wrote :

I can provide the bug description, however I am not familiar enough with debian packaging to follow the step 3.5 :-(

Is there any documentation on how to prepare an upload? Currently what I've done is basically apt-get source and dpkg-buildpackage'd the package and tested the change.

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

To make a debdiff you need two input files OLD.dsc and NEW.dsc.

OLD.dsc you get from the current release; either from 'apt-get source' or from:
https://launchpad.net/ubuntu/+source/pulseaudio/1:8.0-0ubuntu3.4

NEW.dsc is made from your modified pulseaudio source tree (that was based on 'apt-get source'). Inside the source tree run 'debuild -S' to automatically generate a NEW.dsc in the parent directory of the source tree.

Now that you have both OLD.dsc and NEW.dsc you can make a debdiff:
  debdiff OLD.dsc NEW.dsc > RESULT.debdiff

Revision history for this message
bhushan (bhush94) wrote :

debdiff required for SRU, I don't have upload rights however.

description: updated
Revision history for this message
bhushan (bhush94) wrote :

I hope i did this correctly, if not let me know and I will fix things.

bhushan (bhush94)
summary: - pulseaudio-droid module crashes on start
+ [SRU] pulseaudio-droid module crashes on start
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

It *looks* OK to me but I have no authority to release it...

Also note you're in a race with another person so may conflict and may need to make a new version if theirs lands first -> bug 1718824

Changed in pulseaudio (Ubuntu):
assignee: nobody → bhushan (bhush94)
status: Incomplete → In Progress
Revision history for this message
Jonathan Riddell (jr) wrote :

uploaded to xenial

Jonathan Riddell (jr)
tags: added: verification-needed-xenial
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

bhushan,

Please test the proposed package and then change the above tag (https://wiki.ubuntu.com/StableReleaseUpdates#Verification).

Revision history for this message
bhushan (bhush94) wrote :

Ah crap. I did just realize I had uploaded a totally wrong patch, meh I will upload proper patch in bit.. (basically patch which was in diff was wrong then what I reported earlier)

tags: added: verification-faileed-xenial
removed: verification-needed-xenial
tags: added: verification-failed-xenial
removed: verification-faileed-xenial
Revision history for this message
bhushan (bhush94) wrote :

@jr : Sorry to bother you again, but can you re-upload with this patch instead of previous one? Also, do I have to change the version given 1:8.0-0ubuntu3.5 is already uploaded to xenial-proposed? If so let me know.

Revision history for this message
Jonathan Riddell (jr) wrote :
tags: added: verification-needed-xenial
removed: verification-failed-xenial
Revision history for this message
bhushan (bhush94) wrote :

Okay i've tested the 8.0-0ubuntu3.6 version and it seems to work completely fine. :-)

tags: added: verification-done-xenial
removed: verification-needed-xenial
Changed in pulseaudio (Ubuntu):
status: In Progress → Fix Committed
Revision history for this message
Jonathan Riddell (jr) wrote :

I've uploaded https://launchpad.net/ubuntu/+source/pulseaudio/1:8.0-0ubuntu3.7 with only this debdiff. Please test it still works

tags: added: verification-needed-xenial
removed: verification-done-xenial
Revision history for this message
bhushan (bhush94) wrote :

I can confirm that proposed package works as intended.

Revision history for this message
bhushan (bhush94) wrote :

@vanvugt, since this patch has been in proposed since 1 week, what should be next step? Can it be merged to xenial-updates? Thanks

Revision history for this message
bhushan (bhush94) wrote :

(it turned out I forgot to mark this as verification-done-xenial) adding tag.

tags: added: verification-done-xenial
removed: verification-needed-xenial
Changed in pulseaudio (Ubuntu Xenial):
status: New → Fix Committed
Changed in pulseaudio (Ubuntu):
status: Fix Committed → Invalid
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package pulseaudio - 1:8.0-0ubuntu3.7

---------------
pulseaudio (1:8.0-0ubuntu3.7) xenial; urgency=medium

  * debian/patches/0901-droid-fix-crash-on-module-load.patch: [Fix the
    crash on module load, this crash was result of patch backported in
    release 1:8.0-0ubuntu3.3] (LP: #1728791)

 -- Bhushan Shah <email address hidden> Fri, 10 Nov 2017 04:57:42 +0000

Changed in pulseaudio (Ubuntu Xenial):
status: Fix Committed → Fix Released
Revision history for this message
Chris Halse Rogers (raof) wrote : Update Released

The verification of the Stable Release Update for pulseaudio has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.