Re: [PATCH] xfs: Use BUG_ON rather than BUG() to remove unreachable code

From: Darrick J. Wong
Date: Thu Aug 22 2019 - 10:44:35 EST


On Thu, Aug 22, 2019 at 03:23:20PM +0900, Austin Kim wrote:
> Code after BUG is unreachable since system would be crashed
> after the call to BUG is made.
> So change BUG_ON instead of BUG() to remove unreachable code.
> ---
> fs/xfs/xfs_mount.c | 8 +-------
> 1 file changed, 1 insertion(+), 7 deletions(-)
>
> diff --git a/fs/xfs/xfs_mount.c b/fs/xfs/xfs_mount.c
> index 322da69..a681808 100644
> --- a/fs/xfs/xfs_mount.c
> +++ b/fs/xfs/xfs_mount.c
> @@ -213,13 +213,7 @@ xfs_initialize_perag(
> goto out_hash_destroy;
>
> spin_lock(&mp->m_perag_lock);
> - if (radix_tree_insert(&mp->m_perag_tree, index, pag)) {
> - BUG();
> - spin_unlock(&mp->m_perag_lock);
> - radix_tree_preload_end();
> - error = -EEXIST;
> - goto out_hash_destroy;
> - }
> + BUG_ON(radix_tree_insert(&mp->m_perag_tree, index, pag));

/me thinks this should WARN on the insertion error but otherwise
preserve the existing bailout behavior, since we can always fail the
mount or shutdown the fs and move on....

--D

> spin_unlock(&mp->m_perag_lock);
> radix_tree_preload_end();
> /* first new pag is fully initialized */
> --
> 2.6.2
>