lkml.org 
[lkml]   [2000]   [Feb]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
Subjectgettimeofday non-monotonic on SMP 2.3.47
In my previous message I described some strange interactive problems on
SMP kernels. I think now that the source of this problems is the fact
that gettimeofday is non-monotonic on SMP. A quick search of l-k shows
that this problem was known about a year ago and supposedly fixed then.
However by using the same test program by Dave Madden (attached) that
was used then I see non-monotonicity. I get the following:

$ ./timetest
Sun Feb 27 15:55:04 2000: fwd:636993/59:back max 9073493
Sun Feb 27 15:54:56 2000: fwd:10219/2:back max 8988313
Sun Feb 27 15:54:57 2000: fwd:202937/1:back max 1738037
Sun Feb 27 15:54:58 2000: fwd:758898/37:back max 8911001
Sun Feb 27 15:54:57 2000: fwd:735784/36:back max 8795815
^^^ This is most disturbing!
Sun Feb 27 15:54:58 2000: fwd:3650/0:back max 0000000
Sun Feb 27 15:54:59 2000: fwd:19044/1:back max 1974287
Sun Feb 27 15:55:07 2000: fwd:1184754/76:back max 8685815

This is on SMP 2.3.47 Intel BX mb with P2/400 and P3/450.
I don't see this problem in UP.

Before you jump and tell me that processors must be the same let me
point out that Intel specifically calls for support of processors of
different abilities and speeds for an OS to be MP Spec 1.4 compliant.

In my log I see the message

BIOS BUG: CPU#0 improperly initialized, has -1458212 usecs TSC skew!
FIXED.
BIOS BUG: CPU#1 improperly initialized, has 1458212 usecs TSC skew!
FIXED.?

from synchronize_tsc_bp in arch/i386/kernel/smpboot.c
I am not sure whether this is related or not. Can somebody explain the
meaning
of the word FIXED here and especially the meaning of "sum += delta;"

Thanks,

Boris[unhandled content-type:application/octet-stream]
\
 
 \ /
  Last update: 2005-03-22 13:56    [W:0.084 / U:0.600 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site