lkml.org 
[lkml]   [2011]   [Aug]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 4/7] perf, x86: Implement IBS interrupt handler
On 29.07.11 12:58:46, Peter Zijlstra wrote:
> On Thu, 2011-07-28 at 15:46 +0200, Robert Richter wrote:
> > +static int __kprobes
> > +perf_ibs_nmi_handler(struct notifier_block *self,
> > + unsigned long cmd, void *__args)
> > +{
> > + struct die_args *args = __args;
> > + int handled = 0;
> > +
> > + switch (cmd) {
> > + case DIE_NMI:
> > + break;
> > + default:
> > + return NOTIFY_DONE;
> > + }
> > +
> > + handled += perf_ibs_handle_irq(&perf_ibs_fetch, args->regs);
> > + handled += perf_ibs_handle_irq(&perf_ibs_op, args->regs);
> > +
> > + if (!handled)
> > + return NOTIFY_DONE;
> > +
> > + inc_irq_stat(apic_perf_irqs);
> > +
> > + return NOTIFY_STOP;
> > +}
>
> So IBS cannot trigger the whole unknown NMI business? Wouldn't ibs_op
> triggering while ibs_fetch just started latch the NMI line, the
> in-progress NMI would handle both, and we then end up with a spare NMI?

Ok, I will run some excessive testing of this. If this turns out to be
a problem I will change the code. Could this be on top of this patch
set then?

-Robert

--
Advanced Micro Devices, Inc.
Operating System Research Center



\
 
 \ /
  Last update: 2011-08-01 07:35    [from the cache]
©2003-2011 Jasper Spaans