Re: [PATCH 2/2 v8] printk: Add monotonic, boottime, and realtime timestamps

From: Steven Rostedt
Date: Fri Aug 25 2017 - 10:58:24 EST


On Fri, 25 Aug 2017 10:46:21 -0400
Prarit Bhargava <prarit@xxxxxxxxxx> wrote:


> np. I'm going to copy the code for
>
> u64 notrace ktime_get_boot_fast_ns(void)
>
> but I'm unsure why the function is marked "notrace", and if
> __ktime_get_real_fast_ns_unsafe() must be as well? I don't see anything in the
> git log that indicates why the function is notrace.
>
> I've added Joel to this thread ...

The "notrace" is added because it is one of the trace clocks:

kernel/trace/trace.c: { ktime_get_boot_fast_ns, "boot", 1 },

And function tracer can use it. We don't want to be tracing the clock
that the function tracer is using (otherwise it will get double
traced). It use to bug, but I believe I finally got the recursion
protection working to prevent that.

-- Steve