On Tue, 05 May 2020 15:41:15 +0200
Thomas Gleixner <[email protected]> wrote:

> Both the callers in the low level ASM code and __context_tracking_exit()
> which is invoked from enter_from_user_mode() via user_exit_irqoff() are
> marked NOKPROBE. Allowing enter_from_user_mode() to be probed is
> inconsistent at best.
> 
> Aside of that while function tracing per se is safe the function trace
> entry/exit points can be used via BPF as well which is not safe to use
> before context tracking has reached CONTEXT_KERNEL and adjusted RCU.
> 
> Mark it noinstr which moves it into the instrumentation protected text
> section and includes notrace.
> 
> Note, this needs further fixups in context tracking to ensure that the
> full call chain is protected. Will be addressed in follow up changes.
> 
> Signed-off-by: Thomas Gleixner <[email protected]>

Looks good to me.

Reviewed-by: Masami Hiramatsu <[email protected]>

Thank you,

> ---
>  arch/x86/entry/common.c |    2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> --- a/arch/x86/entry/common.c
> +++ b/arch/x86/entry/common.c
> @@ -41,7 +41,7 @@
>  
>  #ifdef CONFIG_CONTEXT_TRACKING
>  /* Called on entry from user mode with IRQs off. */
> -__visible inline void enter_from_user_mode(void)
> +__visible inline noinstr void enter_from_user_mode(void)
>  {
>       CT_WARN_ON(ct_state() != CONTEXT_USER);
>       user_exit_irqoff();
> 


-- 
Masami Hiramatsu <[email protected]>

Reply via email to