• Steven Rostedt's avatar
    ftrace: add do_for_each_ftrace_rec and while_for_each_ftrace_rec · 265c831c
    Steven Rostedt authored
    Impact: clean up
    
    To iterate over all the functions that dynamic trace knows about
    it requires two for loops. One to iterate over the pages and the
    other to iterate over the records within the page.
    
    There are several duplications of these loops in ftrace.c. This
    patch creates the macros do_for_each_ftrace_rec and
    while_for_each_ftrace_rec to handle this logic, and removes the
    duplicate code.
    
    While making this change, I also discovered and fixed a small
    bug that one of the iterations should exit the loop after it found the
    record it was searching for. This used a break when it should have
    used a goto, since there were two loops it needed to break out
    from.  No real harm was done by this bug since it would only continue
    to search the other records, and the code was in a slow path anyway.
    Signed-off-by: default avatarSteven Rostedt <srostedt@redhat.com>
    265c831c
ftrace.c 44.3 KB