|
@@ -2329,23 +2329,10 @@ static void end_bio_extent_readpage(struct bio *bio, int err)
|
|
|
if (uptodate && tree->ops && tree->ops->readpage_end_io_hook) {
|
|
|
ret = tree->ops->readpage_end_io_hook(page, start, end,
|
|
|
state, mirror);
|
|
|
- if (ret) {
|
|
|
- /* no IO indicated but software detected errors
|
|
|
- * in the block, either checksum errors or
|
|
|
- * issues with the contents */
|
|
|
- struct btrfs_root *root =
|
|
|
- BTRFS_I(page->mapping->host)->root;
|
|
|
- struct btrfs_device *device;
|
|
|
-
|
|
|
+ if (ret)
|
|
|
uptodate = 0;
|
|
|
- device = btrfs_find_device_for_logical(
|
|
|
- root, start, mirror);
|
|
|
- if (device)
|
|
|
- btrfs_dev_stat_inc_and_print(device,
|
|
|
- BTRFS_DEV_STAT_CORRUPTION_ERRS);
|
|
|
- } else {
|
|
|
+ else
|
|
|
clean_io_failure(start, page);
|
|
|
- }
|
|
|
}
|
|
|
|
|
|
if (!uptodate && tree->ops && tree->ops->readpage_io_failed_hook) {
|