cpufreq Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas Renninger <trenn@suse.de>
To: Erik Slagter <erik@slagter.name>
Cc: cpufreq@lists.linux.org.uk
Subject: Re: cpufreq stops working after a while
Date: Tue, 15 Aug 2006 09:49:00 +0200	[thread overview]
Message-ID: <1155628140.4302.1079.camel@queen.suse.de> (raw)
In-Reply-To: <1155372733.7809.6.camel@skylla.slagter.name>

On Sat, 2006-08-12 at 10:52 +0200, Erik Slagter wrote:
> On Fri, 11 Aug 2006 14:25:26 -0400 Mark Lord <lkml@rtr.ca> wrote:
> 
> > One of my notebooks (Dell Latitude X1) has a 1.1GHz Pentium-M ULV processor.
> > This chip can change CPU speeds from 600 -> 800 -> 1100 Mhz.
> > 
> > I use speedstep-centrino with it, and after boot all is usually okay.
> > But after a few hours of operation, it stops shifting to the highest frequency
> > even under continuous 100% load (or not).  Eventually it gets stuck at 600Mhz
> > and stays there until I reboot.

After a few hours, urgh.

Dells limit their frequency to lowest after unplugging AC and allow all
freqs after some time (some secs) again.

There were two issues solved on the Dells some months ago:

- The frequency after you unplug AC adapter is already reduced by BIOS, 
  that confused the cpufreq driver.
- There was a race in sysfs writes. If you e.g. change governor or 
  possibly some other cpufreq related sysfs file while the frequency
  got limited by BIOS, the real max freq value got overridden by the
  temporarily limited max freq value and you are stuck to lowest freq
  forever.

Do you use any userspace daemon (cpuspeed, powersaved, ...) to control
cpuspeed?
If yes, you should first try without. It should be enough to:
- load your hw cpufreq module
- load the ondemand governor module
- echo ondemand >/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor

If it still happens we know at least it can't be some kind of sysfs race
again or userspace tools do not remember the wrong max_freq value. Then
some debug output or how to reproduce this a bit faster would be nice...

Maybe with something like that:
LOAD_FACTOR=40   # adjust this one to the power of your machine to let
                 # cpufreq switch up and down, or if it does not switch 
                 # up and down in the beginning it should stay at
                 # 800 (could be 5-20 on yours?),
                 # check with (in separate console):
# cd /sys/devices/system/cpu/cpu0/cpufreq/
# watch -n1  cat scaling_cur_freq scaling_max_freq

for ((x=200;x<1000;x+=5));do
    # give load
    for ((y=0;y<$LOAD_FACTOR;y++)); do
        echo "10 k 2 v p" |dc >/dev/null
    done;
    # then sleep
    usleep $((x*1000))   # maybe the right value here triggers the bug?
    echo "sleep $x milli secs"
done;

Maybe it's triggered if you start some other process(es) while this is
running?

    Thomas

  reply	other threads:[~2006-08-15  7:49 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <44DCCB96.5080801@rtr.ca>
2006-08-11 18:46 ` cpufreq stops working after a while Andrew Morton
2006-08-11 19:01   ` Mark Lord
2006-08-11 19:10   ` Mark Lord
2006-08-11 19:18     ` Andrew Morton
2006-08-12  8:52   ` Erik Slagter
2006-08-15  7:49     ` Thomas Renninger [this message]
2006-08-15 11:07       ` Carlos Garcia Campos
2006-08-15 13:27 Pallipadi, Venkatesh
2006-08-15 15:07 ` Carlos Garcia Campos
2006-08-16 19:28 ` Len Brown
  -- strict thread matches above, loose matches on Subject: below --
2006-08-15 15:23 Pallipadi, Venkatesh
2006-08-15 17:46 ` Carlos Garcia Campos
2006-08-16 10:10   ` Carlos Garcia Campos
2006-08-16 13:27 Pallipadi, Venkatesh
2006-08-16 18:19 ` Carlos Garcia Campos
2006-08-17 10:46   ` Thomas Renninger
2006-08-17 10:58     ` Carlos Garcia Campos
2006-08-17 15:28   ` Thomas Renninger

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=1155628140.4302.1079.camel@queen.suse.de \
    --to=trenn@suse.de \
    --cc=cpufreq@lists.linux.org.uk \
    --cc=erik@slagter.name \
    /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