On 01/23/14 04:23, Dave Chinner wrote:
From: Dave Chinner<dchinner@xxxxxxxxxx>
Write_buf/write_index use confusing boolean values for return,
meaning that it's hard to tell what the correct error return is
supposed to be. Convert them to return zero on success or a
negative errno otherwise so that it's clear what the error case is.
Signed-off-by: Dave Chinner<dchinner@xxxxxxxxxx>
---
Looks like this patch broke metadumps on some corrupted filesystems.
This is a legacy filesystem that has zeroes overwriting the SB/AGF/AGI
on AG 1/2/3:
# xfs_metadump -wgo /dev/sda8 myfile.metadata
xfs_agf_read_verify: XFS_CORRUPTION_ERROR
xfs_metadump: cannot init perag data (117). Continuing anyway.
Copied 64 of 64 inodes (0 of 4 AGs)
xfs_agf_write_verify: XF
S_CORRUPTION_ERROR
write_buf: write verifer failed on bno 0x1100919/0x200
(no output)
commit dd9093de944cd802427bd42953ad5ccc1d5fb875 before it:
# xfs_metadump -wgo /dev/sda8 myfile.metadata
xfs_agf_read_verify: XFS_CORRUPTION_ERROR
xfs_metadump: cannot init perag data (117). Continuing anyway.
Copied 64 of 64 inodes (0 of 4 AGs)
xfs_agf_write_verify: XF
S_CORRUPTION_ERROR
write_buf: write verifer failed on bno 0x1100919/0x200
Copying free space trees of AG 1
xfs_metadump: invalid block number (0) in bnobt root in agf 1
xfs_metadump: invalid block number (0) in cntbt root in agf 1
xfs_metadump: invalid block number (0) in inobt root in agi 1
Copying free space trees of AG 2
xfs_metadump: invalid block number (0) in bnobt root in agf 2
xfs_metadump: invalid block number (0) in cntbt root in agf 2
xfs_metadump: invalid block number (0) in inobt root in agi 2
Copying free space trees of AG 3
xfs_metadump: invalid block number (4294967295) in bnobt root in agf 3
xfs_metadump: invalid block number (4294967295) in cntbt root in agf 3
xfs_metadump: invalid block number (0) in inobt root in agi 3
Copying log
_______________________________________________
xfs mailing list
xfs@xxxxxxxxxxx
http://oss.sgi.com/mailman/listinfo/xfs