mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [BUG] 2.6.0-test2 loses time on 486
@ 2003-07-29 17:34 Mikael Pettersson
  2003-07-29 18:59 ` john stultz
                   ` (2 more replies)
  0 siblings, 3 replies; 9+ messages in thread
From: Mikael Pettersson @ 2003-07-29 17:34 UTC (permalink / raw)
  To: linux-kernel

My old 486 test box is losing time at an alarming rate
when running 2.6.0-test kernels. It loses almost 2 minutes
per hour, less if it sits idle. This problem does not
occur when it's running a 2.4 kernel.

There's nothing noteworthy in dmesg.

This has been going on since at least the 2.5.7x kernels,
and possible also the 2.5.6x kernels. I strongly suspect
a bug in the time-keeping changes in late 2.5 kernels.
The 486 has no TSC, and I don't have an NTP server to
keep my machines' times in sync.

/Mikael

^ permalink raw reply	[flat|nested] 9+ messages in thread
* Re: [BUG] 2.6.0-test2 loses time on 486
@ 2003-07-30 19:19 Mikael Pettersson
  2003-07-30 20:08 ` john stultz
  0 siblings, 1 reply; 9+ messages in thread
From: Mikael Pettersson @ 2003-07-30 19:19 UTC (permalink / raw)
  To: johnstul; +Cc: linux-kernel

On 29 Jul 2003 11:59:06 -0700, john stultz wrote:
>On Tue, 2003-07-29 at 10:34, Mikael Pettersson wrote:
>> My old 486 test box is losing time at an alarming rate
>> when running 2.6.0-test kernels. It loses almost 2 minutes
>> per hour, less if it sits idle. This problem does not
>> occur when it's running a 2.4 kernel.
>> 
>> There's nothing noteworthy in dmesg.
>> 
>> This has been going on since at least the 2.5.7x kernels,
>> and possible also the 2.5.6x kernels. I strongly suspect
>> a bug in the time-keeping changes in late 2.5 kernels.
>> The 486 has no TSC, and I don't have an NTP server to
>> keep my machines' times in sync.
>
>Hmm.  Sounds like you're loosing interrupts. This can happen due to
>poorly behaving drivers (disabling interrupts for too long), or odd
>hardware. The change from HZ=100 to HZ=1000 probably made this more
>visible on your box, so could you try setting HZ back to 100 and see if
>that helps (you may still lose time, but at a much slower rate). 

Yep, reducing HZ to 100 in param.h eliminated the time losses.

>Also what drivers are you running with?

IDE, no chipset driver, NE2000 ISA NIC (no traffic during the
tests), AT keyboard + PS/2 mouse (unused during the tests).

The only things I can think of are:
- a 486 simply cannot keep up with HZ=1000
- the plain IDE driver w/o chipset & DMA support somehow
  is much worse in 2.5/2.6 than in 2.4
- the "no TSC" time-keeping code is broken

/Mikael

^ permalink raw reply	[flat|nested] 9+ messages in thread
* Re: [BUG] 2.6.0-test2 loses time on 486
@ 2003-07-30 22:52 Mikael Pettersson
  2003-07-30 23:16 ` john stultz
  0 siblings, 1 reply; 9+ messages in thread
From: Mikael Pettersson @ 2003-07-30 22:52 UTC (permalink / raw)
  To: johnstul; +Cc: linux-kernel

On 30 Jul 2003 13:08:44 -0700, john stultz <johnstul@us.ibm.com> wrote:
>On Wed, 2003-07-30 at 12:19, Mikael Pettersson wrote:
>> On 29 Jul 2003 11:59:06 -0700, john stultz wrote:
>> >Hmm.  Sounds like you're loosing interrupts. This can happen due to
>> >poorly behaving drivers (disabling interrupts for too long), or odd
>> >hardware. The change from HZ=100 to HZ=1000 probably made this more
>> >visible on your box, so could you try setting HZ back to 100 and see if
>> >that helps (you may still lose time, but at a much slower rate). 
>> 
>> Yep, reducing HZ to 100 in param.h eliminated the time losses.
>
>Ok, that's what I figured. 
>
>> >Also what drivers are you running with?
>> 
>> IDE, no chipset driver, NE2000 ISA NIC (no traffic during the
>> tests), AT keyboard + PS/2 mouse (unused during the tests).
>> 
>> The only things I can think of are:
>> - a 486 simply cannot keep up with HZ=1000
>> - the plain IDE driver w/o chipset & DMA support somehow
>>   is much worse in 2.5/2.6 than in 2.4
>> - the "no TSC" time-keeping code is broken
>
>Well, I suspect its just the first. If you're not generating interrupts
>then I'm doubtful the IDE driver is at fault (although I'd believe it if
>you were losing time under load). Also the PIT based time source is
>pretty simple and hasn't functionally changed much (well, it has been
>moved around a bit). 
>
>It may be the timer interrupt has grown in cost since the argument to
>change HZ to 1000 was made. Although using the PIT there isn't much we
>do from a time of day perspective. If I can find a second, I'll see if I
>can compare interrupt overhead between 2.4 and 2.5. But I'd imagine the
>box would barely be usable if we're wasting all our time handling timer
>interrupts (is it usable??).

Well, the test the box was running (recompile 2.4.22-pre) generates
a lot of disk traffic, including swapping, since the box has so little
RAM (only 28M). So IDE interrupts are frequent and the box is both
CPU and I/O bound. I can still log in to it, type shell commands and
so on, but starting emacs would be a bad idea...
 
To test the "486 can't cope with HZ=1000" thesis I tried a RedHat
2.4.18-27.8 kernel which has a CONFIG_HZ option. Using 2.4.18-27.8
with CONFIG_HZ=1000, the box still lost time during the "recompile
2.4.22-pre" test, but only about 15 seconds per hour instead of 2
minutes per hour as it does with 2.6-test.

/Mikael

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2003-07-31  6:07 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-07-29 17:34 [BUG] 2.6.0-test2 loses time on 486 Mikael Pettersson
2003-07-29 18:59 ` john stultz
2003-07-29 19:15 ` Sean Estabrooks
2003-07-29 21:47 ` Frank van Maarseveen
2003-07-30 19:19 Mikael Pettersson
2003-07-30 20:08 ` john stultz
2003-07-30 22:52 Mikael Pettersson
2003-07-30 23:16 ` john stultz
2003-07-31  6:06   ` Jan-Benedict Glaw

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®