All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] fix jiffy calculations in calibrate_delay_direct to handle overflow
@ 2011-02-09  8:31 Jan Beulich
  2011-02-09  9:21 ` Jiri Slaby
  2011-02-09 20:54 ` Linus Torvalds
  0 siblings, 2 replies; 9+ messages in thread
From: Jan Beulich @ 2011-02-09  8:31 UTC (permalink / raw)
  To: akpm, Linus Torvalds
  Cc: Tim Deegan, Jeremy Fitzhardinge, Jiri Slaby, linux-kernel

Fixes a hang when booting as dom0 under Xen, when jiffies can be
quite large by the time the kernel init gets this far.

Signed-off-by: Tim Deegan <Tim.Deegan@citrix.com>

!time_after() -> time_before_eq() as per suggestion from Jiri Slaby.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
Cc: Jiri Slaby <jslaby@suse.cz>
Cc: Jeremy Fitzhardinge <jeremy@goop.org>

---
 init/calibrate.c |    6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

--- 2.6.38-rc4/init/calibrate.c
+++ 2.6.38-rc4-calibrate-jiffy-overflow/init/calibrate.c
@@ -66,7 +66,7 @@ static unsigned long __cpuinit calibrate
 		pre_start = 0;
 		read_current_timer(&start);
 		start_jiffies = jiffies;
-		while (jiffies <= (start_jiffies + 1)) {
+		while (time_before_eq(jiffies, start_jiffies + 1)) {
 			pre_start = start;
 			read_current_timer(&start);
 		}
@@ -74,8 +74,8 @@ static unsigned long __cpuinit calibrate
 
 		pre_end = 0;
 		end = post_start;
-		while (jiffies <=
-		       (start_jiffies + 1 + DELAY_CALIBRATION_TICKS)) {
+		while (time_before_eq(jiffies, start_jiffies + 1 +
+					       DELAY_CALIBRATION_TICKS)) {
 			pre_end = end;
 			read_current_timer(&end);
 		}




^ permalink raw reply	[flat|nested] 9+ messages in thread
* [PATCH] fix jiffy calculations in calibrate_delay_direct to handle overflow
@ 2011-02-10  8:50 Jan Beulich
  0 siblings, 0 replies; 9+ messages in thread
From: Jan Beulich @ 2011-02-10  8:50 UTC (permalink / raw)
  To: akpm, Linus Torvalds
  Cc: Tim Deegan, Jeremy Fitzhardinge, stable, Jiri Slaby, linux-kernel

From: Tim Deegan <Tim.Deegan@citrix.com>

Fixes a hang when booting as dom0 under Xen, when jiffies can be
quite large by the time the kernel init gets this far.

Signed-off-by: Tim Deegan <Tim.Deegan@citrix.com>
[jbeulich@novell.com: !time_after() -> time_before_eq() as suggested by Jiri Slaby]
Signed-off-by: Jan Beulich <jbeulich@novell.com>
Cc: Jiri Slaby <jslaby@suse.cz>
Cc: Jeremy Fitzhardinge <jeremy@goop.org>
Cc: stable@kernel.org 

---
 init/calibrate.c |    6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

--- 2.6.38-rc4/init/calibrate.c
+++ 2.6.38-rc4-calibrate-jiffy-overflow/init/calibrate.c
@@ -66,7 +66,7 @@ static unsigned long __cpuinit calibrate
 		pre_start = 0;
 		read_current_timer(&start);
 		start_jiffies = jiffies;
-		while (jiffies <= (start_jiffies + 1)) {
+		while (time_before_eq(jiffies, start_jiffies + 1)) {
 			pre_start = start;
 			read_current_timer(&start);
 		}
@@ -74,8 +74,8 @@ static unsigned long __cpuinit calibrate
 
 		pre_end = 0;
 		end = post_start;
-		while (jiffies <=
-		       (start_jiffies + 1 + DELAY_CALIBRATION_TICKS)) {
+		while (time_before_eq(jiffies, start_jiffies + 1 +
+					       DELAY_CALIBRATION_TICKS)) {
 			pre_end = end;
 			read_current_timer(&end);
 		}




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

end of thread, other threads:[~2011-02-10  8:50 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-02-09  8:31 [PATCH] fix jiffy calculations in calibrate_delay_direct to handle overflow Jan Beulich
2011-02-09  9:21 ` Jiri Slaby
2011-02-09  9:44   ` Jan Beulich
2011-02-09  9:53     ` Jiri Slaby
2011-02-09 13:18       ` Jan Beulich
2011-02-09 18:48         ` Jeremy Fitzhardinge
2011-02-09 20:54 ` Linus Torvalds
2011-02-10  8:48   ` Jan Beulich
2011-02-10  8:50 Jan Beulich

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.