diff options
author | Chandan Rajendra <chandan@linux.vnet.ibm.com> | 2016-01-21 15:55:58 +0530 |
---|---|---|
committer | David Sterba <dsterba@suse.com> | 2016-02-01 19:24:29 +0100 |
commit | dbfdb6d1b369b88253af1cd71723437d152b0b50 (patch) | |
tree | 1823ea5a0d8c276886b41478234b91d800058aaa /fs/btrfs/extent_io.c | |
parent | d0b7da88f6409c740435712b092a8e2c7d2a8f74 (diff) | |
download | op-kernel-dev-dbfdb6d1b369b88253af1cd71723437d152b0b50.zip op-kernel-dev-dbfdb6d1b369b88253af1cd71723437d152b0b50.tar.gz |
Btrfs: Search for all ordered extents that could span across a page
In subpagesize-blocksize scenario it is not sufficient to search using the
first byte of the page to make sure that there are no ordered extents
present across the page. Fix this.
Signed-off-by: Chandan Rajendra <chandan@linux.vnet.ibm.com>
Signed-off-by: David Sterba <dsterba@suse.com>
Diffstat (limited to 'fs/btrfs/extent_io.c')
-rw-r--r-- | fs/btrfs/extent_io.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/btrfs/extent_io.c b/fs/btrfs/extent_io.c index 2e7c97a..1b20733 100644 --- a/fs/btrfs/extent_io.c +++ b/fs/btrfs/extent_io.c @@ -3186,7 +3186,8 @@ static int __extent_read_full_page(struct extent_io_tree *tree, while (1) { lock_extent(tree, start, end); - ordered = btrfs_lookup_ordered_extent(inode, start); + ordered = btrfs_lookup_ordered_range(inode, start, + PAGE_CACHE_SIZE); if (!ordered) break; unlock_extent(tree, start, end); |