Re: [RFC] perf/core: allow ftrace for functions in kernel/event/core.c

From: Steven Rostedt
Date: Tue May 26 2020 - 18:04:41 EST


On Tue, 26 May 2020 23:54:15 +0200
Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote:

> On Tue, May 26, 2020 at 09:46:29PM +0000, Song Liu wrote:
> >
> >
> > > On May 26, 2020, at 2:39 PM, Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote:
> > >
> > > On Tue, May 26, 2020 at 02:28:26PM -0700, Song Liu wrote:
> > >> It is useful to trace functions in kernel/event/core.c. Allow ftrace for
> > >> them by removing $(CC_FLAGS_FTRACE) from Makefile.
> > >
> > > Did you try using the ftrace event with perf with this on?
> >
> > I have tried a few things, like
> >
> > perf stat -e probe:perf_read -I 1000
> > perf record -e probe:__x64_sys_perf_event_open -aR
> >
> > They all work fine.
> >
> > Do you have some tricky functions that we should double check?
>
> I've no idea what probe: does. iirc there's something like
> ftrace:function that is like regular function tracing.
>
> At some point using that made the kernel really sick due to recursion
> between ftrace and perf. Quite possibly that's been fixed, dunno.

In the early days there was a lot of issues with recursions, but I added a
lot of recursion protection since then. I'll give this patch a spin and see
if I can make it crash.

-- Steve