• Darrick J. Wong's avatar
    xfs: garbage collect old cowextsz reservations · 83104d44
    Darrick J. Wong authored
    Trim CoW reservations made on behalf of a cowextsz hint if they get too
    old or we run low on quota, so long as we don't have dirty data awaiting
    writeback or directio operations in progress.
    
    Garbage collection of the cowextsize extents are kept separate from
    prealloc extent reaping because setting the CoW prealloc lifetime to a
    (much) higher value than the regular prealloc extent lifetime has been
    useful for combatting CoW fragmentation on VM hosts where the VMs
    experience bursty write behaviors and we can keep the utilization ratios
    low enough that we don't start to run out of space.  IOWs, it benefits
    us to keep the CoW fork reservations around for as long as we can unless
    we run out of blocks or hit inode reclaim.
    Signed-off-by: 's avatarDarrick J. Wong <darrick.wong@oracle.com>
    Reviewed-by: 's avatarChristoph Hellwig <hch@lst.de>
    83104d44