]> git.baikalelectronics.ru Git - kernel.git/commit
Btrfs: modify repair_io_failure and make it suit direct io
authorMiao Xie <miaox@cn.fujitsu.com>
Fri, 12 Sep 2014 10:44:00 +0000 (18:44 +0800)
committerChris Mason <clm@fb.com>
Wed, 17 Sep 2014 20:38:58 +0000 (13:38 -0700)
commit3eb2074c654ca003e9392cf6a3267730bb749925
tree2a1784606d21d72d54abd3baa04f2c8a1131a4a1
parent2832e509235f93617838138f41d33b8aca3a09d4
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>
fs/btrfs/extent_io.c
fs/btrfs/extent_io.h
fs/btrfs/scrub.c