[PATCH] fix nfsacl pointer arithmetic and pg_class initialization bugs
* Pointer arithmetic bug: p is in word units. This fixes a memory corruption with big acls. * Initialize pg_class to prevent a NULL pointer access. Signed-off-by: Andreas Gruenbacher <agruen@suse.de> Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
This commit is contained in:
committed by
Trond Myklebust
parent
458818ed76
commit
213484254c
+1
-1
@@ -677,7 +677,7 @@ nfs3_xdr_setaclargs(struct rpc_rqst *req, u32 *p,
|
||||
/* put as much of the acls into head as possible. */
|
||||
len_in_head = min_t(unsigned int, buf->head->iov_len - base, len);
|
||||
len -= len_in_head;
|
||||
req->rq_slen = xdr_adjust_iovec(req->rq_svec, p + len_in_head);
|
||||
req->rq_slen = xdr_adjust_iovec(req->rq_svec, p + (len_in_head >> 2));
|
||||
|
||||
for (count = 0; (count << PAGE_SHIFT) < len; count++) {
|
||||
args->pages[count] = alloc_page(GFP_KERNEL);
|
||||
|
||||
Reference in New Issue
Block a user