Re: [PATCH] clocksource/drivers/ti-32k: Prevent ftrace recursion
From: Steven Rostedt
Date: Thu Sep 22 2016 - 22:45:28 EST
On Fri, 23 Sep 2016 10:04:31 +0800
Jisheng Zhang <jszhang@xxxxxxxxxxx> wrote:
> Hi Thomas,
>
> On Thu, 22 Sep 2016 15:58:03 +0200 Thomas Gleixner wrote:
>
> > On Thu, 22 Sep 2016, Jisheng Zhang wrote:
> >
> > > Currently ti-32k can be used as a scheduler clock. We properly marked
> > > omap_32k_read_sched_clock() as notrace but we then call another
> > > function ti_32k_read_cycles() that _wasn't_ notrace.
> > >
> > > Having a traceable function in the sched_clock() path leads to a
> > > recursion within ftrace and a kernel crash.
> >
> > Kernel crash? Doesn't ftrace core prevent recursion?
>
> a recent similar issue:
>
> http://www.spinics.net/lists/arm-kernel/msg533480.html
Right. But Thomas brought up recursion detection. And I said that would
be the fix, but now thinking about it, I've updated the recursion
protection so that timer issues should not cause a crash.
I'd like to know more, as this appears to be mostly arm related.
-- Steve