diff options
author | rmacklem <rmacklem@FreeBSD.org> | 2017-05-07 21:42:02 +0000 |
---|---|---|
committer | rmacklem <rmacklem@FreeBSD.org> | 2017-05-07 21:42:02 +0000 |
commit | f289c819e763dc85bb9d6e7cd49791b64305e6c5 (patch) | |
tree | 55fbdfedc6185724bc708a3986caeb55b94d89a3 /sys/fs/nfs | |
parent | 55662f3f9006f635b3b58ba3206341280d0d7d6a (diff) | |
download | FreeBSD-src-f289c819e763dc85bb9d6e7cd49791b64305e6c5.zip FreeBSD-src-f289c819e763dc85bb9d6e7cd49791b64305e6c5.tar.gz |
MFC: r317275, r317344
Don't create a backchannel for a DS connection.
An NFSv4.1 client connection to a Data Server (DS) should not have a
backchannel. This patch fixes the NFSv4.1/pNFS client to not do a backchannel
for this case.
Found during recent testing with the pNFS server under development.
Diffstat (limited to 'sys/fs/nfs')
-rw-r--r-- | sys/fs/nfs/nfs_commonkrpc.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/fs/nfs/nfs_commonkrpc.c b/sys/fs/nfs/nfs_commonkrpc.c index 648a4ec..d610474 100644 --- a/sys/fs/nfs/nfs_commonkrpc.c +++ b/sys/fs/nfs/nfs_commonkrpc.c @@ -280,7 +280,8 @@ newnfs_connect(struct nfsmount *nmp, struct nfssockreq *nrp, retries = nmp->nm_retry; } else retries = INT_MAX; - if (NFSHASNFSV4N(nmp)) { + /* cred == NULL for DS connects. */ + if (NFSHASNFSV4N(nmp) && cred != NULL) { /* * Make sure the nfscbd_pool doesn't get destroyed * while doing this. |