<html>
<head>
<base href="https://bugs.freedesktop.org/" />
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_NEW "
title="NEW - Issue of CPU usage with HiFiBerry driver snd_soc_hifiberry_amp with Debian Wheezy kernel 3.12.28"
href="https://bugs.freedesktop.org/show_bug.cgi?id=84585#c25">Comment # 25</a>
on <a class="bz_bug_link
bz_status_NEW "
title="NEW - Issue of CPU usage with HiFiBerry driver snd_soc_hifiberry_amp with Debian Wheezy kernel 3.12.28"
href="https://bugs.freedesktop.org/show_bug.cgi?id=84585">bug 84585</a>
from <span class="vcard"><a class="email" href="mailto:alessandroferri_015@fastwebnet.it" title="Alessandro Ferri <alessandroferri_015@fastwebnet.it>"> <span class="fn">Alessandro Ferri</span></a>
</span></b>
<pre>I have the exact same problem with the HiFiBerry Dac. Also in this case the use
of the CPU by pulseaudio skip to excessive values with the newer kernel
(3.12.28/29) compared to the old kernel (3.12.25). Below I will report
/etc/modules setup and reports.
I think it's definitely a pulseaudio problem of the underlying I2S subsystem
service.
# /etc/modules: kernel modules to load at boot time.
#
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with "#" are ignored.
# Parameters can be specified after the module name.
i2c-bcm2708
i2c-dev
snd_soc_bcm2708
bcm2708_dmaengine
snd_soc_pcm5102a
snd_soc_hifiberry_dac
pi@raspberrypi ~ $ uname -a
Linux raspberrypi 3.12.29+ #714 PREEMPT Wed Oct 1 23:11:38 BST 2014 armv6l
GNU/Linux
pi@raspberrypi ~ $ top
top - 10:38:46 up 2 min, 2 users, load average: 1.14, 0.52, 0.20
Tasks: 95 total, 1 running, 94 sleeping, 0 stopped, 0 zombie
%Cpu(s): 15.3 us, 10.8 sy, 3.1 ni, 70.8 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem: 447864 total, 150008 used, 297856 free, 15008 buffers
KiB Swap: 102396 total, 0 used, 102396 free, 71172 cached
waiting...
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
2219 pulse 9 -11 88336 8656 3552 S 13.7 1.9 0:15.47 pulseaudio
2629 pi 20 0 124m 11m 9508 S 4.9 2.6 0:01.76 pcmanfm
2393 root 30 10 91464 2304 1856 S 4.6 0.5 0:03.76 LightSone
2507 root 20 0 20068 12m 4252 S 2.0 2.8 0:02.37 Xorg
2675 pi 20 0 4672 1376 1032 R 1.3 0.3 0:00.43 top
2664 pi 20 0 113m 9820 7676 S 0.7 2.2 0:01.20 lxterminal
4 root 20 0 0 0 0 S 0.3 0.0 0:00.10 kworker/0:0
2153 avahi 20 0 3384 1664 1396 S 0.3 0.4 0:00.16 avahi-daemon
2628 pi 20 0 103m 8956 7132 S 0.3 2.0 0:01.43 lxpanel
streaming...
pi@raspberrypi ~ $ top
top - 10:41:08 up 4 min, 2 users, load average: 1.61, 0.87, 0.38
Tasks: 97 total, 1 running, 96 sleeping, 0 stopped, 0 zombie
%Cpu(s): 57.0 us, 37.6 sy, 1.9 ni, 0.0 id, 0.0 wa, 0.0 hi, 3.5 si, 0.0 st
KiB Mem: 447864 total, 198268 used, 249596 free, 16064 buffers
KiB Swap: 102396 total, 0 used, 102396 free, 81420 cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
2219 pulse 9 -11 88336 36m 3552 S 57.7 8.3 0:45.57 pulseaudio
2284 pi 20 0 117m 5000 2744 S 35.2 1.1 0:09.15 shairport
2507 root 20 0 23504 15m 4984 S 2.2 3.5 0:08.82 Xorg
2393 root 30 10 91464 2304 1856 S 1.9 0.5 0:09.09 LightSone
2695 pi 20 0 4672 1380 1032 R 1.6 0.3 0:00.93 top
2664 pi 20 0 114m 10m 8600 S 1.0 2.5 0:04.02 lxterminal
(In reply to Raymond from <a href="show_bug.cgi?id=84585#c23">comment #23</a>)
<span class="quote">> <a href="http://0pointer.de/blog/projects/pulse-glitch-free.html">http://0pointer.de/blog/projects/pulse-glitch-free.html</a>
>
> image 1 is correct only if sound card can report dma residue, which provide
> more accurate position than period boundary
>
> if sound card cannot report dma residue, hwptr just increment by period
> size/time, your cannot rewind when using two periods per buffer
>
>
> <a href="http://cgit.freedesktop.org/pulseaudio/pulseaudio/commit/src/modules/alsa/">http://cgit.freedesktop.org/pulseaudio/pulseaudio/commit/src/modules/alsa/</a>
> alsa-util.c?id=826c8f69d34ef49e86fe0ab6c93c1ffba8916131
>
> <a href="https://git.kernel.org/cgit/linux/kernel/git/tiwai/sound.git/commit/">https://git.kernel.org/cgit/linux/kernel/git/tiwai/sound.git/commit/</a>
> ?id=ab69a4904b5dd4d7cd6996587ba066bca8d13838
>
>
>
> timer scheduling is enabled by default since pulseaudio assume all sound
> card can report dma residue</span ></pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the QA Contact for the bug.</li>
<li>You are the assignee for the bug.</li>
</ul>
</body>
</html>