summaryrefslogtreecommitdiffstats
path: root/fs/btrfs/extent_io.h
diff options
context:
space:
mode:
authorMiao Xie <miaox@cn.fujitsu.com>2014-09-12 18:44:00 +0800
committerChris Mason <clm@fb.com>2014-09-17 13:38:58 -0700
commitffdd2018dd0bbfc0d9855ed811dba67201766a2d (patch)
tree2a1784606d21d72d54abd3baa04f2c8a1131a4a1 /fs/btrfs/extent_io.h
parent2fe6303e7cd099334cdb09370cece6bc168de131 (diff)
downloadlinux-0-day-ffdd2018dd0bbfc0d9855ed811dba67201766a2d.tar.gz
linux-0-day-ffdd2018dd0bbfc0d9855ed811dba67201766a2d.tar.xz
Btrfs: modify repair_io_failure and make it suit direct io
The original code of repair_io_failure was just used for buffered read, because it got some filesystem data from page structure, it is safe for the page in the page cache. But when we do a direct read, the pages in bio are not in the page cache, that is there is no filesystem data in the page structure. In order to implement direct read data repair, we need modify repair_io_failure and pass all filesystem data it need by function parameters. Signed-off-by: Miao Xie <miaox@cn.fujitsu.com> Signed-off-by: Chris Mason <clm@fb.com>
Diffstat (limited to 'fs/btrfs/extent_io.h')
-rw-r--r--fs/btrfs/extent_io.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/btrfs/extent_io.h b/fs/btrfs/extent_io.h
index 75b621b7cd9fa..a82ecbc2b8426 100644
--- a/fs/btrfs/extent_io.h
+++ b/fs/btrfs/extent_io.h
@@ -340,7 +340,7 @@ struct btrfs_fs_info;
int repair_io_failure(struct btrfs_fs_info *fs_info, u64 start,
u64 length, u64 logical, struct page *page,
- int mirror_num);
+ unsigned int pg_offset, int mirror_num);
int end_extent_writepage(struct page *page, int err, u64 start, u64 end);
int repair_eb_io_failure(struct btrfs_root *root, struct extent_buffer *eb,
int mirror_num);