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    [W:0.025 / U:30.212 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site