On Wed, 3 Apr 2019, Steven Rostedt wrote:
> Juri reported this from the -rt kernel, but I can easily trigger it in
> mainline. By simply doing:
> 
>  # cd /sys/kernel/tracing
>  # echo 1 > options/userstacktrace
>  # echo 1 > events/irq/enable
> This is simply caused by the irq trace events doing a user stack trace:
> 
> ftrace_trace_userstack {
>   save_stack_trace_user {
>     __save_stack_trace_user {
>       copy_stack_frame {
>         access_ok {
>         WARN_ON_IN_IRQ()
> 
> BOOM! Warn on.
> 
> Can we make that access_ok() call in the copy_stack_frame not trigger
> the warning just if we are in an interrupt?

You really want to have access_ok_atomic() or such which does not have the
WARN and use that in copy_stack_frame(). That's fine here because the
actual copy is inside a pagefault disabled region.

Thanks,

        tglx

Reply via email to