btrfs: using cached extent_state in set/unlock combinations
In several places the sequence (set_extent_uptodate, unlock_extent) is used. This leads to a duplicate lookup of the extent state. This patch lets set_extent_uptodate return a cached extent_state which can be passed to unlock_extent_cached. The occurences of the above sequences are updated to use the cache. Only end_bio_extent_readpage is updated that it first gets a cached state to pass it to the readpage_end_io_hook as the prototype requested and is later on being used for set/unlock. Signed-off-by: Arne Jansen <sensille@gmx.net> Signed-off-by: Chris Mason <chris.mason@oracle.com>
This commit is contained in:
@@ -5226,7 +5226,7 @@ again:
|
||||
btrfs_mark_buffer_dirty(leaf);
|
||||
}
|
||||
set_extent_uptodate(io_tree, em->start,
|
||||
extent_map_end(em) - 1, GFP_NOFS);
|
||||
extent_map_end(em) - 1, NULL, GFP_NOFS);
|
||||
goto insert;
|
||||
} else {
|
||||
printk(KERN_ERR "btrfs unknown found_type %d\n", found_type);
|
||||
|
Reference in New Issue
Block a user