From: Thomas Breitner <mail@tombreit.de>
To: Dominik Brodowski <linux@dominikbrodowski.de>
Cc: cpufreq@www.linux.org.uk
Subject: Re: little system-hang when switching frequencies
Date: Wed, 09 Jun 2004 23:26:47 +0200 [thread overview]
Message-ID: <1086816407.2756.10.camel@localhost> (raw)
In-Reply-To: <20040609155946.GB9482@dominikbrodowski.de>
Am Mi, den 09.06.2004 schrieb Dominik Brodowski um 17:59:
> Hi,
>
> On Tue, Jun 08, 2004 at 08:00:41PM +0200, Thomas Breitner wrote:
> > using speedstep_smi, i get little "cpu-hangs" when frequency is
> > switching from a high (here: 1 ghz) to a low (here: 730 mhz) value. for
> > a trickle of a second the systems stops responding (mouse hangs etc),
> > which i noticed especially when listening to music.
>
> This doesn't really surprise me. speedstep-smi is "1st generation
> speedstep", which was neither intended for dynamic frequency scaling nor to
> be fast. It works by telling the BIOS to change the frequency, which will
> stop all other activity on the system, then set the new frequency, and then
> return to the OS. Obviously, this is much slower than a write to a processor
> MSR, such as the new "Centrino" Pentium-M processors do.
>
> > this does not occur when switching from low to high frequency.
>
> In some cases, the BIOS returns an error. Then, empirical testing has shown,
> delaying for some time and re-trying helps: in the first re-try, the system
> is stopped for 50 ms, in the second re-try, it's 100 ms, and the third 150
> ms, fourth 200 ms, fifth 250 ms -- so it may take up to 750 ms plus the time
> the BIOS takes until the system becomes responsive again. To determine
> whether this is the case on your system, uncomment the line
> //#define SPEEDSTEP_DEBUG
> in arch/i386/kernel/cpu/cpufreq/speedstep-smi.c
> use your system as usual, and check whether there are messages like
> cpufreq: retry 1, previous result 1
> in the kernel log
yes, you're right, enabling debuging of speedstep-smi gave me:
---
theoschlepp:/home/theo# tail -f /var/log/kern.log
Jun 9 21:31:40 localhost kernel: cpufreq: retry 4, previous result 0
Jun 9 21:31:40 localhost kernel: cpufreq: retry 5, previous result 0
Jun 9 21:31:40 localhost kernel: cpufreq: change to 731 MHz succeeded
after 6 tries with result 0
Jun 9 21:31:55 localhost kernel: cpufreq: change to 997 MHz succeeded
after 1 tries with result 0
Jun 9 21:32:01 localhost kernel: cpufreq: retry 1, previous result 0
Jun 9 21:32:01 localhost kernel: cpufreq: retry 2, previous result 0
Jun 9 21:32:01 localhost kernel: cpufreq: retry 3, previous result 0
Jun 9 21:32:01 localhost kernel: cpufreq: retry 4, previous result 0
Jun 9 21:32:01 localhost kernel: cpufreq: retry 5, previous result 0
Jun 9 21:32:01 localhost kernel: cpufreq: change to 731 MHz succeeded
after 6 tries with result 0
Jun 9 21:34:01 localhost kernel: cpufreq: change to 997 MHz succeeded
after 1 tries with result 0
Jun 9 21:34:17 localhost kernel: cpufreq: retry 1, previous result 0
Jun 9 21:34:17 localhost kernel: cpufreq: retry 2, previous result 0
Jun 9 21:34:17 localhost kernel: cpufreq: retry 3, previous result 0
Jun 9 21:34:17 localhost kernel: cpufreq: retry 4, previous result 0
Jun 9 21:34:17 localhost kernel: cpufreq: retry 5, previous result 0
Jun 9 21:34:17 localhost kernel: cpufreq: change to 731 MHz succeeded
after 6 tries with result 0
---
i don't understand the meaning of result "0", but it seems that the
system needs *only* one - the first - try to switch from low to high
frequency - but it needs always 6 retries to switch back.
ok, this part is *fixed*, i should buy a new laptop...
> > sorry, i'm not sure if this belongs to the kernel-related
> > cpu-frequency-scaling-drivers...
>
> It does -- though cpufreqd might consider not to load on speedstep-smi
> driven systems.
>
> > especially, because the speedstep_ich-module *should* be right for my
> > chipset:
> > >theo@theoschlepp:~$ lspci
> > >0000:00:00.0 Host bridge: Intel Corp. 82815 815 Chipset
> > >Host Bridge and Memory Controller Hub (rev 04)
>
> Currently, everything which is revision 4 or lower is not handled by
> speedstep-ich because:
>
> /* speedstep.c causes lockups on Dell Inspirons 8000 and
> * 8100 which use a pretty old revision of the 82815
> * host brige. Abort on these systems.
> */
>
> If you want to try it out on your system, change the line
> if (rev < 5) {
> in arch/i386/kernel/cpu/cpufreq/speedstep-ich.c to
> if (rev < 4) {
> re-compile, and test -- but be advised that this might cause lockups!
>
> If it works on your system, then I'll submit a patch which will check for
> Dell Inspiron 8x00 and only disallow speedstep-ich for them, not for the
> notebook you're using.
>
the same here: i followed your advise, but seemingly trust too much in
my laptop (well, it is in fact an inspiron 8100...):
changed (rev < 5) in (rev < 4) and ended up immediatly after loading
speedstep-ich in a lockup (if thats the technical word for a completly
non-respondent system).
but: switching frequencies under the preinstalled win xp works "in both
directions". how is this possible when it's the bios which is causing
the "little system hang"?
thank you very much,
i will forward this story to the associated debian-cpufreqd-bug,
thomas
> Dominik
>
> _______________________________________________
> Cpufreq mailing list
> Cpufreq@www.linux.org.uk
> http://www.linux.org.uk/mailman/listinfo/cpufreq
--
______________________________________
thomas breitner
www.tombreit.de | mail@tombreit.de
next prev parent reply other threads:[~2004-06-09 21:26 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-06-08 18:00 little system-hang when switching frequencies Thomas Breitner
2004-06-09 15:59 ` Dominik Brodowski
2004-06-09 21:26 ` Thomas Breitner [this message]
2004-06-10 8:13 ` Dominik Brodowski
2004-06-10 16:58 ` Thomas Breitner
2004-06-10 9:08 ` Bruno Ducrot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1086816407.2756.10.camel@localhost \
--to=mail@tombreit.de \
--cc=cpufreq@www.linux.org.uk \
--cc=linux@dominikbrodowski.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox