From: "Matt T. Yourst" <yourst@yourst.com>
To: Keir Fraser <Keir.Fraser@cl.cam.ac.uk>
Cc: xen-devel@lists.xensource.com
Subject: Re: Xen cpufreq support status: how to notify hypervisor of frequency change?
Date: Thu, 13 Apr 2006 14:28:40 -0400 [thread overview]
Message-ID: <200604131428.40611.yourst@yourst.com> (raw)
In-Reply-To: <1783ab10b2d5742f7362d5196ec8c1d6@cl.cam.ac.uk>
On Thursday 13 April 2006 06:44 am, you wrote:
>
> Ah yes, looking closer at your code I think you are doing the right
> thing and the local_time_calibration() call should be removed.
>
OK, so do you think my patch (minus local_time_calibration()) would have a
chance of getting merged? I can add basic support for non-AMD MSRs if you
want, but can someone else with a machine actually using the speedstep and/or
centrino cpufreq drivers will need to test it.
>
> Any idea if fiddling with CPU frequency affects the local APIC bus
> frequency? I would guess probably not...
>
I think it's just the core frequency - everything else is on separate PLLs, at
least on K8 chips. Maybe Intel is different.
It will be interesting doing this on dual core, since I've had problems with
cpufreq on a dual-core Athlon 64 X2 box. Each core can technically be
adjusted independently, but the userspace cpufreq programs (cpufreqd,
powersaved, etc) apparently do not correctly measure the system load, i.e.
50% total CPU load runs both cores at half their maximum frequency, while
ideally it should run one at full speed while leaving the other core idle.
This may be a problem with the load measurement algorithm rather than a kernel
issue - as long as the MSRs are written correctly, Xen will follow along with
whatever the dom0 kernel decides to do.
>
> Do you really mean the problem continues for a few *minutes* before
> 'fixing itself'?
>
That's correct - it can sometimes be minutes before the keyboard returns to
normal. The frequency shift causes this, but I don't understand why it
affects only the keyboard, only in X, and why it goes back to normal. Maybe
there is something in the X server that instantaneously reads a bogus time
just at the frequency transition point, and locks on to that erroneously slow
timer until the same corner case occurs a second time? I have no idea.
If someone else could reproduce this with the patch, it might help solve it.
It's extremely rare, so it might be difficult to reproduce.
- Matt
-------------------------------------------------------
Matt T. Yourst yourst@cs.binghamton.edu
Binghamton University, Department of Computer Science
-------------------------------------------------------
next prev parent reply other threads:[~2006-04-13 18:28 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-04-08 22:29 Xen cpufreq support status: how to notify hypervisor of frequency change? Matt T. Yourst
2006-04-10 14:01 ` Keir Fraser
2006-04-11 0:05 ` Matt T. Yourst
2006-04-11 8:25 ` Keir Fraser
2006-04-11 20:11 ` Matt T. Yourst
2006-04-12 5:47 ` Keir Fraser
2006-04-13 2:31 ` Matt T. Yourst
2006-04-13 10:44 ` Keir Fraser
2006-04-13 18:28 ` Matt T. Yourst [this message]
2006-04-14 6:44 ` Keir Fraser
2006-04-12 2:49 ` Matt T. Yourst
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=200604131428.40611.yourst@yourst.com \
--to=yourst@yourst.com \
--cc=Keir.Fraser@cl.cam.ac.uk \
--cc=xen-devel@lists.xensource.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.