From: David Fries <david@fries.net>
To: Ingo Molnar <mingo@elte.hu>
Cc: linux-kernel <linux-kernel@vger.kernel.org>
Subject: TSC marked unstable on suspend and resume
Date: Fri, 20 Feb 2009 20:39:43 -0600 [thread overview]
Message-ID: <20090221023943.GA4894@spacedout.fries.net> (raw)
I'm getting TSC marked as unsable on hibernate to disk with
2.6.29-rc3. The last kernel I ran 2.6.24.4 ran 300+ days without a
problem and does not loose TSC on hibernate.
I'm hibernating with `echo disk > /sys/power/state`.
These look like the relavant messages,
CPU 0 irqstacks, hard=c0379000 soft=c0378000
PID hash table entries: 1024 (order: 10, 4096 bytes)
Fast TSC calibration using PIT
Detected 300.705 MHz processor.
Calibrating delay loop (skipped), value calculated using timer frequency.. 601.41 BogoMIPS (lpj=300705)
hibernate to disk,
Restarting tasks ... done.
Clocksource tsc unstable (delta = 499883531 ns)
another reboot,
Restarting tasks ... done.
Clocksource tsc unstable (delta = 499883531 ns)
another reboot,
Freezing user space processes ... (elapsed 0.07 seconds) done.
Freezing remaining freezable tasks ... (elapsed 0.00 seconds) done.
PM: Shrinking memory... ^H-<4>Clocksource tsc unstable (delta = 78961880 ns)
^H\^H|^H/^Hdone (34745 pages freed)
I didn't spot the problem until I raw the HP48 calculator emulator x48
and it was running like a dog, but the same binary ran fine on my
other systems. It was looping on gettimeofday intending to delay 2us,
but was getting 1ms when TSC wasn't available.
On Thu, Feb 05, 2009 at 10:02:39PM +0100, Ingo Molnar wrote:
> What does this tool output:
>
> http://people.redhat.com/mingo/time-warp-test/time-warp-test.c
time-warp-test is getting the number of CPUs wrong here, trivial
patch included.
./time-warp-test
2 CPUs, running 2 parallel test-tasks.
grep processor /proc/cpuinfo
processor : 0
model name : AMD-K6(tm) 3D processor
--- time-warp-test.c.orig 2009-02-19 20:52:40.000000000 -0600
+++ time-warp-test.c 2009-02-19 21:32:58.000000000 -0600
@@ -295,7 +295,7 @@ int main(int argc, char **argv)
unsigned long *shared;
unsigned long cpus, tasks;
- cpus = system("exit `grep processor /proc/cpuinfo | wc -l`");
+ cpus = system("exit `grep ^processor /proc/cpuinfo | wc -l`");
cpus = WEXITSTATUS(cpus);
if (argc > 2) {
With any optimizations, -O or -O1 or -O2 I don't get any status
output, with -O0 I get,
./time-warp-test
1 CPUs, running 1 parallel test-tasks.
checking for time-warps via:
- read time stamp counter (RDTSC) instruction (cycle resolution)
| TSC: 0.82us, fail:0 /
--
David Fries <david@fries.net>
http://fries.net/~david/ (PGP encryption key available)
next reply other threads:[~2009-02-21 2:40 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-02-21 2:39 David Fries [this message]
2009-02-23 23:23 ` TSC marked unstable on suspend and resume Rafael J. Wysocki
2009-02-24 4:58 ` David Fries
2009-02-27 21:05 ` Pavel Machek
2009-04-29 16:45 ` john stultz
2009-04-29 23:25 ` David Fries
2009-04-30 3:37 ` john stultz
2009-05-01 3:13 ` David Fries
2009-05-08 21:53 ` Ondrej Zary
2009-05-09 0:34 ` David Fries
2009-05-09 10:02 ` Ondrej Zary
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=20090221023943.GA4894@spacedout.fries.net \
--to=david@fries.net \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
/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