Commit 7ab7956e authored by Nikolay Borisov's avatar Nikolay Borisov Committed by David Sterba

btrfs: make btrfs_free_io_failure_record take btrfs_inode

Signed-off-by: default avatarNikolay Borisov <nborisov@suse.com>
Signed-off-by: default avatarDavid Sterba <dsterba@suse.com>
parent b30cb441
...@@ -2152,9 +2152,9 @@ int clean_io_failure(struct btrfs_inode *inode, u64 start, struct page *page, ...@@ -2152,9 +2152,9 @@ int clean_io_failure(struct btrfs_inode *inode, u64 start, struct page *page,
* - under ordered extent * - under ordered extent
* - the inode is freeing * - the inode is freeing
*/ */
void btrfs_free_io_failure_record(struct inode *inode, u64 start, u64 end) void btrfs_free_io_failure_record(struct btrfs_inode *inode, u64 start, u64 end)
{ {
struct extent_io_tree *failure_tree = &BTRFS_I(inode)->io_failure_tree; struct extent_io_tree *failure_tree = &inode->io_failure_tree;
struct io_failure_record *failrec; struct io_failure_record *failrec;
struct extent_state *state, *next; struct extent_state *state, *next;
......
...@@ -482,7 +482,8 @@ struct io_failure_record { ...@@ -482,7 +482,8 @@ struct io_failure_record {
}; };
void btrfs_free_io_failure_record(struct inode *inode, u64 start, u64 end); void btrfs_free_io_failure_record(struct btrfs_inode *inode, u64 start,
u64 end);
int btrfs_get_io_failure_record(struct inode *inode, u64 start, u64 end, int btrfs_get_io_failure_record(struct inode *inode, u64 start, u64 end,
struct io_failure_record **failrec_ret); struct io_failure_record **failrec_ret);
int btrfs_check_repairable(struct inode *inode, struct bio *failed_bio, int btrfs_check_repairable(struct inode *inode, struct bio *failed_bio,
......
...@@ -2803,9 +2803,10 @@ static int btrfs_finish_ordered_io(struct btrfs_ordered_extent *ordered_extent) ...@@ -2803,9 +2803,10 @@ static int btrfs_finish_ordered_io(struct btrfs_ordered_extent *ordered_extent)
goto out; goto out;
} }
btrfs_free_io_failure_record(inode, ordered_extent->file_offset, btrfs_free_io_failure_record(BTRFS_I(inode),
ordered_extent->file_offset + ordered_extent->file_offset,
ordered_extent->len - 1); ordered_extent->file_offset +
ordered_extent->len - 1);
if (test_bit(BTRFS_ORDERED_TRUNCATED, &ordered_extent->flags)) { if (test_bit(BTRFS_ORDERED_TRUNCATED, &ordered_extent->flags)) {
truncated = true; truncated = true;
...@@ -5196,7 +5197,7 @@ void btrfs_evict_inode(struct inode *inode) ...@@ -5196,7 +5197,7 @@ void btrfs_evict_inode(struct inode *inode)
if (!special_file(inode->i_mode)) if (!special_file(inode->i_mode))
btrfs_wait_ordered_range(inode, 0, (u64)-1); btrfs_wait_ordered_range(inode, 0, (u64)-1);
btrfs_free_io_failure_record(inode, 0, (u64)-1); btrfs_free_io_failure_record(BTRFS_I(inode), 0, (u64)-1);
if (test_bit(BTRFS_FS_LOG_RECOVERING, &fs_info->flags)) { if (test_bit(BTRFS_FS_LOG_RECOVERING, &fs_info->flags)) {
BUG_ON(test_bit(BTRFS_INODE_HAS_ORPHAN_ITEM, BUG_ON(test_bit(BTRFS_INODE_HAS_ORPHAN_ITEM,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment