diff options
Diffstat (limited to 'fs/xfs/libxfs/xfs_alloc.c')
| -rw-r--r-- | fs/xfs/libxfs/xfs_alloc.c | 8 | 
1 files changed, 8 insertions, 0 deletions
| diff --git a/fs/xfs/libxfs/xfs_alloc.c b/fs/xfs/libxfs/xfs_alloc.c index 744dcaec34cc..f965ce832bc0 100644 --- a/fs/xfs/libxfs/xfs_alloc.c +++ b/fs/xfs/libxfs/xfs_alloc.c @@ -1584,6 +1584,10 @@ xfs_alloc_ag_vextent_small(  				bp = xfs_btree_get_bufs(args->mp, args->tp,  					args->agno, fbno, 0); +				if (!bp) { +					error = -EFSCORRUPTED; +					goto error0; +				}  				xfs_trans_binval(args->tp, bp);  			}  			args->len = 1; @@ -2141,6 +2145,10 @@ xfs_alloc_fix_freelist(  		if (error)  			goto out_agbp_relse;  		bp = xfs_btree_get_bufs(mp, tp, args->agno, bno, 0); +		if (!bp) { +			error = -EFSCORRUPTED; +			goto out_agbp_relse; +		}  		xfs_trans_binval(tp, bp);  	} | 

