Lines Matching full:server
100 static int _nfs4_proc_getattr(struct nfs_server *server, struct nfs_fh *fhandle, struct nfs_fattr *…
117 struct nfs_server *server,
146 static inline u32 *nfs4_bitmask(struct nfs_server *server, struct nfs4_label *label) in nfs4_bitmask() argument
149 return server->attr_bitmask; in nfs4_bitmask()
151 return server->attr_bitmask_nl; in nfs4_bitmask()
162 nfs4_bitmask(struct nfs_server *server, struct nfs4_label *label) in nfs4_bitmask() argument
163 { return server->attr_bitmask; } in nfs4_bitmask()
336 * when talking to the server, we always send cookie 0 in nfs4_setup_readdir()
372 static void nfs4_test_and_free_stateid(struct nfs_server *server, in nfs4_test_and_free_stateid() argument
376 const struct nfs4_minor_version_ops *ops = server->nfs_client->cl_mvops; in nfs4_test_and_free_stateid()
378 ops->test_and_free_expired(server, stateid, cred); in nfs4_test_and_free_stateid()
381 static void __nfs4_free_revoked_stateid(struct nfs_server *server, in __nfs4_free_revoked_stateid() argument
386 nfs4_test_and_free_stateid(server, stateid, cred); in __nfs4_free_revoked_stateid()
389 static void nfs4_free_revoked_stateid(struct nfs_server *server, in nfs4_free_revoked_stateid() argument
396 __nfs4_free_revoked_stateid(server, &tmp, cred); in nfs4_free_revoked_stateid()
460 static int nfs4_do_handle_exception(struct nfs_server *server, in nfs4_do_handle_exception() argument
463 struct nfs_client *clp = server->nfs_client; in nfs4_do_handle_exception()
511 ret = nfs4_schedule_stateid_recovery(server, state); in nfs4_do_handle_exception()
520 ret = nfs4_schedule_migration_recovery(server); in nfs4_do_handle_exception()
548 nfs_inc_server_stats(server, NFSIOS_DELAY); in nfs4_do_handle_exception()
561 /* The following works around a Linux server bug! */ in nfs4_do_handle_exception()
563 if (server->caps & NFS_CAP_UIDGID_NOMAP) { in nfs4_do_handle_exception()
564 server->caps &= ~NFS_CAP_UIDGID_NOMAP; in nfs4_do_handle_exception()
566 printk(KERN_WARNING "NFS: v4 server %s " in nfs4_do_handle_exception()
570 server->nfs_client->cl_hostname); in nfs4_do_handle_exception()
583 int nfs4_handle_exception(struct nfs_server *server, int errorcode, struct nfs4_exception *exceptio… in nfs4_handle_exception() argument
585 struct nfs_client *clp = server->nfs_client; in nfs4_handle_exception()
588 ret = nfs4_do_handle_exception(server, errorcode, exception); in nfs4_handle_exception()
598 if (test_bit(NFS_MIG_FAILED, &server->mig_status)) in nfs4_handle_exception()
610 nfs4_async_handle_exception(struct rpc_task *task, struct nfs_server *server, in nfs4_async_handle_exception() argument
613 struct nfs_client *clp = server->nfs_client; in nfs4_async_handle_exception()
616 ret = nfs4_do_handle_exception(server, errorcode, exception); in nfs4_async_handle_exception()
629 if (test_bit(NFS_MIG_FAILED, &server->mig_status)) in nfs4_async_handle_exception()
646 nfs4_async_handle_error(struct rpc_task *task, struct nfs_server *server, in nfs4_async_handle_error() argument
657 task->tk_status = nfs4_async_handle_exception(task, server, in nfs4_async_handle_error()
685 static void renew_lease(const struct nfs_server *server, unsigned long timestamp) in renew_lease() argument
687 struct nfs_client *clp = server->nfs_client; in renew_lease()
751 /* Be nice to the server: try to ensure that the last transmitted in nfs41_release_slot()
840 * The server may or may not have processed the sequence in nfs41_sequence_process()
847 /* The server detected a resend of the RPC call and in nfs41_sequence_process()
860 * The server thinks we tried to replay a request. in nfs41_sequence_process()
877 * If the server never received the request, then our in nfs41_sequence_process()
879 * if the server did receive the request then it might in nfs41_sequence_process()
882 * to the server on the same slot. in nfs41_sequence_process()
1132 struct nfs_server *server, in nfs4_do_call_sync() argument
1138 struct nfs_client *clp = server->nfs_client; in nfs4_do_call_sync()
1140 .seq_server = server, in nfs4_do_call_sync()
1156 struct nfs_server *server, in nfs4_call_sync_sequence() argument
1161 return nfs4_do_call_sync(clnt, server, msg, args, res, 0); in nfs4_call_sync_sequence()
1166 struct nfs_server *server, in nfs4_call_sync() argument
1173 return nfs4_call_sync_sequence(clnt, server, msg, args, res); in nfs4_call_sync()
1243 static bool nfs4_clear_cap_atomic_open_v1(struct nfs_server *server, in nfs4_clear_cap_atomic_open_v1() argument
1248 if (!(server->caps & NFS_CAP_ATOMIC_OPEN_V1)) in nfs4_clear_cap_atomic_open_v1()
1250 server->caps &= ~NFS_CAP_ATOMIC_OPEN_V1; in nfs4_clear_cap_atomic_open_v1()
1268 nfs4_map_atomic_open_share(struct nfs_server *server, in nfs4_map_atomic_open_share() argument
1283 if (!(server->caps & NFS_CAP_ATOMIC_OPEN_V1)) in nfs4_map_atomic_open_share()
1293 nfs4_map_atomic_open_claim(struct nfs_server *server, in nfs4_map_atomic_open_claim() argument
1296 if (server->caps & NFS_CAP_ATOMIC_OPEN_V1) in nfs4_map_atomic_open_claim()
1316 p->o_res.server = p->o_arg.server; in nfs4_init_opendata_res()
1330 struct nfs_server *server = NFS_SERVER(dir); in nfs4_opendata_alloc() local
1339 p->f_label = nfs4_label_alloc(server, gfp_mask); in nfs4_opendata_alloc()
1343 p->a_label = nfs4_label_alloc(server, gfp_mask); in nfs4_opendata_alloc()
1347 alloc_seqid = server->nfs_client->cl_mvops->alloc_seqid; in nfs4_opendata_alloc()
1358 p->o_arg.claim = nfs4_map_atomic_open_claim(server, claim); in nfs4_opendata_alloc()
1359 p->o_arg.share_access = nfs4_map_atomic_open_share(server, in nfs4_opendata_alloc()
1375 /* ask server to check for all possible rights as results in nfs4_opendata_alloc()
1387 if (server->caps & NFS_CAP_XATTR) in nfs4_opendata_alloc()
1394 p->o_arg.clientid = server->nfs_client->cl_clientid; in nfs4_opendata_alloc()
1398 p->o_arg.server = server; in nfs4_opendata_alloc()
1399 p->o_arg.bitmask = nfs4_bitmask(server, label); in nfs4_opendata_alloc()
1582 * Note: This function relies heavily on the server implementing
1598 /* The server returned a new stateid */ in nfs_stateid_is_sequential()
1688 * in which the server processed them by delaying the in nfs_set_open_stateid_locked()
1782 struct nfs_server *server = NFS_SERVER(state->inode); in update_open_stateid() local
1783 struct nfs_client *clp = server->nfs_client; in update_open_stateid()
1827 nfs4_test_and_free_stateid(server, &freeme, in update_open_stateid()
1929 pr_err_ratelimited("NFS: Broken NFSv4 server %s is " in nfs4_opendata_check_deleg()
2176 * reclaim state on the server after a reboot.
2202 struct nfs_server *server = NFS_SERVER(state->inode); in nfs4_do_open_reclaim() local
2208 if (nfs4_clear_cap_atomic_open_v1(server, err, &exception)) in nfs4_do_open_reclaim()
2212 nfs4_handle_exception(server, err, &exception); in nfs4_do_open_reclaim()
2232 static int nfs4_handle_delegation_recall_error(struct nfs_server *server, struct nfs4_state *state,… in nfs4_handle_delegation_recall_error() argument
2253 nfs4_schedule_lease_recovery(server->nfs_client); in nfs4_handle_delegation_recall_error()
2256 nfs4_schedule_migration_recovery(server); in nfs4_handle_delegation_recall_error()
2259 nfs4_schedule_lease_moved_recovery(server->nfs_client); in nfs4_handle_delegation_recall_error()
2268 nfs4_schedule_stateid_recovery(server, state); in nfs4_handle_delegation_recall_error()
2289 struct nfs_server *server = NFS_SERVER(state->inode); in nfs4_open_delegation_recall() local
2316 return nfs4_handle_delegation_recall_error(server, state, stateid, NULL, err); in nfs4_open_delegation_recall()
2323 nfs4_setup_sequence(data->o_arg.server->nfs_client, in nfs4_open_confirm_prepare()
2337 renew_lease(data->o_res.server, data->timestamp); in nfs4_open_confirm_done()
2371 struct nfs_server *server = NFS_SERVER(d_inode(data->dir)); in _nfs4_proc_open_confirm() local
2380 .rpc_client = server->client, in _nfs4_proc_open_confirm()
2447 if (nfs4_setup_sequence(data->o_arg.server->nfs_client, in nfs4_open_prepare()
2496 renew_lease(data->o_res.server, data->timestamp); in nfs4_open_done()
2534 struct nfs_server *server = NFS_SERVER(dir); in nfs4_run_open_task() local
2545 .rpc_client = server->client, in nfs4_run_open_task()
2615 /* access call failed or for some reason the server doesn't in nfs4_opendata_access()
2652 struct nfs_server *server = NFS_SERVER(dir); in _nfs4_proc_open() local
2667 nfs_fattr_map_and_free_names(server, &data->f_attr); in _nfs4_proc_open()
2681 server->caps &= ~NFS_CAP_POSIX_LOCK; in _nfs4_proc_open()
2689 nfs4_proc_getattr(server, &o_res->fh, o_res->f_attr, in _nfs4_proc_open()
2697 * reclaim state on the server after a network partition.
2718 struct nfs_server *server = NFS_SERVER(state->inode); in nfs4_do_open_expired() local
2725 if (nfs4_clear_cap_atomic_open_v1(server, err, &exception)) in nfs4_do_open_expired()
2732 nfs4_handle_exception(server, err, &exception); in nfs4_do_open_expired()
2774 static int nfs40_test_and_free_expired_stateid(struct nfs_server *server, in nfs40_test_and_free_expired_stateid() argument
2782 static int nfs41_test_and_free_expired_stateid(struct nfs_server *server, in nfs41_test_and_free_expired_stateid() argument
2798 status = nfs41_test_stateid(server, stateid, cred); in nfs41_test_and_free_expired_stateid()
2808 /* Ack the revoked state to the server */ in nfs41_test_and_free_expired_stateid()
2809 nfs41_free_stateid(server, stateid, cred, true); in nfs41_test_and_free_expired_stateid()
2815 struct nfs_server *server = NFS_SERVER(state->inode); in nfs41_check_delegation_stateid() local
2844 status = nfs41_test_and_free_expired_stateid(server, &stateid, cred); in nfs41_check_delegation_stateid()
2880 struct nfs_server *server = NFS_SERVER(state->inode); in nfs41_check_expired_locks() local
2896 status = nfs41_test_and_free_expired_stateid(server, in nfs41_check_expired_locks()
2930 struct nfs_server *server = NFS_SERVER(state->inode); in nfs41_check_open_stateid() local
2937 status = nfs41_test_and_free_expired_stateid(server, stateid, cred); in nfs41_check_open_stateid()
2969 * on an EXCLUSIVE create, the server should send back a bitmask with FATTR4-*
2976 const __u32 *bitmask = opendata->o_arg.server->exclcreat_bitmask; in nfs4_exclusive_attrset()
3013 struct nfs_server *server = sp->so_server; in _nfs4_open_and_get_state() local
3034 if (server->caps & NFS_CAP_POSIX_LOCK) in _nfs4_open_and_get_state()
3077 nfs4_schedule_stateid_recovery(server, state); in _nfs4_open_and_get_state()
3097 struct nfs_server *server = NFS_SERVER(dir); in _nfs4_do_open() local
3111 sp = nfs4_get_state_owner(server, cred, GFP_KERNEL); in _nfs4_do_open()
3116 status = nfs4_client_recover_expired_lease(server->nfs_client); in _nfs4_do_open()
3130 olabel = nfs4_label_alloc(server, GFP_KERNEL); in _nfs4_do_open()
3137 if (server->attr_bitmask[2] & FATTR4_WORD2_MDSTHRESHOLD) { in _nfs4_do_open()
3179 if (pnfs_use_threshold(ctx_th, opendata->f_attr.mdsthreshold, server)) { in _nfs4_do_open()
3207 struct nfs_server *server = NFS_SERVER(dir); in nfs4_do_open() local
3228 /* NOTE: BAD_SEQID means the server and client disagree about the in nfs4_do_open()
3231 * It is actually a sign of a bug on the client or on the server. in nfs4_do_open()
3240 pr_warn_ratelimited("NFS: v4 server %s " in nfs4_do_open()
3247 * BAD_STATEID on OPEN means that the server cancelled our in nfs4_do_open()
3257 nfs4_schedule_lease_recovery(server->nfs_client); in nfs4_do_open()
3266 if (nfs4_clear_cap_atomic_open_v1(server, status, &exception)) in nfs4_do_open()
3268 res = ERR_PTR(nfs4_handle_exception(server, in nfs4_do_open()
3280 struct nfs_server *server = NFS_SERVER(inode); in _nfs4_do_setattr() local
3324 status = nfs4_call_sync(server->client, server, &msg, &arg->seq_args, &res->seq_res, 1); in _nfs4_do_setattr()
3328 renew_lease(server, timestamp); in _nfs4_do_setattr()
3338 struct nfs_server *server = NFS_SERVER(inode); in nfs4_do_setattr() local
3344 .server = server, in nfs4_do_setattr()
3351 .server = server, in nfs4_do_setattr()
3362 nfs4_bitmask(server, olabel), in nfs4_do_setattr()
3369 pr_warn_once("NFSv4: server %s is incorrectly " in nfs4_do_setattr()
3373 server->nfs_client->cl_hostname); in nfs4_do_setattr()
3382 err = nfs4_handle_exception(server, err, &exception); in nfs4_do_setattr()
3465 /* server says we're behind but we haven't seen the update yet */ in nfs4_refresh_open_old_stateid()
3529 struct nfs_server *server = NFS_SERVER(calldata->inode); in nfs4_close_done() local
3553 renew_lease(server, calldata->timestamp); in nfs4_close_done()
3572 nfs4_free_revoked_stateid(server, in nfs4_close_done()
3582 server, task->tk_status, &exception); in nfs4_close_done()
3605 struct nfs_server *server = NFS_SERVER(inode); in nfs4_close_prepare() local
3663 server->cache_consistency_bitmask, in nfs4_close_prepare()
3664 inode, server, NULL); in nfs4_close_prepare()
3703 * NFSv4 citizens - we do not indicate to the server to update the file's
3711 struct nfs_server *server = NFS_SERVER(state->inode); in nfs4_do_close() local
3721 .rpc_client = server->client, in nfs4_do_close()
3729 nfs4_state_protect(server->nfs_client, NFS_SP4_MACH_CRED_CLEANUP, in nfs4_do_close()
3742 alloc_seqid = server->nfs_client->cl_mvops->alloc_seqid; in nfs4_do_close()
3751 calldata->res.server = server; in nfs4_do_close()
3813 static int _nfs4_server_capabilities(struct nfs_server *server, struct nfs_fh *fhandle) in _nfs4_server_capabilities() argument
3815 u32 bitmask[3] = {}, minorversion = server->nfs_client->cl_minorversion; in _nfs4_server_capabilities()
3837 status = nfs4_call_sync(server->client, server, &msg, &args.seq_args, &res.seq_res, 0); in _nfs4_server_capabilities()
3839 /* Sanity check the server answers */ in _nfs4_server_capabilities()
3851 memcpy(server->attr_bitmask, res.attr_bitmask, sizeof(server->attr_bitmask)); in _nfs4_server_capabilities()
3852 server->caps &= ~(NFS_CAP_ACLS|NFS_CAP_HARDLINKS| in _nfs4_server_capabilities()
3860 server->caps |= NFS_CAP_ACLS; in _nfs4_server_capabilities()
3862 server->caps |= NFS_CAP_HARDLINKS; in _nfs4_server_capabilities()
3864 server->caps |= NFS_CAP_SYMLINKS; in _nfs4_server_capabilities()
3866 server->caps |= NFS_CAP_FILEID; in _nfs4_server_capabilities()
3868 server->caps |= NFS_CAP_MODE; in _nfs4_server_capabilities()
3870 server->caps |= NFS_CAP_NLINK; in _nfs4_server_capabilities()
3872 server->caps |= NFS_CAP_OWNER; in _nfs4_server_capabilities()
3874 server->caps |= NFS_CAP_OWNER_GROUP; in _nfs4_server_capabilities()
3876 server->caps |= NFS_CAP_ATIME; in _nfs4_server_capabilities()
3878 server->caps |= NFS_CAP_CTIME; in _nfs4_server_capabilities()
3880 server->caps |= NFS_CAP_MTIME; in _nfs4_server_capabilities()
3883 server->caps |= NFS_CAP_SECURITY_LABEL; in _nfs4_server_capabilities()
3885 memcpy(server->attr_bitmask_nl, res.attr_bitmask, in _nfs4_server_capabilities()
3886 sizeof(server->attr_bitmask)); in _nfs4_server_capabilities()
3887 server->attr_bitmask_nl[2] &= ~FATTR4_WORD2_SECURITY_LABEL; in _nfs4_server_capabilities()
3889 …memcpy(server->cache_consistency_bitmask, res.attr_bitmask, sizeof(server->cache_consistency_bitma… in _nfs4_server_capabilities()
3890 server->cache_consistency_bitmask[0] &= FATTR4_WORD0_CHANGE|FATTR4_WORD0_SIZE; in _nfs4_server_capabilities()
3891 server->cache_consistency_bitmask[1] &= FATTR4_WORD1_TIME_METADATA|FATTR4_WORD1_TIME_MODIFY; in _nfs4_server_capabilities()
3892 server->cache_consistency_bitmask[2] = 0; in _nfs4_server_capabilities()
3894 /* Avoid a regression due to buggy server */ in _nfs4_server_capabilities()
3897 memcpy(server->exclcreat_bitmask, res.exclcreat_bitmask, in _nfs4_server_capabilities()
3898 sizeof(server->exclcreat_bitmask)); in _nfs4_server_capabilities()
3900 server->acl_bitmask = res.acl_bitmask; in _nfs4_server_capabilities()
3901 server->fh_expire_type = res.fh_expire_type; in _nfs4_server_capabilities()
3907 int nfs4_server_capabilities(struct nfs_server *server, struct nfs_fh *fhandle) in nfs4_server_capabilities() argument
3914 err = nfs4_handle_exception(server, in nfs4_server_capabilities()
3915 _nfs4_server_capabilities(server, fhandle), in nfs4_server_capabilities()
3921 static int _nfs4_lookup_root(struct nfs_server *server, struct nfs_fh *fhandle, in _nfs4_lookup_root() argument
3929 .server = server, in _nfs4_lookup_root()
3947 return nfs4_call_sync(server->client, server, &msg, &args.seq_args, &res.seq_res, 0); in _nfs4_lookup_root()
3950 static int nfs4_lookup_root(struct nfs_server *server, struct nfs_fh *fhandle, in nfs4_lookup_root() argument
3958 err = _nfs4_lookup_root(server, fhandle, info); in nfs4_lookup_root()
3959 trace_nfs4_lookup_root(server, fhandle, info->fattr, err); in nfs4_lookup_root()
3965 err = nfs4_handle_exception(server, err, &exception); in nfs4_lookup_root()
3972 static int nfs4_lookup_root_sec(struct nfs_server *server, struct nfs_fh *fhandle, in nfs4_lookup_root_sec() argument
3980 auth = rpcauth_create(&auth_args, server->client); in nfs4_lookup_root_sec()
3983 return nfs4_lookup_root(server, fhandle, info); in nfs4_lookup_root_sec()
3990 * NFSv4.1: the server does not support the SECINFO_NO_NAME operation
3995 static int nfs4_find_root_sec(struct nfs_server *server, struct nfs_fh *fhandle, in nfs4_find_root_sec() argument
4009 if (server->auth_info.flavor_len > 0) { in nfs4_find_root_sec()
4011 for (i = 0; i < server->auth_info.flavor_len; i++) { in nfs4_find_root_sec()
4012 status = nfs4_lookup_root_sec(server, fhandle, info, in nfs4_find_root_sec()
4013 server->auth_info.flavors[i]); in nfs4_find_root_sec()
4021 status = nfs4_lookup_root_sec(server, fhandle, info, in nfs4_find_root_sec()
4042 * nfs4_proc_get_rootfh - get file handle for server's pseudoroot
4043 * @server: initialized nfs_server handle
4050 int nfs4_proc_get_rootfh(struct nfs_server *server, struct nfs_fh *fhandle, in nfs4_proc_get_rootfh() argument
4057 status = nfs4_lookup_root(server, fhandle, info); in nfs4_proc_get_rootfh()
4060 status = server->nfs_client->cl_mvops->find_root_sec(server, in nfs4_proc_get_rootfh()
4064 status = nfs4_server_capabilities(server, fhandle); in nfs4_proc_get_rootfh()
4066 status = nfs4_do_fsinfo(server, fhandle, info); in nfs4_proc_get_rootfh()
4071 static int nfs4_proc_get_root(struct nfs_server *server, struct nfs_fh *mntfh, in nfs4_proc_get_root() argument
4078 error = nfs4_server_capabilities(server, mntfh); in nfs4_proc_get_root()
4084 error = nfs4_proc_getattr(server, mntfh, fattr, label, NULL); in nfs4_proc_get_root()
4091 !nfs_fsid_equal(&server->fsid, &fattr->fsid)) in nfs4_proc_get_root()
4092 memcpy(&server->fsid, &fattr->fsid, sizeof(server->fsid)); in nfs4_proc_get_root()
4128 dprintk("%s: server did not return a different fsid for" in nfs4_get_referral()
4146 static int _nfs4_proc_getattr(struct nfs_server *server, struct nfs_fh *fhandle, in _nfs4_proc_getattr() argument
4158 .server = server, in _nfs4_proc_getattr()
4168 if (inode && (server->flags & NFS_MOUNT_SOFTREVAL)) in _nfs4_proc_getattr()
4171 nfs4_bitmap_copy_adjust(bitmask, nfs4_bitmask(server, label), inode); in _nfs4_proc_getattr()
4175 return nfs4_do_call_sync(server->client, server, &msg, in _nfs4_proc_getattr()
4179 int nfs4_proc_getattr(struct nfs_server *server, struct nfs_fh *fhandle, in nfs4_proc_getattr() argument
4188 err = _nfs4_proc_getattr(server, fhandle, fattr, label, inode); in nfs4_proc_getattr()
4189 trace_nfs4_getattr(server, fhandle, fattr, err); in nfs4_proc_getattr()
4190 err = nfs4_handle_exception(server, err, in nfs4_proc_getattr()
4267 struct nfs_server *server = NFS_SERVER(dir); in _nfs4_proc_lookup() local
4270 .bitmask = server->attr_bitmask, in _nfs4_proc_lookup()
4275 .server = server, in _nfs4_proc_lookup()
4291 args.bitmask = nfs4_bitmask(server, label); in _nfs4_proc_lookup()
4297 status = nfs4_do_call_sync(clnt, server, &msg, in _nfs4_proc_lookup()
4390 struct nfs_server *server = NFS_SERVER(inode); in _nfs4_proc_lookupp() local
4393 .bitmask = server->attr_bitmask, in _nfs4_proc_lookupp()
4397 .server = server, in _nfs4_proc_lookupp()
4408 args.bitmask = nfs4_bitmask(server, label); in _nfs4_proc_lookupp()
4413 status = nfs4_call_sync(clnt, server, &msg, &args.seq_args, in _nfs4_proc_lookupp()
4437 struct nfs_server *server = NFS_SERVER(inode); in _nfs4_proc_access() local
4443 .server = server, in _nfs4_proc_access()
4457 args.bitmask = server->cache_consistency_bitmask; in _nfs4_proc_access()
4459 status = nfs4_call_sync(server->client, server, &msg, &args.seq_args, &res.seq_res, 0); in _nfs4_proc_access()
4548 struct nfs_server *server = NFS_SERVER(dir); in nfs4_proc_create() local
4560 if (!(server->attr_bitmask[2] & FATTR4_WORD2_MODE_UMASK)) in nfs4_proc_create()
4576 struct nfs_server *server = NFS_SERVER(dir); in _nfs4_proc_remove() local
4582 .server = server, in _nfs4_proc_remove()
4592 status = nfs4_call_sync(server->client, server, &msg, &args.seq_args, &res.seq_res, 1); in _nfs4_proc_remove()
4651 res->server = NFS_SB(dentry->d_sb); in nfs4_proc_unlink_setup()
4676 if (nfs4_async_handle_error(task, res->server, NULL, in nfs4_proc_unlink_done()
4700 res->server = NFS_SB(old_dentry->d_sb); in nfs4_proc_rename_setup()
4720 if (nfs4_async_handle_error(task, res->server, NULL, &data->timeout) == -EAGAIN) in nfs4_proc_rename_done()
4744 struct nfs_server *server = NFS_SERVER(inode); in _nfs4_proc_link() local
4753 .server = server, in _nfs4_proc_link()
4767 res.label = nfs4_label_alloc(server, GFP_KERNEL); in _nfs4_proc_link()
4774 nfs4_bitmap_copy_adjust_setattr(bitmask, nfs4_bitmask(server, res.label), inode); in _nfs4_proc_link()
4776 status = nfs4_call_sync(server->client, server, &msg, &arg.seq_args, &res.seq_res, 1); in _nfs4_proc_link()
4823 struct nfs_server *server = NFS_SERVER(dir); in nfs4_alloc_createdata() local
4825 data->label = nfs4_label_alloc(server, GFP_KERNEL); in nfs4_alloc_createdata()
4833 data->arg.server = server; in nfs4_alloc_createdata()
4837 data->arg.bitmask = nfs4_bitmask(server, data->label); in nfs4_alloc_createdata()
4839 data->res.server = server; in nfs4_alloc_createdata()
4945 struct nfs_server *server = NFS_SERVER(dir); in nfs4_proc_mkdir() local
4954 if (!(server->attr_bitmask[2] & FATTR4_WORD2_MODE_UMASK)) in nfs4_proc_mkdir()
4971 struct nfs_server *server = NFS_SERVER(dir); in _nfs4_proc_readdir() local
4991 if (!(server->caps & NFS_CAP_SECURITY_LABEL)) in _nfs4_proc_readdir()
4992 args.bitmask = server->attr_bitmask_nl; in _nfs4_proc_readdir()
4994 args.bitmask = server->attr_bitmask; in _nfs4_proc_readdir()
4998 status = nfs4_call_sync(server->client, server, &msg, &args.seq_args, in _nfs4_proc_readdir()
5066 struct nfs_server *server = NFS_SERVER(dir); in nfs4_proc_mknod() local
5075 if (!(server->attr_bitmask[2] & FATTR4_WORD2_MODE_UMASK)) in nfs4_proc_mknod()
5089 static int _nfs4_proc_statfs(struct nfs_server *server, struct nfs_fh *fhandle, in _nfs4_proc_statfs() argument
5094 .bitmask = server->attr_bitmask, in _nfs4_proc_statfs()
5106 return nfs4_call_sync(server->client, server, &msg, &args.seq_args, &res.seq_res, 0); in _nfs4_proc_statfs()
5109 static int nfs4_proc_statfs(struct nfs_server *server, struct nfs_fh *fhandle, struct nfs_fsstat *f… in nfs4_proc_statfs() argument
5116 err = nfs4_handle_exception(server, in nfs4_proc_statfs()
5117 _nfs4_proc_statfs(server, fhandle, fsstat), in nfs4_proc_statfs()
5123 static int _nfs4_do_fsinfo(struct nfs_server *server, struct nfs_fh *fhandle, in _nfs4_do_fsinfo() argument
5128 .bitmask = server->attr_bitmask, in _nfs4_do_fsinfo()
5139 return nfs4_call_sync(server->client, server, &msg, &args.seq_args, &res.seq_res, 0); in _nfs4_do_fsinfo()
5142 static int nfs4_do_fsinfo(struct nfs_server *server, struct nfs_fh *fhandle, struct nfs_fsinfo *fsi… in nfs4_do_fsinfo() argument
5150 err = _nfs4_do_fsinfo(server, fhandle, fsinfo); in nfs4_do_fsinfo()
5151 trace_nfs4_fsinfo(server, fhandle, fsinfo->fattr, err); in nfs4_do_fsinfo()
5153 nfs4_set_lease_period(server->nfs_client, fsinfo->lease_time * HZ); in nfs4_do_fsinfo()
5156 err = nfs4_handle_exception(server, err, &exception); in nfs4_do_fsinfo()
5161 static int nfs4_proc_fsinfo(struct nfs_server *server, struct nfs_fh *fhandle, struct nfs_fsinfo *f… in nfs4_proc_fsinfo() argument
5166 error = nfs4_do_fsinfo(server, fhandle, fsinfo); in nfs4_proc_fsinfo()
5169 server->pnfs_blksize = fsinfo->blksize; in nfs4_proc_fsinfo()
5170 set_pnfs_layoutdriver(server, fhandle, fsinfo); in nfs4_proc_fsinfo()
5176 static int _nfs4_proc_pathconf(struct nfs_server *server, struct nfs_fh *fhandle, in _nfs4_proc_pathconf() argument
5181 .bitmask = server->attr_bitmask, in _nfs4_proc_pathconf()
5199 return nfs4_call_sync(server->client, server, &msg, &args.seq_args, &res.seq_res, 0); in _nfs4_proc_pathconf()
5202 static int nfs4_proc_pathconf(struct nfs_server *server, struct nfs_fh *fhandle, in nfs4_proc_pathconf() argument
5211 err = nfs4_handle_exception(server, in nfs4_proc_pathconf()
5212 _nfs4_proc_pathconf(server, fhandle, pathconf), in nfs4_proc_pathconf()
5257 struct nfs_server *server = NFS_SERVER(hdr->inode); in nfs4_read_done_cb() local
5267 server, task->tk_status, &exception); in nfs4_read_done_cb()
5275 renew_lease(server, hdr->timestamp); in nfs4_read_done_cb()
5296 struct nfs_server *server = NFS_SERVER(hdr->inode); in nfs4_read_plus_not_supported() local
5300 server->caps & NFS_CAP_READ_PLUS && task->tk_status == -ENOTSUPP) { in nfs4_read_plus_not_supported()
5301 server->caps &= ~NFS_CAP_READ_PLUS; in nfs4_read_plus_not_supported()
5326 static void nfs42_read_plus_support(struct nfs_server *server, struct rpc_message *msg) in nfs42_read_plus_support() argument
5328 if (server->caps & NFS_CAP_READ_PLUS) in nfs42_read_plus_support()
5334 static void nfs42_read_plus_support(struct nfs_server *server, struct rpc_message *msg) in nfs42_read_plus_support() argument
5431 struct inode *inode, struct nfs_server *server, in nfs4_bitmask_set() argument
5464 bitmask[i] &= server->attr_bitmask[i]; in nfs4_bitmask_set()
5471 struct nfs_server *server = NFS_SERVER(hdr->inode); in nfs4_proc_write_setup() local
5478 server->cache_consistency_bitmask, in nfs4_proc_write_setup()
5479 hdr->inode, server, NULL); in nfs4_proc_write_setup()
5485 hdr->res.server = server; in nfs4_proc_write_setup()
5490 nfs4_state_protect_write(server->nfs_client, clnt, msg, hdr); in nfs4_proc_write_setup()
5524 struct nfs_server *server = NFS_SERVER(data->inode); in nfs4_proc_commit_setup() local
5528 data->res.server = server; in nfs4_proc_commit_setup()
5531 nfs4_state_protect(server->nfs_client, NFS_SP4_MACH_CRED_COMMIT, clnt, msg); in nfs4_proc_commit_setup()
5538 struct nfs_server *server = NFS_SERVER(dst_inode); in _nfs4_proc_commit() local
5546 return nfs4_call_sync(server->client, server, &msg, in _nfs4_proc_commit()
5660 static inline int nfs4_server_supports_acls(struct nfs_server *server) in nfs4_server_supports_acls() argument
5662 return server->caps & NFS_CAP_ACLS; in nfs4_server_supports_acls()
5771 * the required buf. On a NULL buf, we send a page of data to the server
5776 * the server, this time with the input buf of the required size.
5795 struct nfs_server *server = NFS_SERVER(inode); in __nfs4_get_acl_uncached() local
5798 buflen = server->rsize; in __nfs4_get_acl_uncached()
5873 struct nfs_server *server = NFS_SERVER(inode); in nfs4_proc_get_acl() local
5876 if (!nfs4_server_supports_acls(server)) in nfs4_proc_get_acl()
5878 ret = nfs_revalidate_inode(server, inode); in nfs4_proc_get_acl()
5893 struct nfs_server *server = NFS_SERVER(inode); in __nfs4_proc_set_acl() local
5912 if (!nfs4_server_supports_acls(server)) in __nfs4_proc_set_acl()
5920 ret = nfs4_call_sync(server->client, server, &msg, &arg.seq_args, &res.seq_res, 1); in __nfs4_proc_set_acl()
5968 struct nfs_server *server = NFS_SERVER(inode); in _nfs4_get_security_label() local
5980 .server = server, in _nfs4_get_security_label()
5991 ret = nfs4_call_sync(server->client, server, &msg, &arg.seq_args, &res.seq_res, 0); in _nfs4_get_security_label()
6026 struct nfs_server *server = NFS_SERVER(inode); in _nfs4_do_set_security_label() local
6031 .server = server, in _nfs4_do_set_security_label()
6038 .server = server, in _nfs4_do_set_security_label()
6049 status = nfs4_call_sync(server->client, server, &msg, &arg.seq_args, &res.seq_res, 1); in _nfs4_do_set_security_label()
6414 renew_lease(data->res.server, data->timestamp); in nfs4_delegreturn_done()
6419 nfs4_free_revoked_stateid(data->res.server, in nfs4_delegreturn_done()
6445 data->res.server, task->tk_status, in nfs4_delegreturn_done()
6491 nfs4_setup_sequence(d_data->res.server->nfs_client, in nfs4_delegreturn_prepare()
6506 struct nfs_server *server = NFS_SERVER(inode); in _nfs4_proc_delegreturn() local
6513 .rpc_client = server->client, in _nfs4_proc_delegreturn()
6524 nfs4_state_protect(server->nfs_client, in _nfs4_proc_delegreturn()
6531 server->cache_consistency_bitmask, inode, server, in _nfs4_proc_delegreturn()
6537 data->res.server = server; in _nfs4_proc_delegreturn()
6578 struct nfs_server *server = NFS_SERVER(inode); in nfs4_proc_delegreturn() local
6590 err = nfs4_handle_exception(server, err, &exception); in nfs4_proc_delegreturn()
6598 struct nfs_server *server = NFS_SERVER(inode); in _nfs4_proc_getlk() local
6599 struct nfs_client *clp = server->nfs_client; in _nfs4_proc_getlk()
6622 arg.lock_owner.s_dev = server->s_dev; in _nfs4_proc_getlk()
6623 status = nfs4_call_sync(server->client, server, &msg, &arg.seq_args, &res.seq_res, 1); in _nfs4_proc_getlk()
6696 struct nfs_server *server; member
6722 p->server = NFS_SERVER(inode); in nfs4_alloc_unlockdata()
6751 renew_lease(calldata->server, calldata->timestamp); in nfs4_locku_done()
6759 nfs4_free_revoked_stateid(calldata->server, in nfs4_locku_done()
6776 calldata->server, task->tk_status, in nfs4_locku_done()
6799 if (nfs4_setup_sequence(calldata->server->nfs_client, in nfs4_locku_prepare()
6916 struct nfs_server *server; member
6925 struct nfs_server *server = NFS_SERVER(inode); in nfs4_alloc_lockdata() local
6937 alloc_seqid = server->nfs_client->cl_mvops->alloc_seqid; in nfs4_alloc_lockdata()
6941 p->arg.lock_owner.clientid = server->nfs_client->cl_clientid; in nfs4_alloc_lockdata()
6943 p->arg.lock_owner.s_dev = server->s_dev; in nfs4_alloc_lockdata()
6946 p->server = server; in nfs4_alloc_lockdata()
6986 if (nfs4_setup_sequence(data->server->nfs_client, in nfs4_lock_prepare()
7075 static void nfs4_handle_setlk_error(struct nfs_server *server, struct nfs4_lock_state *lsp, int new… in nfs4_handle_setlk_error() argument
7084 nfs4_schedule_stateid_recovery(server, lsp->ls_state); in nfs4_handle_setlk_error()
7088 nfs4_schedule_lease_recovery(server->nfs_client); in nfs4_handle_setlk_error()
7134 nfs4_handle_setlk_error(data->server, data->lsp, in _nfs4_do_setlk()
7146 struct nfs_server *server = NFS_SERVER(state->inode); in nfs4_lock_reclaim() local
7159 nfs4_handle_exception(server, err, &exception); in nfs4_lock_reclaim()
7166 struct nfs_server *server = NFS_SERVER(state->inode); in nfs4_lock_expired() local
7188 nfs4_handle_exception(server, err, &exception); in nfs4_lock_expired()
7326 struct nfs_server *server = NFS_SERVER(state->inode); in nfs4_retry_setlk() local
7327 struct nfs_client *clp = server->nfs_client; in nfs4_retry_setlk()
7331 .s_dev = server->s_dev }; in nfs4_retry_setlk()
7426 struct nfs_server *server = NFS_SERVER(state->inode); in nfs4_lock_delegation_recall() local
7438 return nfs4_handle_delegation_recall_error(server, state, stateid, fl, err); in nfs4_lock_delegation_recall()
7443 struct nfs_server *server; member
7452 struct nfs_server *server = data->server; in nfs4_release_lockowner_prepare() local
7453 nfs4_setup_sequence(server->nfs_client, &data->args.seq_args, in nfs4_release_lockowner_prepare()
7455 data->args.lock_owner.clientid = server->nfs_client->cl_clientid; in nfs4_release_lockowner_prepare()
7462 struct nfs_server *server = data->server; in nfs4_release_lockowner_done() local
7468 renew_lease(server, data->timestamp); in nfs4_release_lockowner_done()
7472 nfs4_schedule_lease_recovery(server->nfs_client); in nfs4_release_lockowner_done()
7476 if (nfs4_async_handle_error(task, server, in nfs4_release_lockowner_done()
7485 nfs4_free_lock_state(data->server, data->lsp); in nfs4_release_lockowner_release()
7496 nfs4_release_lockowner(struct nfs_server *server, struct nfs4_lock_state *lsp) in nfs4_release_lockowner() argument
7503 if (server->nfs_client->cl_mvops->minor_version != 0) in nfs4_release_lockowner()
7510 data->server = server; in nfs4_release_lockowner()
7511 data->args.lock_owner.clientid = server->nfs_client->cl_clientid; in nfs4_release_lockowner()
7513 data->args.lock_owner.s_dev = server->s_dev; in nfs4_release_lockowner()
7518 rpc_call_async(server->client, &msg, 0, &nfs4_release_lockowner_ops, data); in nfs4_release_lockowner()
7611 * Just in case the server has other ideas (which RFC 8276 allows), in nfs4_xattr_set_nfs4_user()
7743 struct nfs_server *server = NFS_SERVER(dir); in _nfs4_proc_fs_locations() local
7774 fs_locations->server = server; in _nfs4_proc_fs_locations()
7776 status = nfs4_call_sync(client, server, &msg, &args.seq_args, &res.seq_res, 0); in _nfs4_proc_fs_locations()
7801 * This operation also signals the server that this client is
7802 * performing migration recovery. The server can stop returning
7811 struct nfs_server *server = NFS_SERVER(inode); in _nfs40_proc_get_locations() local
7812 struct rpc_clnt *clnt = server->client; in _nfs40_proc_get_locations()
7817 .clientid = server->nfs_client->cl_clientid, in _nfs40_proc_get_locations()
7839 locations->server = server; in _nfs40_proc_get_locations()
7843 status = nfs4_call_sync_sequence(clnt, server, &msg, in _nfs40_proc_get_locations()
7848 renew_lease(server, now); in _nfs40_proc_get_locations()
7855 * This operation also signals the server that this client is
7856 * performing migration recovery. The server can stop asserting
7868 struct nfs_server *server = NFS_SERVER(inode); in _nfs41_proc_get_locations() local
7869 struct rpc_clnt *clnt = server->client; in _nfs41_proc_get_locations()
7892 locations->server = server; in _nfs41_proc_get_locations()
7896 status = nfs4_call_sync_sequence(clnt, server, &msg, in _nfs41_proc_get_locations()
7916 * On success, "locations" is filled in, but if the server has
7920 * -NFS4ERR_LEASE_MOVED is returned if the server still has leases
7927 struct nfs_server *server = NFS_SERVER(inode); in nfs4_proc_get_locations() local
7928 struct nfs_client *clp = server->nfs_client; in nfs4_proc_get_locations()
7937 (unsigned long long)server->fsid.major, in nfs4_proc_get_locations()
7938 (unsigned long long)server->fsid.minor, in nfs4_proc_get_locations()
7946 nfs4_handle_exception(server, status, &exception); in nfs4_proc_get_locations()
7952 * This operation also signals the server that this client is
7953 * performing "lease moved" recovery. The server can stop
7960 struct nfs_server *server = NFS_SERVER(inode); in _nfs40_proc_fsid_present() local
7962 struct rpc_clnt *clnt = server->client; in _nfs40_proc_fsid_present()
7985 status = nfs4_call_sync_sequence(clnt, server, &msg, in _nfs40_proc_fsid_present()
7998 * This operation also signals the server that this client is
7999 * performing "lease moved" recovery. The server can stop asserting
8006 struct nfs_server *server = NFS_SERVER(inode); in _nfs41_proc_fsid_present() local
8007 struct rpc_clnt *clnt = server->client; in _nfs41_proc_fsid_present()
8026 status = nfs4_call_sync_sequence(clnt, server, &msg, in _nfs41_proc_fsid_present()
8038 * nfs4_proc_fsid_present - Is this FSID present or absent on server?
8042 * Server indicates whether the FSID is present, moved, or not
8046 * Returns NFS4_OK if the FSID is present on this server,
8048 * NFS4ERR code if some error occurred on the server, or a
8053 struct nfs_server *server = NFS_SERVER(inode); in nfs4_proc_fsid_present() local
8054 struct nfs_client *clp = server->nfs_client; in nfs4_proc_fsid_present()
8063 (unsigned long long)server->fsid.major, in nfs4_proc_fsid_present()
8064 (unsigned long long)server->fsid.minor, in nfs4_proc_fsid_present()
8072 nfs4_handle_exception(server, status, &exception); in nfs4_proc_fsid_present()
8167 * Check the exchange flags returned by the server for invalid flags, having
8278 dprintk("NFS: %s: Unexpected direction from server\n", in nfs4_proc_bind_one_conn_to_session()
8283 dprintk("NFS: %s: Server returned RDMA mode = true\n", in nfs4_proc_bind_one_conn_to_session()
8346 * Select the state protection mode for client `clp' given the server results
8367 dfprintk(MOUNT, "Server SP4_MACH_CRED support:\n"); in nfs4_sp4_select_mode()
8717 dprintk("NFS: Got error %d from the server %s on " in _nfs4_proc_destroy_clientid()
8909 * So, no point even trying to continue if the server won't in nfs4_verify_fore_channel_attrs()
9018 * Issues a CREATE_SESSION operation to the server.
9073 dprintk("NFS: Got error %d from the server on DESTROY_SESSION. " in nfs4_proc_destroy_session()
9345 struct nfs_server *server = NFS_SERVER(lgp->args.inode); in nfs4_layoutget_prepare() local
9348 nfs4_setup_sequence(server->nfs_client, &lgp->args.seq_args, in nfs4_layoutget_prepare()
9367 struct nfs_server *server = NFS_SERVER(inode); in nfs4_layoutget_handle_exception() local
9441 err = nfs4_handle_exception(server, nfs4err, exception); in nfs4_layoutget_handle_exception()
9453 size_t max_response_pages(struct nfs_server *server) in max_response_pages() argument
9455 u32 max_resp_sz = server->nfs_client->cl_session->fc_attrs.max_resp_sz; in max_response_pages()
9479 struct nfs_server *server = NFS_SERVER(inode); in nfs4_proc_layoutget() local
9488 .rpc_client = server->client, in nfs4_proc_layoutget()
9553 struct nfs_server *server; in nfs4_layoutreturn_done() local
9569 server = NFS_SERVER(lrp->args.inode); in nfs4_layoutreturn_done()
9583 if (nfs4_async_handle_error(task, server, NULL, NULL) != -EAGAIN) in nfs4_layoutreturn_done()
9667 _nfs4_proc_getdeviceinfo(struct nfs_server *server, in _nfs4_proc_getdeviceinfo() argument
9688 status = nfs4_call_sync(server->client, server, &msg, &args.seq_args, &res.seq_res, 0); in _nfs4_proc_getdeviceinfo()
9699 int nfs4_proc_getdeviceinfo(struct nfs_server *server, in nfs4_proc_getdeviceinfo() argument
9707 err = nfs4_handle_exception(server, in nfs4_proc_getdeviceinfo()
9708 _nfs4_proc_getdeviceinfo(server, pdev, cred), in nfs4_proc_getdeviceinfo()
9718 struct nfs_server *server = NFS_SERVER(data->args.inode); in nfs4_layoutcommit_prepare() local
9720 nfs4_setup_sequence(server->nfs_client, in nfs4_layoutcommit_prepare()
9730 struct nfs_server *server = NFS_SERVER(data->args.inode); in nfs4_layoutcommit_done() local
9744 if (nfs4_async_handle_error(task, server, NULL, NULL) == -EAGAIN) { in nfs4_layoutcommit_done()
9818 _nfs41_proc_secinfo_no_name(struct nfs_server *server, struct nfs_fh *fhandle, in _nfs41_proc_secinfo_no_name() argument
9834 .seq_server = server, in _nfs41_proc_secinfo_no_name()
9839 .rpc_client = server->client, in _nfs41_proc_secinfo_no_name()
9841 .callback_ops = server->nfs_client->cl_mvops->call_sync_ops, in _nfs41_proc_secinfo_no_name()
9849 task_setup.rpc_client = server->nfs_client->cl_rpcclient; in _nfs41_proc_secinfo_no_name()
9851 cred = nfs4_get_clid_cred(server->nfs_client); in _nfs41_proc_secinfo_no_name()
9866 nfs41_proc_secinfo_no_name(struct nfs_server *server, struct nfs_fh *fhandle, in nfs41_proc_secinfo_no_name() argument
9878 if (_nfs4_is_integrity_protected(server->nfs_client)) in nfs41_proc_secinfo_no_name()
9879 err = _nfs41_proc_secinfo_no_name(server, fhandle, info, in nfs41_proc_secinfo_no_name()
9889 err = _nfs41_proc_secinfo_no_name(server, fhandle, info, in nfs41_proc_secinfo_no_name()
9898 err = nfs4_handle_exception(server, err, &exception); in nfs41_proc_secinfo_no_name()
9906 nfs41_find_root_sec(struct nfs_server *server, struct nfs_fh *fhandle, in nfs41_find_root_sec() argument
9923 err = nfs41_proc_secinfo_no_name(server, fhandle, info, flavors); in nfs41_find_root_sec()
9927 * the server doesn't support SECINFO_NO_NAME in nfs41_find_root_sec()
9930 err = nfs4_find_root_sec(server, fhandle, info); in nfs41_find_root_sec()
9951 if (!nfs_auth_info_match(&server->auth_info, flavor)) in nfs41_find_root_sec()
9955 err = nfs4_lookup_root_sec(server, fhandle, in nfs41_find_root_sec()
9973 static int _nfs41_test_stateid(struct nfs_server *server, in _nfs41_test_stateid() argument
9988 struct rpc_clnt *rpc_client = server->client; in _nfs41_test_stateid()
9990 nfs4_state_protect(server->nfs_client, NFS_SP4_MACH_CRED_STATEID, in _nfs41_test_stateid()
9995 status = nfs4_call_sync_sequence(rpc_client, server, &msg, in _nfs41_test_stateid()
10005 static void nfs4_handle_delay_or_session_error(struct nfs_server *server, in nfs4_handle_delay_or_session_error() argument
10012 nfs4_handle_exception(server, err, exception); in nfs4_handle_delay_or_session_error()
10019 nfs4_do_handle_exception(server, err, exception); in nfs4_handle_delay_or_session_error()
10026 * @server: server / transport on which to perform the operation
10030 * Returns NFS_OK if the server recognizes that "stateid" is valid.
10034 static int nfs41_test_stateid(struct nfs_server *server, in nfs41_test_stateid() argument
10043 err = _nfs41_test_stateid(server, stateid, cred); in nfs41_test_stateid()
10044 nfs4_handle_delay_or_session_error(server, err, &exception); in nfs41_test_stateid()
10050 struct nfs_server *server; member
10058 nfs4_setup_sequence(data->server->nfs_client, in nfs41_free_stateid_prepare()
10072 if (nfs4_async_handle_error(task, data->server, NULL, NULL) == -EAGAIN) in nfs41_free_stateid_done()
10091 * @server: server / transport on which to perform the operation
10098 static int nfs41_free_stateid(struct nfs_server *server, in nfs41_free_stateid() argument
10108 .rpc_client = server->client, in nfs41_free_stateid()
10116 nfs4_state_protect(server->nfs_client, NFS_SP4_MACH_CRED_STATEID, in nfs41_free_stateid()
10123 data->server = server; in nfs41_free_stateid()
10139 nfs41_free_lock_state(struct nfs_server *server, struct nfs4_lock_state *lsp) in nfs41_free_lock_state() argument
10143 nfs41_free_stateid(server, &lsp->ls_stateid, cred, false); in nfs41_free_lock_state()
10144 nfs4_free_lock_state(server, lsp); in nfs41_free_lock_state()