← Back to team overview

desktop-packages team mailing list archive

[Bug 996906]

 

Some more info. On my new laptop that also has a VIA sound chipset I
managed to greatly leverage the problem by installing the low-latency
Ubuntu kernel. I have Ubuntu MATE 14.04 on it so it was effortless.
Unfortunately, for (presumably) performance reasons it doesn't have
CONFIG_SND_PCM_XRUN_DEBUG enabled so I can't see if it also misses
interrupts. However, on the default stock kernel which has this option
it misses interrupts indeed. I tried various position_fix and enable_msi
values and nothing helped. I had underruns in the log while doing usual
things like opening sites, now on the low-latency kernel it's all good
even on PA's timer-based scheduling.

I can only guess but it could be because the CPU has only two cores and
sometimes it can't schedule an interrupt in time. The low-latency kernel
has 1000 Hz timer compared to 250 Hz in the default one. It also has
various NO_HZ_* options enabled. I'll try two options on Monday with my
own kernel for Debian: one would be using the BFS scheduler and another
one will feature CONFIG_NO_HZ_FULL_ALL and alike options which are
disabled when BFS is used. I'll check if either of them will help with
the missed interrupts.

The problem as I see it is that my work PC and this laptop isn't
powerful enough to server IRQs in time. They both have VIA sound
although a bit different models and 2 core CPUs. My home PC has 4 cores
that are also more powerful. I tried to output some sound via PA to its
Realtek ALC889 card and enabled xrun_debug. There were no messages about
lost interrupts and I'm using the same kernel that's used on the work
PC. So the different behavior is either because of different
codecs/chipsets or CPUs.

-- 
You received this bug notification because you are a member of Desktop
Packages, which is subscribed to pulseaudio in Ubuntu.
https://bugs.launchpad.net/bugs/996906

Title:
  periodic audio skips with Intel HDA

Status in PulseAudio sound server:
  Confirmed
Status in pulseaudio package in Ubuntu:
  Confirmed

Bug description:
  When running PulseAudio, if I'm playing music via any source (Exaile, Totem,
  Flash in Firefox or Chromium, VLC, etc.) every few minutes the audio will skip
  once or twice.  top doesn't show any process eating CPU any more when it
  happens.  dmesg doesn't show anything.  Nothing else seems to be affected.  It
  doesn't seem to happen regularly.

  I just installed Ubuntu 12.04 from scratch (with pulseaudio 1:1.1-0ubuntu15),
  but the same thing happened in 10.04 on the same hardware.  Uninstalling the
  PulseAudio packages and going back to ALSA gives me no issues whatsoever, which
  is how I know the issue is with PulseAudio.  I'm using my onboard audio device:

  $ lspci | grep Audio
  00:14.2 Audio device: Advanced Micro Devices [AMD] nee ATI SBx00 Azalia (Intel
  HDA)

  Following mailing list instructions, pulseaudio -vvvv --log-time shows during a
  skip:

  ( 684.030|   5.000) I: [alsa-sink] alsa-sink.c: Underrun!
  ( 684.030|   0.000) I: [alsa-sink] alsa-sink.c: Increasing minimal latency to
  26.00 ms
  ( 684.030|   0.000) D: [alsa-sink] alsa-sink.c: Latency set to 26.00ms
  ( 684.030|   0.000) D: [alsa-sink] alsa-sink.c: hwbuf_unused=60952
  ( 684.030|   0.000) D: [alsa-sink] alsa-sink.c: setting avail_min=15944
  ( 684.030|   0.000) D: [alsa-sink] alsa-sink.c: Latency set to 26.00ms
  ( 684.030|   0.000) D: [alsa-sink] alsa-sink.c: hwbuf_unused=60952
  ( 684.030|   0.000) D: [alsa-sink] alsa-sink.c: setting avail_min=15944
  ( 684.031|   0.000) D: [alsa-sink] protocol-native.c: Underrun on 'ALSA
  Playback', 0 bytes in queue.
  ( 684.036|   0.004) D: [alsa-sink] protocol-native.c: Requesting rewind due to
  end of underrun.
  ( 684.036|   0.000) D: [alsa-sink] alsa-sink.c: Requested to rewind 10940
  bytes.
  ( 684.036|   0.000) D: [alsa-sink] alsa-sink.c: Limited to 3320 bytes.
  ( 684.036|   0.000) D: [alsa-sink] alsa-sink.c: before: 830
  ( 684.036|   0.000) D: [alsa-sink] alsa-sink.c: after: 830
  ( 684.036|   0.000) D: [alsa-sink] alsa-sink.c: Rewound 3320 bytes.
  ( 684.036|   0.000) D: [alsa-sink] sink.c: Processing rewind...
  ( 684.036|   0.000) D: [alsa-sink] sink.c: latency = 1337
  ( 684.036|   0.000) D: [alsa-sink] sink-input.c: Have to rewind 3320 bytes on
  render memblockq.
  ( 684.036|   0.000) D: [alsa-sink] source.c: Processing rewind...
  ( 696.234|  12.197) I: [alsa-sink] alsa-sink.c: Underrun!
  ( 696.234|   0.000) I: [alsa-sink] alsa-sink.c: Increasing wakeup watermark to
  15.99 ms
  ( 702.033|   5.799) I: [alsa-sink] alsa-sink.c: Underrun!
  ( 702.033|   0.000) I: [alsa-sink] alsa-sink.c: Increasing minimal latency to
  36.00 ms
  ( 702.033|   0.000) D: [alsa-sink] alsa-sink.c: Latency set to 36.00ms
  ( 702.033|   0.000) D: [alsa-sink] alsa-sink.c: hwbuf_unused=59188
  ( 702.033|   0.000) D: [alsa-sink] alsa-sink.c: setting avail_min=15680
  ( 702.033|   0.000) D: [alsa-sink] alsa-sink.c: Latency set to 36.00ms
  ( 702.034|   0.000) D: [alsa-sink] alsa-sink.c: hwbuf_unused=59188
  ( 702.034|   0.000) D: [alsa-sink] alsa-sink.c: setting avail_min=15680
  ( 702.034|   0.000) D: [alsa-sink] protocol-native.c: Underrun on 'ALSA
  Playback', 0 bytes in queue.

  ...and it goes on.

  The "Underrun!" messages alone happened a few times before, but it
  didn't skip.

  I'd like to use PulseAudio, but it's pretty annoying having audio skip all the
  time.

  ProblemType: Bug
  DistroRelease: Ubuntu 12.04
  Package: pulseaudio 1:1.1-0ubuntu15
  ProcVersionSignature: Ubuntu 3.2.0-24.37-generic 3.2.14
  Uname: Linux 3.2.0-24-generic x86_64
  NonfreeKernelModules: nvidia
  AlsaVersion: Advanced Linux Sound Architecture Driver Version 1.0.24.
  ApportVersion: 2.0.1-0ubuntu7
  Architecture: amd64
  AudioDevicesInUse:
   USER        PID ACCESS COMMAND
   /dev/snd/controlC0:  toxite     2136 F.... pulseaudio
   /dev/snd/pcmC0D0p:   toxite     2136 F...m pulseaudio
  Card0.Amixer.info:
   Card hw:0 'SB'/'HDA ATI SB at 0xfe024000 irq 16'
     Mixer name	: 'Realtek ALC889'
     Components	: 'HDA:10ec0889,1458a102,00100004'
     Controls      : 48
     Simple ctrls  : 22
  Date: Tue May  8 21:45:17 2012
  InstallationMedia: Ubuntu 12.04 LTS "Precise Pangolin" - Release amd64 (20120425)
  ProcEnviron:
   TERM=xterm
   PATH=(custom, user)
   LANG=en_US.UTF-8
   SHELL=/bin/bash
  SourcePackage: pulseaudio
  UpgradeStatus: No upgrade log present (probably fresh install)
  dmi.bios.date: 12/03/2009
  dmi.bios.vendor: Award Software International, Inc.
  dmi.bios.version: F2
  dmi.board.name: GA-790FXTA-UD5
  dmi.board.vendor: Gigabyte Technology Co., Ltd.
  dmi.board.version: x.x
  dmi.chassis.type: 3
  dmi.chassis.vendor: Gigabyte Technology Co., Ltd.
  dmi.modalias: dmi:bvnAwardSoftwareInternational,Inc.:bvrF2:bd12/03/2009:svnGigabyteTechnologyCo.,Ltd.:pnGA-790FXTA-UD5:pvr:rvnGigabyteTechnologyCo.,Ltd.:rnGA-790FXTA-UD5:rvrx.x:cvnGigabyteTechnologyCo.,Ltd.:ct3:cvr:
  dmi.product.name: GA-790FXTA-UD5
  dmi.sys.vendor: Gigabyte Technology Co., Ltd.

To manage notifications about this bug go to:
https://bugs.launchpad.net/pulseaudio/+bug/996906/+subscriptions