lkml.org 
[lkml]   [2010]   [Mar]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: [PATCH 5/5] tracing: Do not record user stack trace from NMI context
    From
    Date
    On Sun, 2010-03-14 at 11:27 +0100, Frederic Weisbecker wrote:

    >
    > Wow, that's a race :)
    >
    > In perf this is dealt with a special copy_from_user_nmi()
    > (see in arch/x86/kernel/cpu/perf_event.c)
    >
    > May be save_stack_trace_user() should use that instead
    > of a __copy_from_user_inatomic() based thing, just to
    > cover such NMI corner race case.
    >

    Yeah, we should move the __copy_from_user_nmi() out of the perf code and
    into the normal uaccess code. Then we could do as you suggest, and have
    the stack code do:

    if (in_nmi())
    __copy_from_user_nmi();
    else
    __copy_from_user_inatomic();

    Or maybe it would be best to have the __copy_from_user_inatomic() handle
    it.

    -- Steve



    \
     
     \ /
      Last update: 2010-03-14 16:31    [W:0.022 / U:126.360 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site