diff options
author | Darrick J. Wong <darrick.wong@oracle.com> | 2016-08-02 22:17:11 -0400 |
---|---|---|
committer | Dave Chinner <david@fromorbit.com> | 2016-08-02 22:17:11 -0400 |
commit | a650e8f98e5d9df8a5866d73aa9a796601f1abfc (patch) | |
tree | 531ccf8e01f2ee3163d9f75ab215355cb3bdcd65 | |
parent | 5d650e90a101557a7a652989c6d5eb657ae2476b (diff) |
xfs: add rmap btree block detection to log recovery
Originally-From: Dave Chinner <dchinner@redhat.com>
So such blocks can be correctly identified and have their operations
structures attached to validate recovery has not resulted in a
correct block.
Signed-off-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Brian Foster <bfoster@redhat.com>
Signed-off-by: Dave Chinner <david@fromorbit.com>
-rw-r--r-- | fs/xfs/xfs_log_recover.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/fs/xfs/xfs_log_recover.c b/fs/xfs/xfs_log_recover.c index 365aef655edb..e51fd2bdacb6 100644 --- a/fs/xfs/xfs_log_recover.c +++ b/fs/xfs/xfs_log_recover.c | |||
@@ -2231,6 +2231,7 @@ xlog_recover_get_buf_lsn( | |||
2231 | case XFS_ABTC_CRC_MAGIC: | 2231 | case XFS_ABTC_CRC_MAGIC: |
2232 | case XFS_ABTB_MAGIC: | 2232 | case XFS_ABTB_MAGIC: |
2233 | case XFS_ABTC_MAGIC: | 2233 | case XFS_ABTC_MAGIC: |
2234 | case XFS_RMAP_CRC_MAGIC: | ||
2234 | case XFS_IBT_CRC_MAGIC: | 2235 | case XFS_IBT_CRC_MAGIC: |
2235 | case XFS_IBT_MAGIC: { | 2236 | case XFS_IBT_MAGIC: { |
2236 | struct xfs_btree_block *btb = blk; | 2237 | struct xfs_btree_block *btb = blk; |
@@ -2399,6 +2400,9 @@ xlog_recover_validate_buf_type( | |||
2399 | case XFS_BMAP_MAGIC: | 2400 | case XFS_BMAP_MAGIC: |
2400 | bp->b_ops = &xfs_bmbt_buf_ops; | 2401 | bp->b_ops = &xfs_bmbt_buf_ops; |
2401 | break; | 2402 | break; |
2403 | case XFS_RMAP_CRC_MAGIC: | ||
2404 | bp->b_ops = &xfs_rmapbt_buf_ops; | ||
2405 | break; | ||
2402 | default: | 2406 | default: |
2403 | xfs_warn(mp, "Bad btree block magic!"); | 2407 | xfs_warn(mp, "Bad btree block magic!"); |
2404 | ASSERT(0); | 2408 | ASSERT(0); |