Welcome to the most active Linux Forum on the web.
Go Back > Forums > Linux Forums > Linux - Software
User Name
Linux - Software This forum is for Software issues.
Having a problem installing a new program? Want to know which application is best for the job? Post your question in this forum.


  Search this Thread
Old 08-02-2005, 04:01 PM   #1
LQ Newbie
Registered: Dec 2002
Location: Cheshire, UK
Distribution: SuSE 9.3
Posts: 11

Rep: Reputation: 0
AMD 64 frequency scaling issue - everything runs too fast!

I've just built myself an AMD 64 3000+ system using an MSI RS480M2 microATX motherboard, and very pleased I am with it, too!

I installed SuSE 9.3 (64-bit version) no problems at all, and updated it with YaST including a kernel upgrade to, before I did anything else. It seemed pretty average speed-wise, until I noticed that Kpowersave was running it at 1000MHz as an economy measure, so ramping it up to 1800 "performance" rating made a massive difference - in fact, I just turned it off as it's always going to be mains-powered.

But I noticed that all of the animation in KDE also seemed to be a bit fast, about twice as fast as normal, and on playing a DVD, both the sound and video is twice as fast as well. And then it dawned on me - the reason that the clock was wrong on the system was not that the NTP client wasn't working, it was because the clock increments 1 minute after every 30 seconds - exactly twice as fast as it should be.

I'm sure that all I need to do is change a scaling factor somewhere but I'm at the edge of my knowledge - can anyone assist? I've tried changing "clock=" settings at boot time without result, and "acpi=off" hangs the boot-up. I have a feeling that kernel 2.6 doesn't allow any settings like this to be changed but surely I could patch it?

Any ideas, anyone? I've noticed that there are a lot of postings recently about time-keeping on Athlon 64 chips but they don't seem to address the underlying issue - for me, correcting the clock on a more frequent basis doesn't really help.

Last edited by gracecourt; 08-02-2005 at 04:03 PM.
Old 08-05-2005, 01:52 AM   #2
Registered: Apr 2005
Distribution: Becoming Sid
Posts: 142

Rep: Reputation: 16
Sorry, I have no idea about your problem, but this is the third thread about problems with 64bit processors and suse I have read in five minutes.
Old 08-10-2005, 04:10 PM   #3
LQ Newbie
Registered: Aug 2005
Posts: 1

Rep: Reputation: 0
Just put noapic as an option in the kernel line.

for newbies:
in grub, select the linux option and strike "e" (for edit)
in the line that says something like /kernel, "e" again, write noapic and enter
now press "b" (as in boot)

this should settle it. To make the change permanent, look around how to edit kernel options. I dont know yet...
Old 08-10-2005, 06:16 PM   #4
LQ Newbie
Registered: Dec 2002
Location: Cheshire, UK
Distribution: SuSE 9.3
Posts: 11

Original Poster
Rep: Reputation: 0
Originally posted by janelev
Just put noapic as an option in the kernel line.

Thanks for the suggestion. Doing this causes the boot-up to loop with:
psmouse.c: Explorer Mouse at isa0060/serio1/input0 lost synchronization, throwing [...] bytes away
psmouse.c: issuing reconnect request

... where the number of bytes varies between 1 and 3 each time.

Disconnecting the mouse justs means the boot sequence hangs at exactly the same point, but with no error message.
Old 08-14-2005, 03:16 PM   #5
LQ Newbie
Registered: Aug 2005
Distribution: soon... SuSE 10.1
Posts: 9

Rep: Reputation: 0
I've been having the same issue on a Compaq V2000. Windows doesn't seem to have the problem but SuSE is just like you said.

Sorry I can't be of much help, please let me know if you discover anything definitive?
Old 08-14-2005, 03:56 PM   #6
Registered: May 2005
Distribution: SuSE
Posts: 58

Rep: Reputation: 15
The only thing I've been able to do in SuSE 9.3 is to patch io_apic.c with Chris Wing's patch and recompile the kernel.
see here:

Guidelines for recompiling SuSE kernel here:
--- arch/x86_64/kernel/io_apic.c.orig 2005-03-25 22:28:21.000000000 -0500
+++ arch/x86_64/kernel/io_apic.c 2005-04-07 13:13:58.813193024 -0400
@@ -1564,6 +1564,8 @@
* is so screwy. Thanks to Brian Perkins for testing/hacking this beast
* fanatically on his truly buggy board.
+static int timer_hack = 0;
static inline void check_timer(void)
int pin1, pin2;
@@ -1597,7 +1599,7 @@
* Ok, does IRQ0 through the IOAPIC work?
- if (timer_irq_works()) {
+ if ((!timer_hack) && timer_irq_works()) {
if (nmi_watchdog == NMI_IO_APIC) {
@@ -1669,6 +1671,14 @@
panic("IO-APIC + timer doesn't work! Try using the 'noapic' kernel parameter\n");

+static int __init timerhack(char *str)
+ timer_hack = 1;
+ return 1;
+__setup("timerhack", timerhack);
* IRQ's that are handled by the PIC in the MPS IOAPIC case.
Save the patch to a file "timerhack.patch"

Backup your original io_apic.c file by saving a copy in some other directory.

copy timerhack.patch into the same directory as io_apic.c in the source tree.

patch < timerhack.patch

will result in a patched io_apic.c file.

Rebuild the kernel with the same configuration as your running kernel.

Add timerhack to the kernel command line: Start Yast, then go to System, then Boot Loader Configuration, Edit Configuration files. From the drop down menu called File name choose /boot/grub/menu.lst. In the file section part, look for the Suse section and after 'showopts' add the word timerhack. Click ok, to save the change.
Reboot to see if the patch has worked.

Last edited by LinuxVB; 08-14-2005 at 04:09 PM.
Old 08-16-2005, 04:45 AM   #7
LQ Newbie
Registered: Aug 2005
Posts: 5

Rep: Reputation: 0
I have the same motherboard. Upgrade your kernel to 2.6.12+ and if that doesn't fix it just use the no_timer_check boot prompt argument.

No need for patching as far as I know.

Old 08-19-2005, 08:36 PM   #8
LQ Newbie
Registered: Aug 2005
Posts: 7

Rep: Reputation: 0
I upgraded to, and am still having the same clock problems on Knoppix, even with the no_timer_check argument. Plus my on-board analog sound is no longer active. Going back to and will try the timer hack...
Old 08-21-2005, 06:49 PM   #9
LQ Newbie
Registered: Aug 2005
Posts: 7

Rep: Reputation: 0
Ok, got it working!

The timerhack patch is applied only to the x86_64 architecture code, and I'm currently running the 32-bit i386 code. I was able to patch that io_apic.c just fine by cd'ing to arch/i386/kernel, and using 'patch -p4 < mypatchfilename'.

So now I've got kernel running on this board with no clock skew! Everything else seems to be working fine. (Haven't tried digital audio out since the change tho..) Still having a problem with interrupt conflicts if I leave USB devices plugged in on boot, but apparently that's an APIC problem. There appear to be many threads offering solutions to that one, so that's the next task!


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off

Similar Threads
Thread Thread Starter Forum Replies Last Post
Amilo A1650 frequency scaling Ravendark Linux - Laptop and Netbook 1 11-04-2005 02:48 AM
cpu frequency scaling on omap osk board manjunathk Linux - Software 0 08-11-2005 06:51 AM
CPU frequency scaling (Mandriva 2005 LE) spookymulder825 Linux - Laptop and Netbook 1 06-18-2005 08:55 PM
cpu frequency scaling....anyone? alaios Linux - General 3 06-07-2005 10:51 AM
CPU frequency scaling on Pentium M Khang Linux - Laptop and Netbook 2 03-23-2005 06:16 PM > Forums > Linux Forums > Linux - Software

All times are GMT -5. The time now is 12:39 AM.

Main Menu
Write for LQ is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration