summaryrefslogtreecommitdiff
path: root/fs/nfs/flexfilelayout/flexfilelayout.c
diff options
context:
space:
mode:
authorTrond Myklebust <trond.myklebust@primarydata.com>2016-01-22 19:02:36 +0300
committerTrond Myklebust <trond.myklebust@primarydata.com>2016-01-22 19:02:36 +0300
commit6d45c042f35ea9b27bf946380f74ff75d32280c9 (patch)
tree065c108254a768aa12d145374b1b9f6f10591ac3 /fs/nfs/flexfilelayout/flexfilelayout.c
parent6272dcc6beebbc2d8cf4165b628169e878f143e0 (diff)
parent082fa37d1351a41afc491d44a1d095cb8d919aa2 (diff)
downloadlinux-6d45c042f35ea9b27bf946380f74ff75d32280c9.tar.xz
Merge branch 'bugfixes'
* bugfixes: pNFS/flexfiles: Fix an XDR encoding bug in layoutreturn pNFS/flexfiles: Improve merging of errors in LAYOUTRETURN
Diffstat (limited to 'fs/nfs/flexfilelayout/flexfilelayout.c')
-rw-r--r--fs/nfs/flexfilelayout/flexfilelayout.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/fs/nfs/flexfilelayout/flexfilelayout.c b/fs/nfs/flexfilelayout/flexfilelayout.c
index 6594e9f903a0..5bcd92d50e82 100644
--- a/fs/nfs/flexfilelayout/flexfilelayout.c
+++ b/fs/nfs/flexfilelayout/flexfilelayout.c
@@ -1948,11 +1948,9 @@ ff_layout_encode_layoutreturn(struct pnfs_layout_hdr *lo,
start = xdr_reserve_space(xdr, 4);
BUG_ON(!start);
- if (ff_layout_encode_ioerr(flo, xdr, args))
- goto out;
-
+ ff_layout_encode_ioerr(flo, xdr, args);
ff_layout_encode_iostats(flo, xdr, args);
-out:
+
*start = cpu_to_be32((xdr->p - start - 1) * 4);
dprintk("%s: Return\n", __func__);
}