linux/fs/btrfs
Omar Sandoval 77d5d68931 btrfs: unify buffered and direct I/O read repair
Currently, direct I/O has its own versions of bio_readpage_error() and
btrfs_check_repairable() (dio_read_error() and
btrfs_check_dio_repairable(), respectively). The main difference is that
the direct I/O version doesn't do read validation. The rework of direct
I/O repair makes it possible to do validation, so we can get rid of
btrfs_check_dio_repairable() and combine bio_readpage_error() and
dio_read_error() into a new helper, btrfs_submit_read_repair().

Reviewed-by: Josef Bacik <josef@toxicpanda.com>
Signed-off-by: Omar Sandoval <osandov@fb.com>
Signed-off-by: David Sterba <dsterba@suse.com>
2020-05-25 11:25:27 +02:00
..
tests btrfs: kill the subvol_srcu 2020-03-23 17:02:00 +01:00
acl.c
async-thread.c
async-thread.h
backref.c btrfs: backref: distinguish reloc and non-reloc use of indirect resolution 2020-05-25 11:25:22 +02:00
backref.h btrfs: reloc: move error handling of build_backref_tree() to backref.c 2020-05-25 11:25:21 +02:00
block-group.c btrfs: simplify error handling of clean_pinned_extents() 2020-05-25 11:25:24 +02:00
block-group.h
block-rsv.c btrfs: force chunk allocation if our global rsv is larger than metadata 2020-05-25 11:25:23 +02:00
block-rsv.h btrfs: Remove __ prefix from btrfs_block_rsv_release 2020-03-23 17:01:55 +01:00
btrfs_inode.h btrfs: get rid of one layer of bios in direct I/O 2020-05-25 11:25:26 +02:00
check-integrity.c
check-integrity.h
compression.c
compression.h
ctree.c btrfs: remove the redundant parameter level in btrfs_bin_search() 2020-05-25 11:25:24 +02:00
ctree.h btrfs: get rid of endio_repair_workers 2020-05-25 11:25:27 +02:00
delalloc-space.c btrfs: Remove __ prefix from btrfs_block_rsv_release 2020-03-23 17:01:55 +01:00
delalloc-space.h
delayed-inode.c btrfs: use nofs allocations for running delayed items 2020-03-25 16:26:00 +01:00
delayed-inode.h btrfs: delayed-inode: Replace zero-length array with flexible-array member 2020-03-23 17:01:53 +01:00
delayed-ref.c btrfs: Remove __ prefix from btrfs_block_rsv_release 2020-03-23 17:01:55 +01:00
delayed-ref.h
dev-replace.c
dev-replace.h
dir-item.c
discard.c
discard.h btrfs: discard: Use the correct style for SPDX License Identifier 2020-04-20 17:43:42 +02:00
disk-io.c btrfs: get rid of endio_repair_workers 2020-05-25 11:25:27 +02:00
disk-io.h btrfs: get rid of endio_repair_workers 2020-05-25 11:25:27 +02:00
export.c btrfs: kill the subvol_srcu 2020-03-23 17:02:00 +01:00
export.h
extent-io-tree.h
extent-tree.c btrfs: don't force read-only after error in drop snapshot 2020-05-25 11:25:23 +02:00
extent_io.c btrfs: unify buffered and direct I/O read repair 2020-05-25 11:25:27 +02:00
extent_io.h btrfs: unify buffered and direct I/O read repair 2020-05-25 11:25:27 +02:00
extent_map.c
extent_map.h
file-item.c btrfs: clarify btrfs_lookup_bio_sums documentation 2020-05-25 11:25:25 +02:00
file.c btrfs: make full fsyncs always operate on the entire file again 2020-04-08 19:10:52 +02:00
free-space-cache.c
free-space-cache.h
free-space-tree.c btrfs: move the root freeing stuff into btrfs_put_root 2020-03-23 17:01:59 +01:00
free-space-tree.h
inode-item.c
inode-map.c btrfs: Remove __ prefix from btrfs_block_rsv_release 2020-03-23 17:01:55 +01:00
inode-map.h
inode.c btrfs: unify buffered and direct I/O read repair 2020-05-25 11:25:27 +02:00
ioctl.c btrfs: Remove async_transid from btrfs_mksubvol/create_subvol/create_snapshot 2020-03-23 17:02:00 +01:00
Kconfig
locking.c btrfs: add missing annotation for btrfs_tree_lock() 2020-05-25 11:25:16 +02:00
locking.h
lzo.c
Makefile Btrfs: move all reflink implementation code into its own file 2020-03-23 17:01:54 +01:00
misc.h btrfs: rename tree_entry to rb_simple_node and export it 2020-05-25 11:25:19 +02:00
ordered-data.c
ordered-data.h
orphan.c
print-tree.c
print-tree.h
props.c btrfs: Remove __ prefix from btrfs_block_rsv_release 2020-03-23 17:01:55 +01:00
props.h
qgroup.c btrfs: move the root freeing stuff into btrfs_put_root 2020-03-23 17:01:59 +01:00
qgroup.h
raid56.c
raid56.h
rcu-string.h btrfs: rcu-string: Replace zero-length array with flexible-array member 2020-03-23 17:01:53 +01:00
reada.c
ref-verify.c btrfs: fix ref-verify to catch operations on 0 ref extents 2020-03-23 17:01:56 +01:00
ref-verify.h
reflink.c btrfs: fix lost i_size update after cloning inline extent 2020-04-08 19:10:34 +02:00
reflink.h Btrfs: move all reflink implementation code into its own file 2020-03-23 17:01:54 +01:00
relocation.c btrfs: remove the redundant parameter level in btrfs_bin_search() 2020-05-25 11:25:24 +02:00
root-tree.c btrfs: Remove __ prefix from btrfs_block_rsv_release 2020-03-23 17:01:55 +01:00
scrub.c btrfs: scrub: Replace zero-length array with flexible-array member 2020-03-23 17:01:54 +01:00
send.c btrfs: kill the subvol_srcu 2020-03-23 17:02:00 +01:00
send.h
space-info.c btrfs: remove pointless assertion on reclaim_size counter 2020-05-25 11:25:23 +02:00
space-info.h btrfs: improve global reserve stealing logic 2020-05-25 11:25:22 +02:00
struct-funcs.c
super.c
sysfs.c btrfs: sysfs: Use scnprintf() instead of snprintf() 2020-03-23 18:14:47 +01:00
sysfs.h
transaction.c btrfs: force chunk allocation if our global rsv is larger than metadata 2020-05-25 11:25:23 +02:00
transaction.h btrfs: improve global reserve stealing logic 2020-05-25 11:25:22 +02:00
tree-checker.c btrfs: tree-checker: remove duplicate definition of 'inode_item_err' 2020-05-25 11:25:23 +02:00
tree-checker.h
tree-defrag.c
tree-log.c btrfs: remove the redundant parameter level in btrfs_bin_search() 2020-05-25 11:25:24 +02:00
tree-log.h
ulist.c
ulist.h
uuid-tree.c
volumes.c btrfs: make btrfs_read_disk_super return struct btrfs_disk_super 2020-05-25 11:25:24 +02:00
volumes.h
xattr.c
xattr.h
zlib.c
zstd.c