|
@@ -1063,6 +1063,10 @@ static int nfs4_init_server(struct nfs_server *server,
|
|
|
nfs_init_timeout_values(&timeparms, data->nfs_server.protocol,
|
|
|
data->timeo, data->retrans);
|
|
|
|
|
|
+ /* Initialise the client representation from the mount data */
|
|
|
+ server->flags = data->flags;
|
|
|
+ server->caps |= NFS_CAP_ATOMIC_OPEN;
|
|
|
+
|
|
|
/* Get a client record */
|
|
|
error = nfs4_set_client(server,
|
|
|
data->nfs_server.hostname,
|
|
@@ -1075,10 +1079,6 @@ static int nfs4_init_server(struct nfs_server *server,
|
|
|
if (error < 0)
|
|
|
goto error;
|
|
|
|
|
|
- /* Initialise the client representation from the mount data */
|
|
|
- server->flags = data->flags;
|
|
|
- server->caps |= NFS_CAP_ATOMIC_OPEN;
|
|
|
-
|
|
|
if (data->rsize)
|
|
|
server->rsize = nfs_block_size(data->rsize, NULL);
|
|
|
if (data->wsize)
|
|
@@ -1181,6 +1181,10 @@ struct nfs_server *nfs4_create_referral_server(struct nfs_clone_mount *data,
|
|
|
parent_server = NFS_SB(data->sb);
|
|
|
parent_client = parent_server->nfs_client;
|
|
|
|
|
|
+ /* Initialise the client representation from the parent server */
|
|
|
+ nfs_server_copy_userdata(server, parent_server);
|
|
|
+ server->caps |= NFS_CAP_ATOMIC_OPEN;
|
|
|
+
|
|
|
/* Get a client representation.
|
|
|
* Note: NFSv4 always uses TCP, */
|
|
|
error = nfs4_set_client(server, data->hostname,
|
|
@@ -1193,10 +1197,6 @@ struct nfs_server *nfs4_create_referral_server(struct nfs_clone_mount *data,
|
|
|
if (error < 0)
|
|
|
goto error;
|
|
|
|
|
|
- /* Initialise the client representation from the parent server */
|
|
|
- nfs_server_copy_userdata(server, parent_server);
|
|
|
- server->caps |= NFS_CAP_ATOMIC_OPEN;
|
|
|
-
|
|
|
error = nfs_init_server_rpcclient(server, parent_server->client->cl_timeout, data->authflavor);
|
|
|
if (error < 0)
|
|
|
goto error;
|