]> git.ipfire.org Git - people/pmueller/ipfire-2.x.git/blob - src/patches/suse-2.6.27.25/patches.fixes/nfs-fix-nfs3_xdr_setaclargs
Updated xen patches taken from suse.
[people/pmueller/ipfire-2.x.git] / src / patches / suse-2.6.27.25 / patches.fixes / nfs-fix-nfs3_xdr_setaclargs
1 From: Trond Myklebust <Trond.Myklebust@netapp.com>
2 Subject: NFS: Fix the XDR iovec calculation in nfs3_xdr_setaclargs
3 References: 465854
4 Patch-mainline: Queued-up
5
6 Commit ae46141ff08f1965b17c531b571953c39ce8b9e2 (NFSv3: Fix posix ACL code)
7 introduces a bug in the calculation of the XDR header iovec. In the case
8 where we are inlining the acls, we need to adjust the length of the iovec
9 req->rq_svec, in addition to adjusting the total buffer length.
10
11 Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
12 Signed-off-by: Suresh Jayaraman <sjayaraman@suse.de>
13 ---
14 fs/nfs/nfs3xdr.c | 3 ++-
15 1 files changed, 2 insertions(+), 1 deletions(-)
16
17 Index: linux-2.6.27-SLE11_BRANCH/fs/nfs/nfs3xdr.c
18 ===================================================================
19 --- linux-2.6.27-SLE11_BRANCH.orig/fs/nfs/nfs3xdr.c
20 +++ linux-2.6.27-SLE11_BRANCH/fs/nfs/nfs3xdr.c
21 @@ -716,7 +716,8 @@ nfs3_xdr_setaclargs(struct rpc_rqst *req
22 if (args->npages != 0)
23 xdr_encode_pages(buf, args->pages, 0, args->len);
24 else
25 - req->rq_slen += args->len;
26 + req->rq_slen = xdr_adjust_iovec(req->rq_svec,
27 + p + XDR_QUADLEN(args->len));
28
29 err = nfsacl_encode(buf, base, args->inode,
30 (args->mask & NFS_ACL) ?