diff options
Diffstat (limited to 'fs/xfs/xfs_bmap_btree.c')
-rw-r--r-- | fs/xfs/xfs_bmap_btree.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/fs/xfs/xfs_bmap_btree.c b/fs/xfs/xfs_bmap_btree.c index 3fc09cd8d517..1140cef4ba99 100644 --- a/fs/xfs/xfs_bmap_btree.c +++ b/fs/xfs/xfs_bmap_btree.c | |||
@@ -1509,7 +1509,9 @@ xfs_bmbt_split( | |||
1509 | * block allocation here and corrupt the filesystem. | 1509 | * block allocation here and corrupt the filesystem. |
1510 | */ | 1510 | */ |
1511 | args.minleft = xfs_trans_get_block_res(args.tp); | 1511 | args.minleft = xfs_trans_get_block_res(args.tp); |
1512 | } else | 1512 | } else if (cur->bc_private.b.flist->xbf_low) |
1513 | args.type = XFS_ALLOCTYPE_START_BNO; | ||
1514 | else | ||
1513 | args.type = XFS_ALLOCTYPE_NEAR_BNO; | 1515 | args.type = XFS_ALLOCTYPE_NEAR_BNO; |
1514 | args.mod = args.alignment = args.total = args.isfl = | 1516 | args.mod = args.alignment = args.total = args.isfl = |
1515 | args.userdata = args.minalignslop = 0; | 1517 | args.userdata = args.minalignslop = 0; |
@@ -2237,7 +2239,9 @@ xfs_bmbt_newroot( | |||
2237 | #endif | 2239 | #endif |
2238 | args.fsbno = be64_to_cpu(*pp); | 2240 | args.fsbno = be64_to_cpu(*pp); |
2239 | args.type = XFS_ALLOCTYPE_START_BNO; | 2241 | args.type = XFS_ALLOCTYPE_START_BNO; |
2240 | } else | 2242 | } else if (cur->bc_private.b.flist->xbf_low) |
2243 | args.type = XFS_ALLOCTYPE_START_BNO; | ||
2244 | else | ||
2241 | args.type = XFS_ALLOCTYPE_NEAR_BNO; | 2245 | args.type = XFS_ALLOCTYPE_NEAR_BNO; |
2242 | if ((error = xfs_alloc_vextent(&args))) { | 2246 | if ((error = xfs_alloc_vextent(&args))) { |
2243 | XFS_BMBT_TRACE_CURSOR(cur, ERROR); | 2247 | XFS_BMBT_TRACE_CURSOR(cur, ERROR); |