• Dave Chinner's avatar
    xfs: convert l_tail_lsn to an atomic variable. · 1c3cb9ec
    Dave Chinner authored
    log->l_tail_lsn is currently protected by the log grant lock. The
    lock is only needed for serialising readers against writers, so we
    don't really need the lock if we make the l_tail_lsn variable an
    atomic. Converting the l_tail_lsn variable to an atomic64_t means we
    can start to peel back the grant lock from various operations.
    
    Also, provide functions to safely crack an atomic LSN variable into
    it's component pieces and to recombined the components into an
    atomic variable. Use them where appropriate.
    
    This also removes the need for explicitly holding a spinlock to read
    the l_tail_lsn on 32 bit platforms.
    Signed-off-by: default avatarDave Chinner <dchinner@redhat.com>
    
    1c3cb9ec
xfs_log.c 103 KB