diff options
author | Karen Rochford <Karen.Rochford@Sun.COM> | 2010-06-04 08:57:54 -0500 |
---|---|---|
committer | Karen Rochford <Karen.Rochford@Sun.COM> | 2010-06-04 08:57:54 -0500 |
commit | 0a4b08109ed53cd50c90d18c62198d62eec19da0 (patch) | |
tree | e5d124a74f917267463d92f8388c13fa62229ad5 /usr/src/uts/common/fs/nfs/nfs_auth.c | |
parent | 6bc688af4fb132e30e3dcc0243a24d232b5a3eba (diff) | |
download | illumos-joyent-0a4b08109ed53cd50c90d18c62198d62eec19da0.tar.gz |
6937869 seeing some memory leaks from xdrrdma_create()
6920403 NFS/RDMA NFSv3 client directio READs fail for read size between 869 - 1023 bytes
6935135 NFS/RDMA ipv6 mount incorrectly if client's hostname in access_list
Diffstat (limited to 'usr/src/uts/common/fs/nfs/nfs_auth.c')
-rw-r--r-- | usr/src/uts/common/fs/nfs/nfs_auth.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/usr/src/uts/common/fs/nfs/nfs_auth.c b/usr/src/uts/common/fs/nfs/nfs_auth.c index a1dada5ba0..d803531e09 100644 --- a/usr/src/uts/common/fs/nfs/nfs_auth.c +++ b/usr/src/uts/common/fs/nfs/nfs_auth.c @@ -766,6 +766,7 @@ nfsauth_refresh_thread(void) int nfsauth_cache_get(struct exportinfo *exi, struct svc_req *req, int flavor) { + struct netbuf *taddrmask; struct netbuf addr; struct netbuf *claddr; struct auth_cache **head; @@ -790,7 +791,10 @@ nfsauth_cache_get(struct exportinfo *exi, struct svc_req *req, int flavor) addr = *claddr; addr.buf = kmem_alloc(addr.len, KM_SLEEP); bcopy(claddr->buf, addr.buf, claddr->len); - addrmask(&addr, svc_getaddrmask(req->rq_xprt)); + SVC_GETADDRMASK(req->rq_xprt, SVC_TATTR_ADDRMASK, (void **)&taddrmask); + ASSERT(taddrmask != NULL); + if (taddrmask) + addrmask(&addr, taddrmask); rw_enter(&exi->exi_cache_lock, RW_READER); head = &exi->exi_cache[hash(&addr)]; |