Lines Matching refs:failrec
7730 struct io_failure_record *failrec, in btrfs_check_dio_repairable() argument
7736 num_copies = btrfs_num_copies(fs_info, failrec->logical, failrec->len); in btrfs_check_dio_repairable()
7745 num_copies, failrec->this_mirror, failed_mirror); in btrfs_check_dio_repairable()
7749 failrec->failed_mirror = failed_mirror; in btrfs_check_dio_repairable()
7750 failrec->this_mirror++; in btrfs_check_dio_repairable()
7751 if (failrec->this_mirror == failed_mirror) in btrfs_check_dio_repairable()
7752 failrec->this_mirror++; in btrfs_check_dio_repairable()
7754 if (failrec->this_mirror > num_copies) { in btrfs_check_dio_repairable()
7757 num_copies, failrec->this_mirror, failed_mirror); in btrfs_check_dio_repairable()
7769 struct io_failure_record *failrec; in dio_read_error() local
7782 ret = btrfs_get_io_failure_record(inode, start, end, &failrec); in dio_read_error()
7786 ret = btrfs_check_dio_repairable(inode, failed_bio, failrec, in dio_read_error()
7789 free_io_failure(failure_tree, io_tree, failrec); in dio_read_error()
7801 bio = btrfs_create_repair_bio(inode, failed_bio, failrec, page, in dio_read_error()
7807 read_mode, failrec->this_mirror, failrec->in_validation); in dio_read_error()
7809 status = submit_dio_repair_bio(inode, bio, failrec->this_mirror); in dio_read_error()
7811 free_io_failure(failure_tree, io_tree, failrec); in dio_read_error()