• Andrey Strachuk's avatar
    xfs: removed useless condition in function xfs_attr_node_get · 0f38063d
    Andrey Strachuk authored
    At line 1561, variable "state" is being compared
    with NULL every loop iteration.
    
    -------------------------------------------------------------------
    1561	for (i = 0; state != NULL && i < state->path.active; i++) {
    1562		xfs_trans_brelse(args->trans, state->path.blk[i].bp);
    1563		state->path.blk[i].bp = NULL;
    1564	}
    -------------------------------------------------------------------
    
    However, it cannot be NULL.
    
    ----------------------------------------
    1546	state = xfs_da_state_alloc(args);
    ----------------------------------------
    
    xfs_da_state_alloc calls kmem_cache_zalloc. kmem_cache_zalloc is
    called with __GFP_NOFAIL flag and, therefore, it cannot return NULL.
    
    --------------------------------------------------------------------------
    	struct xfs_da_state *
    	xfs_da_state_alloc(
    	struct xfs_da_args	*args)
    	{
    		struct xfs_da_state	*state;
    
    		state = kmem_cache_zalloc(xfs_da_state_cache, GFP_NOFS | __GFP_NOFAIL);
    		state->args = args;
    		state->mp = args->dp->i_mount;
    		return state;
    	}
    --------------------------------------------------------------------------
    
    Found by Linux Verification Center (linuxtesting.org) with SVACE.
    Signed-off-by: default avatarAndrey Strachuk <strochuk@ispras.ru>
    
    Fixes: 4d0cdd2b ("xfs: clean up xfs_attr_node_hasname")
    Reviewed-by: default avatarDarrick J. Wong <djwong@kernel.org>
    Signed-off-by: default avatarDarrick J. Wong <djwong@kernel.org>
    0f38063d
xfs_attr.c 39.3 KB