Re: question on FSL_EMB perf
On Wed, 2015-06-10 at 13:41 +0200, Peter Zijlstra wrote: Hi Mike, Ben, I just noticed: arch/powerpc/Kconfig: select HAVE_PERF_EVENTS_NMI if PPC64 We actually only added that recently, in c54b2bf1b5e9 powerpc: Add ppc64 hard lockup detector support. AFAICS it doesn't actually have anything to do with the NMI behaviour of the perf interrupt. It controls whether the hardlockup detector is enabled and/or the oprofile NMI timer. cheers ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev
question on FSL_EMB perf
Hi Mike, Ben, I just noticed: arch/powerpc/Kconfig: select HAVE_PERF_EVENTS_NMI if PPC64 But can't ppc32 have FSL_EMB perf? ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev
Re: question on FSL_EMB perf
On Wed, 2015-06-10 at 13:41 +0200, Peter Zijlstra wrote: Hi Mike, Ben, I just noticed: arch/powerpc/Kconfig: select HAVE_PERF_EVENTS_NMI if PPC64 But can't ppc32 have FSL_EMB perf? Yes, but it doesn't use NMIs. ppc64 has lazy interrupt disabling which functions as a pseudo-NMI. -Scott ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev
Re: question on FSL_EMB perf
On Wed, 2015-06-10 at 21:27 +0200, Peter Zijlstra wrote: On Wed, 2015-06-10 at 14:17 -0500, Scott Wood wrote: On Wed, 2015-06-10 at 13:41 +0200, Peter Zijlstra wrote: Hi Mike, Ben, I just noticed: arch/powerpc/Kconfig: select HAVE_PERF_EVENTS_NMI if PPC64 But can't ppc32 have FSL_EMB perf? Yes, but it doesn't use NMIs. ppc64 has lazy interrupt disabling which functions as a pseudo-NMI. I know. But you can get the same nesting nonsense as with actual real NMIs. What sort of nesting nonsense would we get on ppc32? I wasn't trying to say that the pseudo-NMIs didn't count -- I was pointing out that we don't even have that on ppc32. And seeing how you select HAVE_PERF_EVENT_NMI for PPC64, I figure you ought to select it too for whatever fsl-emb is. Why? # git grep nmi_enter arch/powerpc/ arch/powerpc/perf/core-book3s.c:nmi_enter(); arch/powerpc/perf/core-fsl-emb.c: nmi_enter(); nmi_enter() only gets called when perf_intr_is_nmi() returns non-zero, which only happens on ppc64. -Scott ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev
Re: question on FSL_EMB perf
On Wed, 2015-06-10 at 14:17 -0500, Scott Wood wrote: On Wed, 2015-06-10 at 13:41 +0200, Peter Zijlstra wrote: Hi Mike, Ben, I just noticed: arch/powerpc/Kconfig: select HAVE_PERF_EVENTS_NMI if PPC64 But can't ppc32 have FSL_EMB perf? Yes, but it doesn't use NMIs. ppc64 has lazy interrupt disabling which functions as a pseudo-NMI. I know. But you can get the same nesting nonsense as with actual real NMIs. And seeing how you select HAVE_PERF_EVENT_NMI for PPC64, I figure you ought to select it too for whatever fsl-emb is. # git grep nmi_enter arch/powerpc/ arch/powerpc/perf/core-book3s.c:nmi_enter(); arch/powerpc/perf/core-fsl-emb.c: nmi_enter(); ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev
Re: question on FSL_EMB perf
On Wed, 2015-06-10 at 15:13 -0500, Scott Wood wrote: What sort of nesting nonsense would we get on ppc32? I wasn't trying to say that the pseudo-NMIs didn't count -- I was pointing out that we don't even have that on ppc32. Oh, I was not aware ppc32 did not have that. # git grep nmi_enter arch/powerpc/ arch/powerpc/perf/core-book3s.c:nmi_enter(); arch/powerpc/perf/core-fsl-emb.c: nmi_enter(); nmi_enter() only gets called when perf_intr_is_nmi() returns non-zero, which only happens on ppc64. ok, so fsl-emb is ppc32 and ppc64, not confusing at all this stuff. ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev
Re: question on FSL_EMB perf
On Wed, 2015-06-10 at 23:14 +0200, Peter Zijlstra wrote: On Wed, 2015-06-10 at 15:13 -0500, Scott Wood wrote: What sort of nesting nonsense would we get on ppc32? I wasn't trying to say that the pseudo-NMIs didn't count -- I was pointing out that we don't even have that on ppc32. Oh, I was not aware ppc32 did not have that. # git grep nmi_enter arch/powerpc/ arch/powerpc/perf/core-book3s.c:nmi_enter(); arch/powerpc/perf/core-fsl-emb.c: nmi_enter(); nmi_enter() only gets called when perf_intr_is_nmi() returns non- zero, which only happens on ppc64. ok, so fsl-emb is ppc32 and ppc64, not confusing at all this stuff. Both drivers can be used on either 32 or 64 bits. -Scott ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev