• Christoph Hellwig's avatar
    xfs: unwind xfs_extent_busy_clear · c37d6ed8
    Christoph Hellwig authored
    The current structure of xfs_extent_busy_clear that locks the first busy
    extent in each AG and unlocks when switching to a new AG makes sparse
    unhappy as the lock critical section tracking can't cope with taking the
    lock conditionally and inside a loop.
    
    Rewrite xfs_extent_busy_clear so that it has an outer loop only advancing
    when moving to a new AG, and an inner loop that consumes busy extents for
    the given AG to make life easier for sparse and to also make this logic
    more obvious to humans.
    Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
    Reviewed-by: default avatar"Darrick J. Wong" <djwong@kernel.org>
    Signed-off-by: default avatarChandan Babu R <chandanbabu@kernel.org>
    c37d6ed8
xfs_extent_busy.c 17.1 KB