• Dave Chinner's avatar
    xfs: factor callbacks out of xlog_state_do_callback() · 6546818c
    Dave Chinner authored
    Simplify the code flow by lifting the iclog callback work out of
    the main iclog iteration loop. This isolates the log juggling and
    callbacks from the iclog state change logic in the loop.
    
    Note that the loopdidcallbacks variable is not actually tracking
    whether callbacks are actually run - it is tracking whether the
    icloglock was dropped during the loop and so determines if we
    completed the entire iclog scan loop atomically. Hence we know for
    certain there are either no more ordered completions to run or
    that the next completion will run the remaining ordered iclog
    completions. Hence rename that variable appropriately for it's
    function.
    Signed-off-by: default avatarDave Chinner <dchinner@redhat.com>
    Reviewed-by: default avatarDarrick J. Wong <darrick.wong@oracle.com>
    Signed-off-by: default avatarDarrick J. Wong <darrick.wong@oracle.com>
    6546818c
xfs_log.c 112 KB