• Chris Mason's avatar
    Btrfs: make uncache_state unconditional · 109b36a2
    Chris Mason authored
    The extent_io code can take cached pointers into the extent state trees,
    and these can make lookups much faster in common operations.  The
    caching only happens when specific bits are set that prevent merging
    and splitting of the extent state.
    
    A help function was added to uncache the state, and it was testing
    the same set of conditionals.  This can leak in very strange corner
    cases where the lock bit goes away unexpectedly.
    
    The uncaching should be unconditional.  Once we have a ref on the
    extent we should always give it up.
    Signed-off-by: default avatarChris Mason <chris.mason@oracle.com>
    109b36a2
extent_io.c 99.4 KB