2007-06-15 23:34:59

by S.Çağlar Onur

[permalink] [raw]
Subject: [BUG] Interesting race between cpufreq_ondemand and snd_atiixp

Hi;

One of our colleagues found following problem with his old laptop while
testing Linus's latest git with external alsa-driver (v1.0.14). And we can
also reproduce same problem with 2.6.18.8 so it seems not a new regression
(if it is a regression).

As a summary "sound stops to work if cpufreq_ondemand governor is used" on
that laptop. Problem occurs only if cpufreq_* modules are loaded and %100
reproducable if system configured for ondemand governor.

Here are the steps to reproduce the problem on that laptop;

1. Boot system with cpufreq_* modules blacklisted
strace -o log -f -tttTTT mpg123 some.mp3

works without a problem [full log @ 1]

2. modprobe cpufreq_ondemand
echo "ondemand" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
strace -o log -f -tttTTT mpg123 some.mp3

hangs and no sound at all [full log @ 2]

3. echo "ondemand" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
strace -o log -f -tttTTT mpg123 some.mp3

works without a problem [full log @ 3]

And with both 2.6.18.8 and 2.6.22-rc4 KDE (artsd) starts to gave "Operation
not denied" errors on login, and after that error occured stracing mpg123
from console gaves following output (the very same check of semctl fails with
EINTR with second) [full log @ 4];

...
4004 1181948891.899907 semget(5678293, 1, IPC_CREAT|0660) = 1081344
<0.000010>
4004 1181948891.899945 semctl(1081344, 0, IPC_64|IPC_STAT, 0xbfd1b498) = 0
<0.000009>
4004 1181948891.899981 semctl(1081344, 0, IPC_64|IPC_SET, 0xbfd1b498) = -1
EPERM (Operation not permitted) <0.000009>
4004 1181948891.900026 semop(1081344, 0xbfd1b6a0, 2) = -1 EINTR (Interrupted
system call) <15.979441>
4004 1181948907.879574 --- SIGTERM (Terminated) @ 0 (0) ---
4004 1181948907.879782 +++ killed by SIGTERM +++

You can also find dmesg [5], lspci -vv [6], lsmod [7], /proc/cpuinfo
[8], /proc/interrupts [9] and used .config [10] from there.

I have also a physical access to that laptop so please just ask if you want
anything else.

[1] http://cekirdek.pardus.org.tr/~caglar/kernel/working
[2] http://cekirdek.pardus.org.tr/~caglar/kernel/notworking
[3] http://cekirdek.pardus.org.tr/~caglar/kernel/againworking
[4] http://cekirdek.pardus.org.tr/~caglar/kernel/perm
[5] http://cekirdek.pardus.org.tr/~caglar/kernel/dmesg_2.6.22
[6] http://cekirdek.pardus.org.tr/~caglar/kernel/lspci
[7] http://cekirdek.pardus.org.tr/~caglar/kernel/lsmod_2.6.22
[8] http://cekirdek.pardus.org.tr/~caglar/kernel/cpuinfo
[9] http://cekirdek.pardus.org.tr/~caglar/kernel/interrupts
[10] http://cekirdek.pardus.org.tr/~caglar/kernel/config

Cheers
--
S.Çağlar Onur <[email protected]>
http://cekirdek.pardus.org.tr/~caglar/

Linux is like living in a teepee. No Windows, no Gates and an Apache in house!


Attachments:
(No filename) (2.71 kB)
signature.asc (189.00 B)
This is a digitally signed message part.
Download all attachments

2007-06-15 23:37:37

by S.Çağlar Onur

[permalink] [raw]
Subject: Re: [BUG] Interesting race between cpufreq_ondemand and snd_atiixp

16 Haz 2007 Cts tarihinde, S.Çağlar Onur şunları yazmıştı:
...
> 3. echo "ondemand" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
^^^ performance

Sorry for typo!

> strace -o log -f -tttTTT mpg123 some.mp3
>
> works without a problem [full log @ 3]

Cheers
--
S.Çağlar Onur <[email protected]>
http://cekirdek.pardus.org.tr/~caglar/

Linux is like living in a teepee. No Windows, no Gates and an Apache in house!


Attachments:
(No filename) (443.00 B)
signature.asc (189.00 B)
This is a digitally signed message part.
Download all attachments

2007-06-16 00:55:53

by Dave Jones

[permalink] [raw]
Subject: Re: [BUG] Interesting race between cpufreq_ondemand and snd_atiixp

On Sat, Jun 16, 2007 at 02:33:41AM +0300, S.Çağlar Onur wrote:

> One of our colleagues found following problem with his old laptop while
> testing Linus's latest git with external alsa-driver (v1.0.14). And we can
> also reproduce same problem with 2.6.18.8 so it seems not a new regression
> (if it is a regression).
>
> As a summary "sound stops to work if cpufreq_ondemand governor is used" on
> that laptop. Problem occurs only if cpufreq_* modules are loaded and %100
> reproducable if system configured for ondemand governor.

I'm puzzled. The cpuinfo shows that this cpu doesn't have speedstep, so
why acpi-cpufreq successfully loads is a mystery.

What's in/sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies ?

Maybe the acpi implementation is faking multiple speeds using throttling
a la p4-clockmod, which would be a bit loopy, but possible I guess.

Dave

--
http://www.codemonkey.org.uk

2007-06-16 11:45:28

by S.Çağlar Onur

[permalink] [raw]
Subject: Re: [BUG] Interesting race between cpufreq_ondemand and snd_atiixp

Hi;

16 Haz 2007 Cts tarihinde, Dave Jones şunları yazmıştı:
> On Sat, Jun 16, 2007 at 02:33:41AM +0300, S.Çağlar Onur wrote:
> > One of our colleagues found following problem with his old laptop while
> > testing Linus's latest git with external alsa-driver (v1.0.14). And we
> > can also reproduce same problem with 2.6.18.8 so it seems not a new
> > regression (if it is a regression).
> >
> > As a summary "sound stops to work if cpufreq_ondemand governor is used"
> > on that laptop. Problem occurs only if cpufreq_* modules are loaded and
> > %100 reproducable if system configured for ondemand governor.
>
> I'm puzzled. The cpuinfo shows that this cpu doesn't have speedstep, so
> why acpi-cpufreq successfully loads is a mystery.
>
> What's in/sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies
> ?

mavi ~ #
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies
2793000 1596000

> Maybe the acpi implementation is faking multiple speeds using throttling
> a la p4-clockmod, which would be a bit loopy, but possible I guess.

modprobe p4-clockmod with 2.6.18.8 ends up with "Device or resource busy"

Cheers
--
S.Çağlar Onur <[email protected]>
http://cekirdek.pardus.org.tr/~caglar/

Linux is like living in a teepee. No Windows, no Gates and an Apache in house!


Attachments:
(No filename) (1.30 kB)
signature.asc (189.00 B)
This is a digitally signed message part.
Download all attachments