Skip to content

Commit

Permalink
sparc64: Fix NMI programming when perf events are active.
Browse files Browse the repository at this point in the history
If perf events are active, we should not reset the %pcr to
PCR_PIC_PRIV.  That perf events code does the management.

Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
davem330 committed Jan 4, 2010
1 parent 5958eed commit 8183e2b
Showing 1 changed file with 2 additions and 1 deletion.
3 changes: 2 additions & 1 deletion arch/sparc/kernel/nmi.c
Expand Up @@ -96,7 +96,6 @@ notrace __kprobes void perfctr_irq(int irq, struct pt_regs *regs)
int cpu = smp_processor_id();

clear_softint(1 << irq);
pcr_ops->write(PCR_PIC_PRIV);

local_cpu_data().__nmi_count++;

Expand All @@ -105,6 +104,8 @@ notrace __kprobes void perfctr_irq(int irq, struct pt_regs *regs)
if (notify_die(DIE_NMI, "nmi", regs, 0,
pt_regs_trap_type(regs), SIGINT) == NOTIFY_STOP)
touched = 1;
else
pcr_ops->write(PCR_PIC_PRIV);

sum = kstat_irqs_cpu(0, cpu);
if (__get_cpu_var(nmi_touch)) {
Expand Down

0 comments on commit 8183e2b

Please sign in to comment.