|
@@ -1224,6 +1224,7 @@ xfs_da3_node_toosmall(
|
|
/* start with smaller blk num */
|
|
/* start with smaller blk num */
|
|
forward = nodehdr.forw < nodehdr.back;
|
|
forward = nodehdr.forw < nodehdr.back;
|
|
for (i = 0; i < 2; forward = !forward, i++) {
|
|
for (i = 0; i < 2; forward = !forward, i++) {
|
|
|
|
+ struct xfs_da3_icnode_hdr thdr;
|
|
if (forward)
|
|
if (forward)
|
|
blkno = nodehdr.forw;
|
|
blkno = nodehdr.forw;
|
|
else
|
|
else
|
|
@@ -1236,10 +1237,10 @@ xfs_da3_node_toosmall(
|
|
return(error);
|
|
return(error);
|
|
|
|
|
|
node = bp->b_addr;
|
|
node = bp->b_addr;
|
|
- xfs_da3_node_hdr_from_disk(&nodehdr, node);
|
|
|
|
|
|
+ xfs_da3_node_hdr_from_disk(&thdr, node);
|
|
xfs_trans_brelse(state->args->trans, bp);
|
|
xfs_trans_brelse(state->args->trans, bp);
|
|
|
|
|
|
- if (count - nodehdr.count >= 0)
|
|
|
|
|
|
+ if (count - thdr.count >= 0)
|
|
break; /* fits with at least 25% to spare */
|
|
break; /* fits with at least 25% to spare */
|
|
}
|
|
}
|
|
if (i >= 2) {
|
|
if (i >= 2) {
|