Pulseaudio fails after several seconds

Bug #587546 reported by D Tangman
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
alsa-driver (Ubuntu)
Fix Released
Low
Daniel T Chen
linux (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

Binary package hint: pulseaudio

On 10.04 LTS, pulseaudio 1:0.9.22~0.9.21+stable-queue-32-g8478-0ubuntu14.

When I try to play an mp3 with mplayer or rhythmbox, it plays normally for a variable time, from a few seconds to nearly two minutes, then the pulseaudio process dies and the player goes silent. On 9.10 and whatever the current pulseaudio for 9.10 is, the same files play without a problem.

ProblemType: Bug
DistroRelease: Ubuntu 10.04
Package: pulseaudio 1:0.9.22~0.9.21+stable-queue-32-g8478-0ubuntu14
ProcVersionSignature: Ubuntu 2.6.32-22.33-generic 2.6.32.11+drm33.2
Uname: Linux 2.6.32-22-generic i686
NonfreeKernelModules: nvidia
AlsaVersion: Advanced Linux Sound Architecture Driver Version 1.0.21.
Architecture: i386
AudioDevicesInUse:
 USER PID ACCESS COMMAND
 /dev/snd/controlC1: darrell 2699 F.... pulseaudio
 /dev/snd/controlC0: darrell 2699 F.... pulseaudio
 /dev/snd/pcmC0D0p: darrell 2699 F...m pulseaudio
Card0.Amixer.info:
 Card hw:0 'VT82xx'/'HDA VIA VT82xx at 0xfbffc000 irq 17'
   Mixer name : 'Realtek ALC660-VD'
   Components : 'HDA:10ec0660,1043c603,00100001'
   Controls : 26
   Simple ctrls : 15
Card1.Amixer.info:
 Card hw:1 'AudioPCI'/'Ensoniq AudioPCI ENS1370 at 0xe080, irq 19'
   Mixer name : 'Asahi Kasei AK4531'
   Components : 'AK4531'
   Controls : 43
   Simple ctrls : 15
CurrentDmesg:
 [ 14.028367] ppdev: user-space parallel port driver
 [ 24.356010] eth0: no IPv6 routers present
 [ 26.628266] end_request: I/O error, dev fd0, sector 0
 [ 26.660681] end_request: I/O error, dev fd0, sector 0
 [ 1541.365567] hda-intel: IRQ timing workaround is activated for card #0. Suggest a bigger bdl_pos_adj.
Date: Sun May 30 10:31:20 2010
InstallationMedia: Ubuntu 10.04 LTS "Lucid Lynx" - Release i386 (20100429)
ProcEnviron:
 PATH=(custom, user)
 LANG=en_US.utf8
 SHELL=/bin/bash
SourcePackage: pulseaudio
dmi.bios.date: 04/30/2007
dmi.bios.vendor: American Megatrends Inc.
dmi.bios.version: 1706
dmi.board.asset.tag: To Be Filled By O.E.M.
dmi.board.name: M2V
dmi.board.vendor: ASUSTeK Computer INC.
dmi.board.version: Rev 1.xx
dmi.chassis.asset.tag: Asset-1234567890
dmi.chassis.type: 3
dmi.chassis.vendor: Chassis Manufacture
dmi.chassis.version: Chassis Version
dmi.modalias: dmi:bvnAmericanMegatrendsInc.:bvr1706:bd04/30/2007:svnSystemmanufacturer:pnSystemProductName:pvrSystemVersion:rvnASUSTeKComputerINC.:rnM2V:rvrRev1.xx:cvnChassisManufacture:ct3:cvrChassisVersion:
dmi.product.name: System Product Name
dmi.product.version: System Version
dmi.sys.vendor: System manufacturer

Revision history for this message
D Tangman (dgtangman) wrote :
Revision history for this message
D Tangman (dgtangman) wrote :

I don't know if it will help at all, but I'm attaching a copy of /var/log/syslog from the time of one of the pulseaudio failures.

Revision history for this message
Daniel T Chen (crimsun) wrote :

I presume you're trying to use the inbuilt HDA card and not the Ensoniq. Please try adding the following line to /etc/modprobe.d/alsa-base.conf and rebooting:

options snd-hda-intel position_fix=1

affects: pulseaudio (Ubuntu) → alsa-driver (Ubuntu)
Changed in alsa-driver (Ubuntu):
assignee: nobody → Daniel T Chen (crimsun)
status: New → Incomplete
Revision history for this message
D Tangman (dgtangman) wrote :

Tried the position_fix=1 suggestion without notable benefit. However, after that it occurred to me that I had to tweak alsa-base.conf in Karmic to get sound at all. I have now forward-ported the changes from my Karmic installation, so the relevant lines now read:

options snd slots=snd-hda-intel,snd-ens1370
options snd-hda-intel index=0
options snd_ens1370 index=1
options snd-hda-intel model=3stack-660-digout
options snd-hda-intel enable_msi=1
options snd-hda-intel position_fix=1

Since installing those changes I have observed no further problems with the sound system. If you would like to narrow down which change(s) were necessary, I can start commenting out some of the above until the problems come back. Otherwise, my problem appears to be solved and I'm happy.

Revision history for this message
Daniel T Chen (crimsun) wrote :

The options snd-hda-intel lines should be combined into a single one. Note that the two index ones you have for snd-hda-intel and snd-ens1370 are not useful, because you've already specified the snd one (with slots).

So, we should narrow down which combination of the model, enable_msi, and/or position_fix ones are necessary.

Revision history for this message
D Tangman (dgtangman) wrote :

OK, I have tried and failed with:
  model
  enable_msi
  model + enable_msi
  position_fix
I have yet to try two-option combinations with position_fix.
So far, only the combination of all three has yielded reliable sound.

Revision history for this message
D Tangman (dgtangman) wrote :

One further result to report - model + position_fix appears to work correctly, so enable_msi appears to be unnecessary. Since prior experimentation has shown that neither model nor position_fix alone makes the sound system function reliably, I think this establishes the minimum required set of options, so I plan to stop here. Feel free to request further experiments.

Revision history for this message
Daniel T Chen (crimsun) wrote :

Your present model quirk has been in the driver since Mon Jun 25 12:12:51 2007 +0200 (commit 6963f84c428ecd31780c97224004c2462b0664f7 of sound-2.6), so it looks like you only need the LPIB quirk added to the driver.

Patch submitted to stable@ and upstream

Changed in alsa-driver (Ubuntu):
status: Incomplete → In Progress
importance: Undecided → Low
Daniel T Chen (crimsun)
Changed in alsa-driver (Ubuntu):
status: In Progress → Fix Committed
Revision history for this message
madbiologist (me-again) wrote :

The abovementioned patch is included upstream in kernel 2.6.35-rc2.

Revision history for this message
madbiologist (me-again) wrote :

The abovementioned patch is now upstream in kernel 2.6.32.16.

Revision history for this message
Steve Conklin (sconklin) wrote :

SRU Justification

Impact: The upstream process for stable tree updates is quite similar in scope to the Ubuntu SRU process, e.g., each patch has to demonstrably fix a bug, and each patch is vetted by upstream by originating either directly from Linus' tree or in a minimally backported form of that patch.

The 2.6.32.21 upstream stable patch set is now available and contains fixes for this problem. It should be included in the Ubuntu kernel as well.

Related commits in the Lucid repo are:

e657041 ALSA: hda: Use LPIB for ASUS M2V

Changed in alsa-driver (Ubuntu):
milestone: none → lucid-updates
Steve Conklin (sconklin)
Changed in linux (Ubuntu):
status: New → Invalid
Changed in linux (Ubuntu Lucid):
status: New → Fix Committed
importance: Undecided → Low
milestone: none → lucid-updates
assignee: nobody → Steve Conklin (sconklin)
Changed in alsa-driver (Ubuntu Lucid):
milestone: none → lucid-updates
Revision history for this message
Martin Pitt (pitti) wrote : Please test proposed package

Accepted linux into lucid-proposed, the package will build now and be available in a few hours. Please test and give feedback here. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you in advance!

tags: added: verification-needed
Revision history for this message
D Tangman (dgtangman) wrote :

Tested with linux proposed package, /proc/version = "Linux version 2.6.32-25-generic (buildd@rothera) (gcc version 4.4.3 (Ubuntu 4.4.3-4ubuntu5) ) #43-Ubuntu SMP Wed Sep 1 09:46:39 UTC 2010".

Test fails: Sound works correctly with just "position_fix=1", so the model quirk is working correctly, but without "position_fix=1" sound fails after a period ranging from a few seconds to a little over a minute. lspci shows the sound controller as subsystem 1043:81e7, which matches the subvendor and subdevice values for the "ASUS M2V" entry in position_fix_list in sound/pci/hda/hda_intel.c, so I have no clue why the value in that table (POS_FIX_LPIB) is not the default for this device.

Revision history for this message
David Henningsson (diwic) wrote :

So, unless I'm missing something, this patch has no effect. This is because of the VIA controller which forces the driver to use POS_FIX_LPIB anyway. The difference between using position_fix=1 and not using it, is that the via_dmapos_patch variable is set to 0 (or rather not set at all) with position_fix=1, whereas it is set to 1 if you're not using position_fix=1.

So it seems like we would need a lookup table for setting the via_dmapos_patch variable as well!

Martin Pitt (pitti)
tags: added: verification-failed
removed: verification-needed
Revision history for this message
Stefan Bader (smb) wrote :

David, would we need to back this patch out or would the change be ok as half of the job and not doing any harm?

Revision history for this message
David Henningsson (diwic) wrote :

The machine that the quirk is about, never touches that code path. So, it is not fixing the bug, (or doing half the job either), bug it is not doing any harm either. I could work with upstream for this one. It should go away, but only for cleanup purposes. Let me see if I can get some time next week or so, to make a test package for this one to verify that my hypothesis is correct.

Changed in alsa-driver (Ubuntu Lucid):
status: New → Triaged
status: Triaged → New
Changed in linux (Ubuntu Lucid):
status: Fix Committed → Triaged
assignee: Steve Conklin (sconklin) → David Henningsson (diwic)
Revision history for this message
Stefan Bader (smb) wrote :

...hm cross-posting via email may or may not work. Manually adding and hoping LP does not think otherwise later...

This is updating a set of bugs, so things said may or may not be exactly matching the bug report itself.

There is a set of bug reports which, reading feedback from reporters, do not seem to be fixed by the patches which were thought to fix them. All of these patches are part of some upstream stable release, so if a real fix is found, it
should be submitted there as well.
Quickly reading over the reports they all seem to be positional quirk fixes in ALSA. In one of the reports David had a quick look and had the suspicion that the code path of activating the fix may not be hit at all.
So while not fixing the bug all patches are not causing things to regress. Due to automatic processes, these bugs will get changed by a bot to fixed when the proposed kernel moves to updates and the bugs need to be re-opened then.

David, Daniel, maybe you can have a look at the test feedback and find out why the quirks have no effect?

Thanks,
Stefan

https://bugs.launchpad.net/ubuntu/+source/alsa-driver/+bug/465942
https://bugs.launchpad.net/ubuntu/+source/alsa-driver/+bug/587546
https://bugs.launchpad.net/ubuntu/+source/alsa-driver/+bug/580749
https://bugs.launchpad.net/ubuntu/+source/alsa-driver/+bug/551949
https://bugs.launchpad.net/ubuntu/+source/alsa-driver/+bug/583983

Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (43.7 KiB)

This bug was fixed in the package linux - 2.6.32-25.44

---------------
linux (2.6.32-25.44) lucid-proposed; urgency=low

  [ Brad Figg ]

  * SAUCE: (no-up) Modularize vesafb -- fix initialization
    - LP: #611471

  [ Stefan Bader ]

  * Revert "SAUCE: sync before umount to reduce time taken by ext4 umount"
    - LP: #543617, #585092

  [ Steve Conklin ]

  * Revert "SAUCE: tulip: Let dmfe handle davicom on non-sparc"
    - LP: #607824

  [ Tim Gardner ]

  * [Config] Added ums-cypress to udeb
    - LP: #576066

  [ Upstream Kernel Changes ]

  * Revert "PCI quirk: Disable MSI on VIA K8T890 systems"
    - LP: #607824
  * Revert "PCI quirks: disable msi on AMD rs4xx internal gfx bridges"
    - LP: #607824
  * Revert "(pre-stable) Input: psmouse - reset all types of mice before
    reconnecting"
    - LP: #607824
  * Revert "jbd: jbd-debug and jbd2-debug should be writable"
    - LP: #607824
  * Revert "ext4: Make fsync sync new parent directories in no-journal
    mode"
    - LP: #615548
  * Revert "ext4: Fix compat EXT4_IOC_ADD_GROUP"
    - LP: #615548
  * Revert "ext4: Conditionally define compat ioctl numbers"
    - LP: #615548
  * Revert "ext4: restart ext4_ext_remove_space() after transaction
    restart"
    - LP: #615548
  * Revert "ext4: Clear the EXT4_EOFBLOCKS_FL flag only when warranted"
    - LP: #615548
  * Revert "ext4: Avoid crashing on NULL ptr dereference on a filesystem
    error"
    - LP: #615548
  * Revert "ext4: Use bitops to read/modify i_flags in struct
    ext4_inode_info"
    - LP: #615548
  * Revert "ext4: Show journal_checksum option"
    - LP: #615548
  * Revert "ext4: check for a good block group before loading buddy pages"
    - LP: #615548
  * Revert "ext4: Prevent creation of files larger than RLIMIT_FSIZE using
    fallocate"
    - LP: #615548
  * Revert "ext4: Remove extraneous newlines in ext4_msg() calls"
    - LP: #615548
  * Revert "ext4: init statistics after journal recovery"
    - LP: #615548
  * Revert "ext4: clean up inode bitmaps manipulation in ext4_free_inode"
    - LP: #615548
  * Revert "ext4: Do not zero out uninitialized extents beyond i_size"
    - LP: #615548
  * Revert "ext4: don't scan/accumulate more pages than mballoc will
    allocate"
    - LP: #615548
  * Revert "ext4: stop issuing discards if not supported by device"
    - LP: #615548
  * Revert "ext4: check s_log_groups_per_flex in online resize code"
    - LP: #615548
  * Revert "ext4: fix quota accounting in case of fallocate"
    - LP: #615548
  * Revert "ext4: allow defrag (EXT4_IOC_MOVE_EXT) in 32bit compat mode"
    - LP: #615548
  * Revert "ext4: rename ext4_mb_release_desc() to ext4_mb_unload_buddy()"
    - LP: #615548
  * Revert "ext4: Remove unnecessary call to ext4_get_group_desc() in
    mballoc"
    - LP: #615548
  * Revert "ext4: fix memory leaks in error path handling of
    ext4_ext_zeroout()"
    - LP: #615548
  * Revert "ext4: check missed return value in ext4_sync_file()"
    - LP: #615548
  * Revert "ext4: Issue the discard operation *before* releasing the blocks
    to be reused"
    - LP: #615548
  * Revert "ext4: Fix buffer head leaks after calls to
    ext4_get_inode_loc()"
    - LP: #615548
  * Revert "ex...

Changed in linux (Ubuntu Lucid):
status: Triaged → Fix Released
Martin Pitt (pitti)
Changed in linux (Ubuntu Lucid):
status: Fix Released → Triaged
Revision history for this message
David Henningsson (diwic) wrote :

I have now made a small dkms package to help you verify if my theory is
correct. The dkms version disables via_dmapos_patch in all cases. Please
try the following:

* Make sure position_fix=1 is NOT present in /etc/modprobe.d/alsa-base.conf
* Make sure you don't have any alsa driver overrides installed (e g
linux-backports-modules, or the daily snapshot from ubuntu-audio-dev ppa)
* Download and install
http://people.canonical.com/~diwic/temp/alsa-intel-hda-diwic-via-dmapos-dkms_1.0.23.diwic_all.deb
* Reboot
* Test whether the error is gone or not, and report back here.

Revision history for this message
D Tangman (dgtangman) wrote :

Done. The dkms package appears to correct the error. I have played about ten
minutes of sound files without a problem; the longest it has previously gone
without failing is a little over two minutes without position_fix=1.

Revision history for this message
Martin Pitt (pitti) wrote :

Accepted linux into lucid-proposed, the package will build now and be available in a few hours. Please test and give feedback here. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you in advance!

Changed in linux (Ubuntu Lucid):
status: Triaged → Fix Committed
tags: removed: verification-failed
tags: added: verification-needed
Revision history for this message
Martin Pitt (pitti) wrote :

Accepted linux into maverick-proposed, the package will build now and be available in a few hours. Please test and give feedback here. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you in advance!

Changed in linux (Ubuntu Maverick):
status: New → Fix Committed
Revision history for this message
Steve Conklin (sconklin) wrote :

This bug is awaiting verification that the kernel in -proposed solves the problem. Please test the kernel and update this bug with the results. If the problem is solved, change the tag 'verification-needed' to 'verification-done'.

If verification is not done by Thursday, November 11, this fix will be dropped from the source code, and this bug will be closed.

See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you!

Revision history for this message
D Tangman (dgtangman) wrote :

Sorry about the delay; I had some difficulty getting the lucid-proposed kernel. With the lucid-proposed kernel (2.6.32-26), sound playback works without problems.

Martin Pitt (pitti)
tags: added: verification-done
removed: verification-needed
Revision history for this message
Steve Conklin (sconklin) wrote :

There has been some confusion regarding this bug, with verification and a probable regression on some platforms. The bug was originally marked as verification-failed after it was released for lucid, and should have been reverted based upon that. Subsequently, there were calls for testing again, and verification was marked as done for lucid. It's probable that this fix applies to one platform but causes regression on another.

As for Maverick, the fix was never released, but was in the latest -proposed kernel. The bug has never received verification for Maverick.

At this point, the safest thing to do is to revert the change and remove it from Lucid and Maverick. We will re-examine the fix and make sure that adequate testing is able to be performed next time, or see whether a different fix is appropriate.

Changed in linux (Ubuntu Lucid):
status: Fix Committed → Incomplete
Changed in linux (Ubuntu Maverick):
status: Fix Committed → Incomplete
tags: added: stable-reverted-lucid stable-reverted-maverick
removed: verification-done
Andy Whitcroft (apw)
Changed in linux (Ubuntu):
status: Invalid → Fix Released
Changed in alsa-driver (Ubuntu):
status: Fix Committed → Fix Released
Changed in linux (Ubuntu Lucid):
assignee: David Henningsson (diwic) → nobody
Revision history for this message
Julian Wiedmann (jwiedmann) wrote :

This release has reached end-of-life [0].

[0] https://wiki.ubuntu.com/Releases

Changed in linux (Ubuntu Maverick):
status: Incomplete → Invalid
Revision history for this message
Adolfo Jayme Barrientos (fitojb) wrote :

(Untargetting old releases)

no longer affects: alsa-driver (Ubuntu Lucid)
no longer affects: alsa-driver (Ubuntu Maverick)
no longer affects: linux (Ubuntu Lucid)
no longer affects: linux (Ubuntu Maverick)
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.