mirror of
https://github.com/torvalds/linux.git
synced 2026-05-25 15:41:52 +02:00
btrfs: simplify error return logic when getting folio at prepare_one_folio()
There's no need to have special logic to return -EAGAIN in case the call to __filemap_get_folio() fails, because when FGP_NOWAIT is passed to __filemap_get_folio() it returns ERR_PTR(-EAGAIN) if it needs to do something that would imply blocking. The reason we have this logic is from the days before we migrated to the folio interface, when we called pagecache_get_page() which would return NULL instead of an error pointer. So remove this special casing and always return the error that the call to __filemap_get_folio() returned. Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com> Reviewed-by: Qu Wenruo <wqu@suse.com> Signed-off-by: Filipe Manana <fdmanana@suse.com> Reviewed-by: David Sterba <dsterba@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
parent
443e4d0e1c
commit
0f2bc22150
|
|
@ -866,13 +866,9 @@ static noinline int prepare_one_folio(struct inode *inode, struct folio **folio_
|
|||
|
||||
again:
|
||||
folio = __filemap_get_folio(inode->i_mapping, index, fgp_flags, mask);
|
||||
if (IS_ERR(folio)) {
|
||||
if (nowait)
|
||||
ret = -EAGAIN;
|
||||
else
|
||||
ret = PTR_ERR(folio);
|
||||
return ret;
|
||||
}
|
||||
if (IS_ERR(folio))
|
||||
return PTR_ERR(folio);
|
||||
|
||||
ret = set_folio_extent_mapped(folio);
|
||||
if (ret < 0) {
|
||||
folio_unlock(folio);
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user