Messages in this thread | | | Date | Tue, 10 Aug 2010 18:41:24 +0200 | From | Robert Richter <> | Subject | Re: [PATCH] perf, x86: try to handle unknown nmis with running perfctrs |
| |
On 10.08.10 12:16:27, Cyrill Gorcunov wrote: > On Tue, Aug 10, 2010 at 09:42:00AM +0200, Robert Richter wrote: > > On 09.08.10 16:02:45, Cyrill Gorcunov wrote: > > > > > > @@ -1222,14 +1245,12 @@ perf_event_nmi_handler(struct notifier_block *self, > > > > regs = args->regs; > > > > > > > > apic_write(APIC_LVTPC, APIC_DM_NMI); > > > > > > If only I'm not missing something this apic_write should go up to > > > "case DIE_NMIUNKNOWN" site, no? > > > > This seems to be code from the non-nmi implementation and can be > > removed at all, which should be a separate patch. The vector is > > already set up. > > > > -Robert > > > > No, this is just a short way to unmask LVTPC (which is required for > cpus). Actually lookig into this snippet I found that in p4 pmu > I've made one redundant unmaksing operation. will update as only > this area settle down.
The vector is setup in hw_perf_enable() and then never masked. The perfctrs nmi is alwayes enabled since then. I still see no reason for unmasking it again with every nmi. Once you handle the nmi it is also enabled.
-Robert
-- Advanced Micro Devices, Inc. Operating System Research Center
| |