| From foo@baz Mon Apr 9 17:09:24 CEST 2018 |
| From: Colin Ian King <colin.king@canonical.com> |
| Date: Tue, 9 May 2017 18:14:01 +0100 |
| Subject: btrfs: fix incorrect error return ret being passed to mapping_set_error |
| |
| From: Colin Ian King <colin.king@canonical.com> |
| |
| |
| [ Upstream commit bff5baf8aa37a97293725a16c03f49872249c07e ] |
| |
| The setting of return code ret should be based on the error code |
| passed into function end_extent_writepage and not on ret. Thanks |
| to Liu Bo for spotting this mistake in the original fix I submitted. |
| |
| Detected by CoverityScan, CID#1414312 ("Logically dead code") |
| |
| Fixes: 5dca6eea91653e ("Btrfs: mark mapping with error flag to report errors to userspace") |
| Signed-off-by: Colin Ian King <colin.king@canonical.com> |
| Reviewed-by: Liu Bo <bo.li.liu@oracle.com> |
| Signed-off-by: David Sterba <dsterba@suse.com> |
| Signed-off-by: Sasha Levin <alexander.levin@microsoft.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| fs/btrfs/extent_io.c | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| --- a/fs/btrfs/extent_io.c |
| +++ b/fs/btrfs/extent_io.c |
| @@ -2453,7 +2453,7 @@ void end_extent_writepage(struct page *p |
| if (!uptodate) { |
| ClearPageUptodate(page); |
| SetPageError(page); |
| - ret = ret < 0 ? ret : -EIO; |
| + ret = err < 0 ? err : -EIO; |
| mapping_set_error(page->mapping, ret); |
| } |
| } |