Re: Regression in 2.6.27 caused by commit bfc0f59

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Linus Torvalds
Date: Tuesday, September 2, 2008 - 8:09 am

On Tue, 2 Sep 2008, Thomas Gleixner wrote:

Ok, that sounds like a good approach to find if it's done by some 
kind of emulation or not. Of course, any machine with SMM (even if it 
doesn't emulate the PIT per se - maybe it just gets some event related to 
overheating or other 'maintenance' stuff) can have occasional hickups, but 
the '120msec' thing is, I think, the real clincher. 

Why? Because we only try to wait for 50ms in the first place! Even if 
emulation is 100% exact (or even none at all, and the PIT accesses are in 
hardware), if we have a 120ms hickup while waiting for 50ms, then the end 
result will obviously be total crap, and yes, that sure explains how you 
can get >100% wrong values.


I think the most trivial approach would be to

 - just keep track of the max TSC difference for each loop iteration.

 - if the max TSC is bigger than 1% of the total TSC, then something is 
   already seriously wrong (either we had very few loops indeed, or some 
   of them were very expensive)

 - perhaps loop over the calibration, and make the TSC calibration loop 
   increase the delay. Because even if there is a 120ms hickup, if we had 
   used a longer calibration delay, we'd probably not have noticed (well, 
   ok, 120ms is pretty damning and is probably just unfixable, but smaller 
   hickups are probably harmless)

Additionally doing a min/max comparison to see that the loop is very 
_stable_ is of course also a way to validate things, but expecting _too_ 
much stability may be wrong too. As mentioned, SMM events can happen for 
other reasons than emulation.

		Linus
--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
Regression in 2.6.27 caused by commit bfc0f59, Larry Finger, (Sun Aug 31, 3:54 pm)
Re: Regression in 2.6.27 caused by commit bfc0f59, Thomas Gleixner, (Mon Sep 1, 4:14 am)
Re: Regression in 2.6.27 caused by commit bfc0f59, Larry Finger, (Mon Sep 1, 8:37 am)
Re: Regression in 2.6.27 caused by commit bfc0f59, Larry Finger, (Mon Sep 1, 10:44 am)
Re: Regression in 2.6.27 caused by commit bfc0f59, Thomas Gleixner, (Mon Sep 1, 10:49 am)
Re: Regression in 2.6.27 caused by commit bfc0f59, Thomas Gleixner, (Mon Sep 1, 11:31 am)
Re: Regression in 2.6.27 caused by commit bfc0f59, Linus Torvalds, (Mon Sep 1, 11:42 am)
Re: Regression in 2.6.27 caused by commit bfc0f59, Thomas Gleixner, (Mon Sep 1, 12:08 pm)
Re: Regression in 2.6.27 caused by commit bfc0f59, Linus Torvalds, (Mon Sep 1, 12:10 pm)
Re: Regression in 2.6.27 caused by commit bfc0f59, Larry Finger, (Mon Sep 1, 12:36 pm)
Re: Regression in 2.6.27 caused by commit bfc0f59, Thomas Gleixner, (Mon Sep 1, 1:07 pm)
Re: Regression in 2.6.27 caused by commit bfc0f59, Thomas Gleixner, (Mon Sep 1, 1:09 pm)
Re: Regression in 2.6.27 caused by commit bfc0f59, Larry Finger, (Mon Sep 1, 1:23 pm)
Re: Regression in 2.6.27 caused by commit bfc0f59, Thomas Gleixner, (Mon Sep 1, 1:45 pm)
Re: Regression in 2.6.27 caused by commit bfc0f59, Thomas Gleixner, (Mon Sep 1, 2:30 pm)
Re: Regression in 2.6.27 caused by commit bfc0f59, Linus Torvalds, (Mon Sep 1, 3:02 pm)
Re: Regression in 2.6.27 caused by commit bfc0f59, Linus Torvalds, (Mon Sep 1, 3:16 pm)
Re: Regression in 2.6.27 caused by commit bfc0f59, Thomas Gleixner, (Mon Sep 1, 3:33 pm)
Re: Regression in 2.6.27 caused by commit bfc0f59, Linus Torvalds, (Mon Sep 1, 3:56 pm)
Re: Regression in 2.6.27 caused by commit bfc0f59, Thomas Gleixner, (Mon Sep 1, 4:16 pm)
Re: Regression in 2.6.27 caused by commit bfc0f59, Thomas Gleixner, (Mon Sep 1, 4:24 pm)
Re: Regression in 2.6.27 caused by commit bfc0f59, Linus Torvalds, (Mon Sep 1, 8:18 pm)
Re: Regression in 2.6.27 caused by commit bfc0f59, Linus Torvalds, (Mon Sep 1, 8:35 pm)
Re: Regression in 2.6.27 caused by commit bfc0f59, Larry Finger, (Mon Sep 1, 9:54 pm)
Re: Regression in 2.6.27 caused by commit bfc0f59, Andi Kleen, (Mon Sep 1, 11:37 pm)
Re: Regression in 2.6.27 caused by commit bfc0f59, Thomas Gleixner, (Tue Sep 2, 5:15 am)
Re: Regression in 2.6.27 caused by commit bfc0f59, Thomas Gleixner, (Tue Sep 2, 5:21 am)
Re: Regression in 2.6.27 caused by commit bfc0f59, Linus Torvalds, (Tue Sep 2, 8:09 am)
Re: Regression in 2.6.27 caused by commit bfc0f59, Bill Davidsen, (Tue Sep 2, 10:17 am)
Re: Regression in 2.6.27 caused by commit bfc0f59, Thomas Gleixner, (Tue Sep 2, 11:14 am)
Re: Regression in 2.6.27 caused by commit bfc0f59, Alok Kataria, (Tue Sep 2, 11:41 am)
Re: Regression in 2.6.27 caused by commit bfc0f59, Linus Torvalds, (Tue Sep 2, 11:42 am)
Re: Regression in 2.6.27 caused by commit bfc0f59, Thomas Gleixner, (Tue Sep 2, 2:13 pm)
Re: Regression in 2.6.27 caused by commit bfc0f59, Thomas Gleixner, (Tue Sep 2, 2:16 pm)
Re: Regression in 2.6.27 caused by commit bfc0f59, Linus Torvalds, (Tue Sep 2, 3:21 pm)
[PATCH] Fix TSC calibration issues, Thomas Gleixner, (Tue Sep 2, 3:54 pm)
Re: Regression in 2.6.27 caused by commit bfc0f59, Thomas Gleixner, (Tue Sep 2, 4:10 pm)
Re: Regression in 2.6.27 caused by commit bfc0f59, Linus Torvalds, (Tue Sep 2, 6:49 pm)
Re: [PATCH] Fix TSC calibration issues, Linus Torvalds, (Tue Sep 2, 7:14 pm)
Re: [PATCH] Fix TSC calibration issues, Larry Finger, (Tue Sep 2, 7:51 pm)
Re: [PATCH] Fix TSC calibration issues, Linus Torvalds, (Tue Sep 2, 9:00 pm)
Re: [PATCH] Fix TSC calibration issues, Larry Finger, (Tue Sep 2, 9:34 pm)
Re: [PATCH] Fix TSC calibration issues, Thomas Gleixner, (Wed Sep 3, 2:11 am)
Re: [PATCH] Fix TSC calibration issues, Alok Kataria, (Wed Sep 3, 6:14 pm)
[PATCH] Change warning message in TSC calibration., Alok Kataria, (Wed Sep 3, 6:18 pm)
Re: [PATCH] Fix TSC calibration issues, Linus Torvalds, (Wed Sep 3, 7:56 pm)
Re: [PATCH] Fix TSC calibration issues, Arjan van de Ven, (Wed Sep 3, 8:16 pm)
Re: [PATCH] Fix TSC calibration issues, Linus Torvalds, (Wed Sep 3, 8:59 pm)
Re: [PATCH] Fix TSC calibration issues, Arjan van de Ven, (Wed Sep 3, 9:10 pm)
Re: [PATCH] Fix TSC calibration issues, Linus Torvalds, (Wed Sep 3, 9:20 pm)
Re: [PATCH] Fix TSC calibration issues, Willy Tarreau, (Wed Sep 3, 9:25 pm)
Re: [PATCH] Fix TSC calibration issues, Arjan van de Ven, (Wed Sep 3, 9:27 pm)
Re: [PATCH] Fix TSC calibration issues, Linus Torvalds, (Wed Sep 3, 9:53 pm)
Re: [PATCH] Fix TSC calibration issues, Willy Tarreau, (Wed Sep 3, 10:09 pm)
Re: Regression in 2.6.27 caused by commit bfc0f59, Mark Lord, (Fri Sep 5, 6:45 am)