| From foo@baz Mon Apr 9 17:09:24 CEST 2018 |
| From: Dan Carpenter <dan.carpenter@oracle.com> |
| Date: Sat, 20 May 2017 00:31:12 +0300 |
| Subject: pNFS/flexfiles: missing error code in ff_layout_alloc_lseg() |
| |
| From: Dan Carpenter <dan.carpenter@oracle.com> |
| |
| |
| [ Upstream commit 662f9a105b4322b8559d448f86110e6ec24b8738 ] |
| |
| If xdr_inline_decode() fails then we end up returning ERR_PTR(0). The |
| caller treats NULL returns as -ENOMEM so it doesn't really hurt runtime, |
| but obviously we intended to set an error code here. |
| |
| Fixes: d67ae825a59d ("pnfs/flexfiles: Add the FlexFile Layout Driver") |
| Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> |
| Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com> |
| Signed-off-by: Sasha Levin <alexander.levin@microsoft.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| fs/nfs/flexfilelayout/flexfilelayout.c | 1 + |
| 1 file changed, 1 insertion(+) |
| |
| --- a/fs/nfs/flexfilelayout/flexfilelayout.c |
| +++ b/fs/nfs/flexfilelayout/flexfilelayout.c |
| @@ -475,6 +475,7 @@ ff_layout_alloc_lseg(struct pnfs_layout_ |
| goto out_err_free; |
| |
| /* fh */ |
| + rc = -EIO; |
| p = xdr_inline_decode(&stream, 4); |
| if (!p) |
| goto out_err_free; |