[alsa-devel] Recent Alsa, 100% CPU with mixer
Alan Horstmann
gineera at aspect135.co.uk
Tue Nov 22 18:07:46 CET 2011
Hi,
It's evidently been too long since I built and tested a recent Alsa on
machines here. Having got 1.0.24 to load I am seeing a number of issues,
which I am trying to separate, with some difficulty. Thus I have also built
several previous versions for comparison.
Alsa-1.0.20 seems to be fine as far as I have been able to test.
Alsa-1.0.22 is OK, running ice1712 and au8820 modules, except that the
alsamixer ice1712 ADC and DAC controls will go down to a negative number and
then cannot be raised again. Using envy24control the ranges just show as
0-127 (eg DACs) and can raise them back up. So there's a bug but it can be
worked around to get working sound.
With 1.0.23 and 1.0.24 the driver also loads and works. But running any
version of alsamixer causes 100% CPU, although the mixer is itself able to
function and shows the same bug as 1.0.22. There are no console messages.
And envy24control does not load properly, stalling before creating it's mixer
window. Thus it is not possible to raise the volumes and get any sound from
the ice1712 card. The au8820 does function, in-spite of the 100%CPU, and the
volumes can be raised with alsamixer and sound played OK. So it is possible
that without the alsamixer levels bug the ice1712 would also play sound?
The 100% CPU behaviour is the most tricky to start with. Can you give any
suggestions to identify the cause? This is the 2.4.21-99 kernel.
Running with strace, I was able to catch this output on the konsole, in case
it indicates anything:-
select(1, [0], NULL, NULL, {0, 0}) = 0 (Timeout)
gettimeofday({1321980134, 190869}, NULL) = 0
rt_sigaction(SIGTSTP, {SIG_IGN}, {0x401768f0, [], SA_RESTORER|SA_RESTART,
0x401e5aa8}, 8) = 0
select(1, [0], NULL, NULL, {0, 0}) = 0 (Timeout)
select(1, [0], NULL, NULL, {0, 0}) = 0 (Timeout)
rt_sigaction(SIGTSTP,0x401768f0, [], SA_RESTORER|SA_RESTART, 0x401e5aa8},
NULL, 8) = 0
poll([{fd=0, events=POLLIN}, {fd=3, events=POLLIN|POLLERR|POLLNVAL,
revents=POLLIN}], 2, -1) = 1
read(3, 0xbffff130, 72) = -1 EAGAIN (Resource temporarily
unavailable)
gettimeofday({1321980134, 192090}, NULL) = 0
select(1, [0], NULL, NULL, {0, 0}) = 0 (Timeout)
gettimeofday({1321980134, 192404}, NULL) = 0
rt_sigaction(SIGTSTP, {SIG_IGN}, {0x401768f0, [], SA_RESTORER|SA_RESTART,
0x401e5aa8}, 8) = 0
select(1, [0], NULL, NULL, {0, 0}) = 0 (Timeout)
select(1, [0], NULL, NULL, {0, 0}) = 0 (Timeout)
rt_sigaction(SIGTSTP, {0x401768f0, [], SA_RESTORER|SA_RESTART, 0x401e5aa8},
NULL, 8) = 0
Thanks,
Alan
More information about the Alsa-devel
mailing list