Re:

From: Google
Date: Tue May 23 2023 - 01:30:43 EST


On Mon, 22 May 2023 10:07:42 +0800
Ze Gao <zegao2021@xxxxxxxxx> wrote:

> Oops, I missed that. Thanks for pointing that out, which I thought is
> conditional use of rcu_is_watching before.
>
> One last point, I think we should double check on this
> "fentry does not filter with !rcu_is_watching"
> as quoted from Yonghong and argue whether it needs
> the same check for fentry as well.

rcu_is_watching() comment says;

* if the current CPU is not in its idle loop or is in an interrupt or
* NMI handler, return true.

Thus it returns *fault* if the current CPU is in the idle loop and not
any interrupt(including NMI) context. This means if any tracable function
is called from idle loop, it can be !rcu_is_watching(). I meant, this is
'context' based check, thus fentry can not filter out that some commonly
used functions is called from that context but it can be detected.

Thank you,

>
> Regards,
> Ze


--
Masami Hiramatsu (Google) <mhiramat@xxxxxxxxxx>