diff options
-rw-r--r-- | fs/xfs/xfs_dir2_block.c | 14 | ||||
-rw-r--r-- | fs/xfs/xfs_dir2_data.c | 7 | ||||
-rw-r--r-- | fs/xfs/xfs_dir2_data.h | 2 | ||||
-rw-r--r-- | fs/xfs/xfs_dir2_leaf.c | 7 | ||||
-rw-r--r-- | fs/xfs/xfs_dir2_node.c | 4 |
5 files changed, 13 insertions, 21 deletions
diff --git a/fs/xfs/xfs_dir2_block.c b/fs/xfs/xfs_dir2_block.c index 9d7438bba30d..3accc1dcd6c9 100644 --- a/fs/xfs/xfs_dir2_block.c +++ b/fs/xfs/xfs_dir2_block.c | |||
@@ -282,8 +282,7 @@ xfs_dir2_block_addname( | |||
282 | * This needs to happen before the next call to use_free. | 282 | * This needs to happen before the next call to use_free. |
283 | */ | 283 | */ |
284 | if (needscan) { | 284 | if (needscan) { |
285 | xfs_dir2_data_freescan(mp, (xfs_dir2_data_t *)block, | 285 | xfs_dir2_data_freescan(mp, (xfs_dir2_data_t *)block, &needlog); |
286 | &needlog, NULL); | ||
287 | needscan = 0; | 286 | needscan = 0; |
288 | } | 287 | } |
289 | } | 288 | } |
@@ -333,7 +332,7 @@ xfs_dir2_block_addname( | |||
333 | */ | 332 | */ |
334 | if (needscan) { | 333 | if (needscan) { |
335 | xfs_dir2_data_freescan(mp, (xfs_dir2_data_t *)block, | 334 | xfs_dir2_data_freescan(mp, (xfs_dir2_data_t *)block, |
336 | &needlog, NULL); | 335 | &needlog); |
337 | needscan = 0; | 336 | needscan = 0; |
338 | } | 337 | } |
339 | /* | 338 | /* |
@@ -418,8 +417,7 @@ xfs_dir2_block_addname( | |||
418 | * Clean up the bestfree array and log the header, tail, and entry. | 417 | * Clean up the bestfree array and log the header, tail, and entry. |
419 | */ | 418 | */ |
420 | if (needscan) | 419 | if (needscan) |
421 | xfs_dir2_data_freescan(mp, (xfs_dir2_data_t *)block, &needlog, | 420 | xfs_dir2_data_freescan(mp, (xfs_dir2_data_t *)block, &needlog); |
422 | NULL); | ||
423 | if (needlog) | 421 | if (needlog) |
424 | xfs_dir2_data_log_header(tp, bp); | 422 | xfs_dir2_data_log_header(tp, bp); |
425 | xfs_dir2_block_log_tail(tp, bp); | 423 | xfs_dir2_block_log_tail(tp, bp); |
@@ -798,8 +796,7 @@ xfs_dir2_block_removename( | |||
798 | * Fix up bestfree, log the header if necessary. | 796 | * Fix up bestfree, log the header if necessary. |
799 | */ | 797 | */ |
800 | if (needscan) | 798 | if (needscan) |
801 | xfs_dir2_data_freescan(mp, (xfs_dir2_data_t *)block, &needlog, | 799 | xfs_dir2_data_freescan(mp, (xfs_dir2_data_t *)block, &needlog); |
802 | NULL); | ||
803 | if (needlog) | 800 | if (needlog) |
804 | xfs_dir2_data_log_header(tp, bp); | 801 | xfs_dir2_data_log_header(tp, bp); |
805 | xfs_dir2_data_check(dp, bp); | 802 | xfs_dir2_data_check(dp, bp); |
@@ -996,8 +993,7 @@ xfs_dir2_leaf_to_block( | |||
996 | * Scan the bestfree if we need it and log the data block header. | 993 | * Scan the bestfree if we need it and log the data block header. |
997 | */ | 994 | */ |
998 | if (needscan) | 995 | if (needscan) |
999 | xfs_dir2_data_freescan(mp, (xfs_dir2_data_t *)block, &needlog, | 996 | xfs_dir2_data_freescan(mp, (xfs_dir2_data_t *)block, &needlog); |
1000 | NULL); | ||
1001 | if (needlog) | 997 | if (needlog) |
1002 | xfs_dir2_data_log_header(tp, dbp); | 998 | xfs_dir2_data_log_header(tp, dbp); |
1003 | /* | 999 | /* |
diff --git a/fs/xfs/xfs_dir2_data.c b/fs/xfs/xfs_dir2_data.c index f7c799217072..c211c37ef67c 100644 --- a/fs/xfs/xfs_dir2_data.c +++ b/fs/xfs/xfs_dir2_data.c | |||
@@ -324,8 +324,7 @@ void | |||
324 | xfs_dir2_data_freescan( | 324 | xfs_dir2_data_freescan( |
325 | xfs_mount_t *mp, /* filesystem mount point */ | 325 | xfs_mount_t *mp, /* filesystem mount point */ |
326 | xfs_dir2_data_t *d, /* data block pointer */ | 326 | xfs_dir2_data_t *d, /* data block pointer */ |
327 | int *loghead, /* out: log data header */ | 327 | int *loghead) /* out: log data header */ |
328 | char *aendp) /* in: caller's endp */ | ||
329 | { | 328 | { |
330 | xfs_dir2_block_tail_t *btp; /* block tail */ | 329 | xfs_dir2_block_tail_t *btp; /* block tail */ |
331 | xfs_dir2_data_entry_t *dep; /* active data entry */ | 330 | xfs_dir2_data_entry_t *dep; /* active data entry */ |
@@ -346,9 +345,7 @@ xfs_dir2_data_freescan( | |||
346 | * Set up pointers. | 345 | * Set up pointers. |
347 | */ | 346 | */ |
348 | p = (char *)d->u; | 347 | p = (char *)d->u; |
349 | if (aendp) | 348 | if (be32_to_cpu(d->hdr.magic) == XFS_DIR2_BLOCK_MAGIC) { |
350 | endp = aendp; | ||
351 | else if (be32_to_cpu(d->hdr.magic) == XFS_DIR2_BLOCK_MAGIC) { | ||
352 | btp = XFS_DIR2_BLOCK_TAIL_P(mp, (xfs_dir2_block_t *)d); | 349 | btp = XFS_DIR2_BLOCK_TAIL_P(mp, (xfs_dir2_block_t *)d); |
353 | endp = (char *)XFS_DIR2_BLOCK_LEAF_P(btp); | 350 | endp = (char *)XFS_DIR2_BLOCK_LEAF_P(btp); |
354 | } else | 351 | } else |
diff --git a/fs/xfs/xfs_dir2_data.h b/fs/xfs/xfs_dir2_data.h index a6ae2d21c40a..c94c9099cfb1 100644 --- a/fs/xfs/xfs_dir2_data.h +++ b/fs/xfs/xfs_dir2_data.h | |||
@@ -166,7 +166,7 @@ extern xfs_dir2_data_free_t *xfs_dir2_data_freefind(xfs_dir2_data_t *d, | |||
166 | extern xfs_dir2_data_free_t *xfs_dir2_data_freeinsert(xfs_dir2_data_t *d, | 166 | extern xfs_dir2_data_free_t *xfs_dir2_data_freeinsert(xfs_dir2_data_t *d, |
167 | xfs_dir2_data_unused_t *dup, int *loghead); | 167 | xfs_dir2_data_unused_t *dup, int *loghead); |
168 | extern void xfs_dir2_data_freescan(struct xfs_mount *mp, xfs_dir2_data_t *d, | 168 | extern void xfs_dir2_data_freescan(struct xfs_mount *mp, xfs_dir2_data_t *d, |
169 | int *loghead, char *aendp); | 169 | int *loghead); |
170 | extern int xfs_dir2_data_init(struct xfs_da_args *args, xfs_dir2_db_t blkno, | 170 | extern int xfs_dir2_data_init(struct xfs_da_args *args, xfs_dir2_db_t blkno, |
171 | struct xfs_dabuf **bpp); | 171 | struct xfs_dabuf **bpp); |
172 | extern void xfs_dir2_data_log_entry(struct xfs_trans *tp, struct xfs_dabuf *bp, | 172 | extern void xfs_dir2_data_log_entry(struct xfs_trans *tp, struct xfs_dabuf *bp, |
diff --git a/fs/xfs/xfs_dir2_leaf.c b/fs/xfs/xfs_dir2_leaf.c index b1cf1fbf423d..db14ea71459f 100644 --- a/fs/xfs/xfs_dir2_leaf.c +++ b/fs/xfs/xfs_dir2_leaf.c | |||
@@ -133,8 +133,7 @@ xfs_dir2_block_to_leaf( | |||
133 | */ | 133 | */ |
134 | block->hdr.magic = cpu_to_be32(XFS_DIR2_DATA_MAGIC); | 134 | block->hdr.magic = cpu_to_be32(XFS_DIR2_DATA_MAGIC); |
135 | if (needscan) | 135 | if (needscan) |
136 | xfs_dir2_data_freescan(mp, (xfs_dir2_data_t *)block, &needlog, | 136 | xfs_dir2_data_freescan(mp, (xfs_dir2_data_t *)block, &needlog); |
137 | NULL); | ||
138 | /* | 137 | /* |
139 | * Set up leaf tail and bests table. | 138 | * Set up leaf tail and bests table. |
140 | */ | 139 | */ |
@@ -414,7 +413,7 @@ xfs_dir2_leaf_addname( | |||
414 | * Need to scan fix up the bestfree table. | 413 | * Need to scan fix up the bestfree table. |
415 | */ | 414 | */ |
416 | if (needscan) | 415 | if (needscan) |
417 | xfs_dir2_data_freescan(mp, data, &needlog, NULL); | 416 | xfs_dir2_data_freescan(mp, data, &needlog); |
418 | /* | 417 | /* |
419 | * Need to log the data block's header. | 418 | * Need to log the data block's header. |
420 | */ | 419 | */ |
@@ -1496,7 +1495,7 @@ xfs_dir2_leaf_removename( | |||
1496 | * log the data block header if necessary. | 1495 | * log the data block header if necessary. |
1497 | */ | 1496 | */ |
1498 | if (needscan) | 1497 | if (needscan) |
1499 | xfs_dir2_data_freescan(mp, data, &needlog, NULL); | 1498 | xfs_dir2_data_freescan(mp, data, &needlog); |
1500 | if (needlog) | 1499 | if (needlog) |
1501 | xfs_dir2_data_log_header(tp, dbp); | 1500 | xfs_dir2_data_log_header(tp, dbp); |
1502 | /* | 1501 | /* |
diff --git a/fs/xfs/xfs_dir2_node.c b/fs/xfs/xfs_dir2_node.c index 9ca71719b683..d083c3819934 100644 --- a/fs/xfs/xfs_dir2_node.c +++ b/fs/xfs/xfs_dir2_node.c | |||
@@ -904,7 +904,7 @@ xfs_dir2_leafn_remove( | |||
904 | * Log the data block header if needed. | 904 | * Log the data block header if needed. |
905 | */ | 905 | */ |
906 | if (needscan) | 906 | if (needscan) |
907 | xfs_dir2_data_freescan(mp, data, &needlog, NULL); | 907 | xfs_dir2_data_freescan(mp, data, &needlog); |
908 | if (needlog) | 908 | if (needlog) |
909 | xfs_dir2_data_log_header(tp, dbp); | 909 | xfs_dir2_data_log_header(tp, dbp); |
910 | xfs_dir2_data_check(dp, dbp); | 910 | xfs_dir2_data_check(dp, dbp); |
@@ -1705,7 +1705,7 @@ xfs_dir2_node_addname_int( | |||
1705 | * Rescan the block for bestfree if needed. | 1705 | * Rescan the block for bestfree if needed. |
1706 | */ | 1706 | */ |
1707 | if (needscan) | 1707 | if (needscan) |
1708 | xfs_dir2_data_freescan(mp, data, &needlog, NULL); | 1708 | xfs_dir2_data_freescan(mp, data, &needlog); |
1709 | /* | 1709 | /* |
1710 | * Log the data block header if needed. | 1710 | * Log the data block header if needed. |
1711 | */ | 1711 | */ |