• Andrew Morton's avatar
    [PATCH] Fix get_wchan() FIXME wrt. order of functions · b283f09c
    Andrew Morton authored
    From: William Lee Irwin III <wli@holomorphy.com>
    
    This addresses the issue with get_wchan() that the various functions acting
    as scheduling-related primitives are not, in fact, contiguous in the text
    segment.  It creates an ELF section for scheduling primitives to be placed
    in, and places currently-detected (i.e.  skipped during stack decoding)
    scheduling primitives and others like io_schedule() and down(), which are
    currently missed by get_wchan() code, into this section also.
    
    The net effects are more reliability of get_wchan()'s results and the new
    ability, made use of by this code, to arbitrarily place scheduling
    primitives in the source code without disturbing get_wchan()'s accuracy.
    
    Suggestions by Arnd Bergmann and Matthew Wilcox regarding reducing the
    invasiveness of the patch were incorporated during prior rounds of review. 
    I've at least tried to sweep all arches in this patch.
    b283f09c
process.c 10.3 KB