Skip to contentSkip to conversation

Fix timer_stats printout of events/sec

PATCH New Anton Blanchard 1 participant 1 message Oct 1, 2007

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 Fix timer_stats printout of events/sec

Hi,

When using /proc/timer_stats on ppc64 I noticed the events/sec field wasnt accurate. Sometimes the integer part was incorrect due to rounding (we werent taking the fractional seconds into consideration).

The fraction part is also wrong, we need to pad the printf statement and take the bottom three digits of 1000 times the value.

---

kernel/time/timer_stats.c +3 -2
index 3c38fb5..c36bb7e 100644
@@ -327,8 +327,9 @@ static int tstats_show(struct seq_file *m, void *v)
 		ms = 1;
 
 	if (events && period.tv_sec)
-		seq_printf(m, "%ld total events, %ld.%ld events/sec\n", events,
-			   events / period.tv_sec, events * 1000 / ms);
+		seq_printf(m, "%ld total events, %ld.%03ld events/sec\n",
+			   events, events * 1000 / ms,
+			   (events * 1000000 / ms) % 1000);
 	else
 		seq_printf(m, "%ld total events\n", events);