Lines Matching refs:server
47 * Per auth flavor data server rpc clients
128 * Find or create a DS rpc client with th MDS server rpc client auth flavor
235 * Set up the connection to the server before we add add to the
382 * The create session reply races with the server back
453 * "drop," but server trunking discovery claims "drop" and "keep" are
454 * actually the same server. Swap the callback IDs so that "keep"
455 * will continue to use the callback ident the server now knows about,
540 * nfs40_walk_client_list - Find server that recognizes a client ID
577 * caused the server to return a new cl_confirm. So if
579 * server that just returned the same cl_confirm by
588 * if new and pos point to the same server:
624 /* No match found. The server lost our clientid */
632 * Returns true if the server major ids match
644 * Returns true if the server scopes match
706 * nfs41_walk_client_list - Find nfs_client that matches a client/server owner
761 static void nfs4_destroy_server(struct nfs_server *server)
765 nfs_server_return_all_delegations(server);
766 unset_pnfs_layoutdriver(server);
767 nfs4_purge_state_owners(server, &freeme);
861 static int nfs4_set_client(struct nfs_server *server,
880 .cred = server->cred,
889 if (server->flags & NFS_MOUNT_NORESVPORT)
891 if (server->options & NFS_OPTION_MIGRATION)
893 if (test_bit(NFS_MIG_TSM_POSSIBLE, &server->mig_status))
895 server->port = rpc_get_port(addr);
902 if (server->nfs_client == clp) {
916 server->nfs_client = clp;
923 * Return any existing nfs_client that matches server address,port,version
976 static void nfs4_session_limit_rwsize(struct nfs_server *server)
983 if (!nfs4_has_session(server->nfs_client))
985 sess = server->nfs_client->cl_session;
989 if (server->dtsize > server_resp_sz)
990 server->dtsize = server_resp_sz;
991 if (server->rsize > server_resp_sz)
992 server->rsize = server_resp_sz;
993 if (server->wsize > server_rqst_sz)
994 server->wsize = server_rqst_sz;
1001 static void nfs4_session_limit_xasize(struct nfs_server *server)
1009 if (!nfs4_has_session(server->nfs_client))
1012 sess = server->nfs_client->cl_session;
1019 if (server->gxasize > server_gxa_sz)
1020 server->gxasize = server_gxa_sz;
1021 if (server->sxasize > server_sxa_sz)
1022 server->sxasize = server_sxa_sz;
1023 if (server->lxasize > server_lxa_sz)
1024 server->lxasize = server_lxa_sz;
1028 static int nfs4_server_common_setup(struct nfs_server *server,
1035 if (is_ds_only_client(server->nfs_client))
1043 error = nfs4_init_session(server->nfs_client);
1048 server->caps |= server->nfs_client->cl_mvops->init_caps;
1049 if (server->flags & NFS_MOUNT_NORDIRPLUS)
1050 server->caps &= ~NFS_CAP_READDIRPLUS;
1051 if (server->nfs_client->cl_proto == XPRT_TRANSPORT_RDMA)
1052 server->caps &= ~NFS_CAP_READ_PLUS;
1058 server->client->cl_auth->au_flavor == RPC_AUTH_UNIX)
1059 server->caps |= NFS_CAP_UIDGID_NOMAP;
1063 error = nfs4_get_rootfh(server, mntfh, auth_probe);
1068 (unsigned long long) server->fsid.major,
1069 (unsigned long long) server->fsid.minor);
1072 error = nfs_probe_fsinfo(server, mntfh, fattr);
1076 nfs4_session_limit_rwsize(server);
1077 nfs4_session_limit_xasize(server);
1079 if (server->namelen == 0 || server->namelen > NFS4_MAXNAMLEN)
1080 server->namelen = NFS4_MAXNAMLEN;
1082 nfs_server_insert_lists(server);
1083 server->mount_time = jiffies;
1084 server->destroy = nfs4_destroy_server;
1093 static int nfs4_init_server(struct nfs_server *server, struct fs_context *fc)
1103 server->flags = ctx->flags;
1104 server->options = ctx->options;
1105 server->auth_info = ctx->auth_info;
1108 * allowed by the server, use the SECINFO path to try the
1116 error = nfs4_set_client(server,
1130 server->rsize = nfs_block_size(ctx->rsize, NULL);
1132 server->wsize = nfs_block_size(ctx->wsize, NULL);
1134 server->acregmin = ctx->acregmin * HZ;
1135 server->acregmax = ctx->acregmax * HZ;
1136 server->acdirmin = ctx->acdirmin * HZ;
1137 server->acdirmax = ctx->acdirmax * HZ;
1138 server->port = ctx->nfs_server.port;
1140 return nfs_init_server_rpcclient(server, &timeparms,
1146 * - keyed on server and FSID
1151 struct nfs_server *server;
1155 server = nfs_alloc_server();
1156 if (!server)
1159 server->cred = get_cred(fc->cred);
1164 error = nfs4_init_server(server, fc);
1168 error = nfs4_server_common_setup(server, ctx->mntfh, auth_probe);
1172 return server;
1175 nfs_free_server(server);
1180 * Create an NFS4 referral server record
1186 struct nfs_server *server, *parent_server;
1190 server = nfs_alloc_server();
1191 if (!server)
1197 server->cred = get_cred(parent_server->cred);
1199 /* Initialise the client representation from the parent server */
1200 nfs_server_copy_userdata(server, parent_server);
1205 error = nfs4_set_client(server,
1220 error = nfs4_set_client(server,
1236 error = nfs_init_server_rpcclient(server, parent_server->client->cl_timeout,
1243 error = nfs4_server_common_setup(server, ctx->mntfh, auth_probe);
1247 return server;
1250 nfs_free_server(server);
1260 static int nfs_probe_destination(struct nfs_server *server)
1262 struct inode *inode = d_inode(server->super->s_root);
1270 /* Sanity: the probe won't work if the destination server
1272 error = nfs_probe_fsinfo(server, NFS_FH(inode), fattr);
1281 * @server: represents FSID to be moved
1293 int nfs4_update_server(struct nfs_server *server, const char *hostname,
1296 struct nfs_client *clp = server->nfs_client;
1297 struct rpc_clnt *clnt = server->client;
1321 nfs_server_remove_lists(server);
1322 set_bit(NFS_MIG_TSM_POSSIBLE, &server->mig_status);
1323 error = nfs4_set_client(server, hostname, sap, salen, buf,
1327 clear_bit(NFS_MIG_TSM_POSSIBLE, &server->mig_status);
1329 nfs_server_insert_lists(server);
1334 if (server->nfs_client->cl_hostname == NULL) {
1335 server->nfs_client->cl_hostname = kstrdup(hostname, GFP_KERNEL);
1336 if (server->nfs_client->cl_hostname == NULL)
1339 nfs_server_insert_lists(server);
1341 return nfs_probe_destination(server);