FAQ Search Today's Posts Mark Forums Read
» Video Reviews

» Linux Archive

Linux-archive is a website aiming to archive linux email lists and to make them easily accessible for linux users/developers.

» Sponsor

» Partners

» Sponsor

Go Back   Linux Archive > Ubuntu > Ubuntu Development

LinkBack Thread Tools
Old 03-05-2009, 01:29 AM
Daniel T Chen
Default Fw: Notable Changes to Jaunty's PulseAudio

Hash: SHA1

On Wed, 4 Mar 2009, Steve Langasek wrote:

What has been the outcome of this testing?* The
upgrade was fairly painless
for me, but I know that may not be indicative; are there
still race
conditions outstanding that pose a risk to the stability of
the jaunty

Given the kernel team's decision to not enable the PREEMPT kernel config
option for -generic in jaunty, the change in pulseaudio 0.9.14-0ubuntu10
will be reverted, which will restore the configuration to that shipped in
Alpha 5 (glitch-free disabled). This change is being tested by community
members using the package in my PPA.

Two significant issues have plagued PA even with glitch-free disabled:
1) bogus data from alsa-kernel via alsa-lib caused crashes, mostly notably
in PulseAudio's module-alsa-sink (but also triggerable in
2) certain ALSA mixer elements needed to be set to non-zero and unmuted,
mostly notably 'Front' and 'PCM'.

(1) is actually caused by two components - snd_pcm_update_avail() in
PulseAudio was improperly handling a signed underflow from alsa-lib, but
upstream discussion has led to the drivers being identified as unstable.
I've corrected this bug using a portion of logic from upstream, so PA no
longer crashes in snd_pcm_update_avail() due to the underflow. There was
also an adjustment to the delay handling, so the CPU no longer spins in
the case that the driver returns such a large positive value.

The remaining component that needs to be resolved is the case where the
driver improperly sets POLL* status but doesn't actually return any usable
data. In this context, the CPU will also spin, and due to the default PA
configuration where no-cpu-limit defaults to yes in /etc/pulse/daemon.conf
(being commented), the daemon will abort. I'm addressing this bug (330814)
this week (as time off from $dayjob permits) and hope to have it squashed
for Alpha 6.

(2) requires digging deeper into the alsa-utils.c code in PA - it is not
immediately obvious under what conditions such an adjustment to available
ALSA mixer elements should be made. I have a sinking feeling that I'll
have to hard-code logic to detect whether a volume-/stream-/sink-restore
has occurred, but this approach, too, warrants investigation. I'm
addressing this bug (315971) for Beta.

- -Dan
Version: GnuPG v1.4.6 (GNU/Linux)

iD8DBQFJrzkPe9GwFciKvaMRAoIZAJ9ogfgDu3lWQbljAzN+T9 OdHexCzwCfcuRz
ubuntu-devel mailing list
Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel

Thread Tools

All times are GMT. The time now is 10:06 PM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.
Copyright 2007 - 2008, www.linux-archive.org