oprofile/x86: fix crash when profiling more than 28 events
authorSuravee Suthikulpanit <suravee.suthikulpanit@amd.com>
Mon, 18 Jan 2010 17:25:36 +0000 (11:25 -0600)
committerGreg Kroah-Hartman <gregkh@suse.de>
Tue, 9 Feb 2010 12:50:57 +0000 (04:50 -0800)
commit d8cc108f4fab42b380c6b3f3356f99e8dd5372e2 upstream.

With multiplexing enabled oprofile crashs when profiling more than 28
events. This patch fixes this.

Signed-off-by: Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
Signed-off-by: Robert Richter <robert.richter@amd.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
arch/x86/oprofile/nmi_int.c

index 5a14cd578cc4d68f5cbafdc229015a1abfea73de..3347f696edc77d4692f7b0b0fdb774677b573cfa 100644 (file)
@@ -222,7 +222,7 @@ static void nmi_cpu_switch(void *dummy)
 
        /* move to next set */
        si += model->num_counters;
-       if ((si > model->num_virt_counters) || (counter_config[si].count == 0))
+       if ((si >= model->num_virt_counters) || (counter_config[si].count == 0))
                per_cpu(switch_index, cpu) = 0;
        else
                per_cpu(switch_index, cpu) = si;