forked from Minki/linux
NFS: Make "port=" mount option optional for RDMA mounts
Having to specify "proto=rdma,port=20049" is cumbersome. RFC 8267 Section 6.3 requires NFSv4 clients to use "the alternative well-known port number", which is 20049. Make the use of the well- known port number automatic, just as it is for NFS/TCP and port 2049. For NFSv2/3, Section 4.2 allows clients to simply choose 20049 as the default or use rpcbind. I don't know of an NFS/RDMA server implementation that registers it's NFS/RDMA service with rpcbind, so automatically choosing 20049 seems like the better choice. The other widely-deployed NFS/RDMA client, Solaris, also uses 20049 as the default port. Signed-off-by: Chuck Lever <chuck.lever@oracle.com> Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
This commit is contained in:
parent
0a93fbcb16
commit
0dfbb5f05e
@ -2168,7 +2168,10 @@ static int nfs_validate_text_mount_data(void *options,
|
||||
|
||||
if (args->version == 4) {
|
||||
#if IS_ENABLED(CONFIG_NFS_V4)
|
||||
port = NFS_PORT;
|
||||
if (args->nfs_server.protocol == XPRT_TRANSPORT_RDMA)
|
||||
port = NFS_RDMA_PORT;
|
||||
else
|
||||
port = NFS_PORT;
|
||||
max_namelen = NFS4_MAXNAMLEN;
|
||||
max_pathlen = NFS4_MAXPATHLEN;
|
||||
nfs_validate_transport_protocol(args);
|
||||
@ -2178,8 +2181,11 @@ static int nfs_validate_text_mount_data(void *options,
|
||||
#else
|
||||
goto out_v4_not_compiled;
|
||||
#endif /* CONFIG_NFS_V4 */
|
||||
} else
|
||||
} else {
|
||||
nfs_set_mount_transport_protocol(args);
|
||||
if (args->nfs_server.protocol == XPRT_TRANSPORT_RDMA)
|
||||
port = NFS_RDMA_PORT;
|
||||
}
|
||||
|
||||
nfs_set_port(sap, &args->nfs_server.port, port);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user