summaryrefslogtreecommitdiff
path: root/fs/xfs/libxfs
diff options
context:
space:
mode:
authorBrian Foster <bfoster@redhat.com>2016-01-04 15:55:10 +1100
committerDave Chinner <david@fromorbit.com>2016-01-04 15:55:10 +1100
commitd7f37692e38798797d415153bc186afb2bbac645 (patch)
treebf5ec274e20b3aacee19bb29871741c2d8fd69c1 /fs/xfs/libxfs
parentb94fb2d1780d7cd9d55b21e2bb879a54ed3074cc (diff)
xfs: return start block of first bad log record during recovery
Each log recovery pass walks from the tail block to the head block and processes records appropriately based on the associated log pass type. There are various failure conditions that can occur through this sequence, such as I/O errors, CRC errors, etc. Log torn write detection will perform CRC verification near the head of the log to detect torn writes and trim torn records from the log appropriately. As it is, xlog_do_recovery_pass() only returns an error code in the event of CRC failure, which isn't enough information to trim the head of the log. Update xlog_do_recovery_pass() to optionally return the start block of the associated record when an error occurs. This patch contains no functional changes. Signed-off-by: Brian Foster <bfoster@redhat.com> Reviewed-by: Dave Chinner <dchinner@redhat.com> Signed-off-by: Dave Chinner <david@fromorbit.com>
Diffstat (limited to 'fs/xfs/libxfs')
0 files changed, 0 insertions, 0 deletions