mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH] fix oprofile multiple counters
@ 2002-10-30  4:11 John Levon
  0 siblings, 0 replies; only message in thread
From: John Levon @ 2002-10-30  4:11 UTC (permalink / raw)
  To: torvalds; +Cc: linux-kernel


Linus, the below ensures we deal properly with multiple perfctr overflow
interrupts under high load.

Please apply

thanks
john


diff -Naur -X dontdiff linux-linus/arch/i386/oprofile/op_model_athlon.c linux/arch/i386/oprofile/op_model_athlon.c
--- linux-linus/arch/i386/oprofile/op_model_athlon.c	Wed Oct 16 19:08:39 2002
+++ linux/arch/i386/oprofile/op_model_athlon.c	Thu Oct 24 02:10:26 2002
@@ -95,17 +95,16 @@
 			      struct pt_regs * const regs)
 {
 	unsigned int low, high;
-	int handled = 0;
 	int i;
 	for (i = 0 ; i < NUM_COUNTERS; ++i) {
 		CTR_READ(low, high, msrs, i);
 		if (CTR_OVERFLOWED(low)) {
 			oprofile_add_sample(regs->eip, i, cpu);
 			CTR_WRITE(reset_value[i], msrs, i);
-			handled = 1;
+			return 1;
 		}
 	}
-	return handled;
+	return 0;
 }
 
  
diff -Naur -X dontdiff linux-linus/arch/i386/oprofile/op_model_ppro.c linux/arch/i386/oprofile/op_model_ppro.c
--- linux-linus/arch/i386/oprofile/op_model_ppro.c	Wed Oct 16 19:08:39 2002
+++ linux/arch/i386/oprofile/op_model_ppro.c	Thu Oct 24 02:10:42 2002
@@ -90,17 +90,16 @@
 {
 	unsigned int low, high;
 	int i;
-	int handled = 0;
  
 	for (i = 0 ; i < NUM_COUNTERS; ++i) {
 		CTR_READ(low, high, msrs, i);
 		if (CTR_OVERFLOWED(low)) {
 			oprofile_add_sample(regs->eip, i, cpu);
 			CTR_WRITE(reset_value[i], msrs, i);
-			handled = 1;
+			return 1;
 		}
 	}
-	return handled;
+	return 0;
 }
 
  

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2002-10-30  4:05 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-10-30  4:11 [PATCH] fix oprofile multiple counters John Levon

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

Powered by JetHome