• Darrick J. Wong's avatar
    xfs: make sure the rt allocator doesn't run off the end · 2a6ca4ba
    Darrick J. Wong authored
    There's an overflow bug in the realtime allocator.  If the rt volume is
    large enough to handle a single allocation request that is larger than
    the maximum bmap extent length and the rt bitmap ends exactly on a
    bitmap block boundary, it's possible that the near allocator will try to
    check the freeness of a range that extends past the end of the bitmap.
    This fails with a corruption error and shuts down the fs.
    
    Therefore, constrain maxlen so that the range scan cannot run off the
    end of the rt bitmap.
    Signed-off-by: default avatarDarrick J. Wong <darrick.wong@oracle.com>
    Reviewed-by: default avatarChristoph Hellwig <hch@lst.de>
    2a6ca4ba
xfs_rtalloc.c 35.3 KB