Lines Matching refs:server

96 static int _nfs4_proc_getattr(struct nfs_server *server, struct nfs_fh *fhandle,
144 static inline u32 *nfs4_bitmask(struct nfs_server *server, struct nfs4_label *label) in nfs4_bitmask() argument
147 return server->attr_bitmask; in nfs4_bitmask()
149 return server->attr_bitmask_nl; in nfs4_bitmask()
160 nfs4_bitmask(struct nfs_server *server, struct nfs4_label *label) in nfs4_bitmask() argument
161 { return server->attr_bitmask; } in nfs4_bitmask()
379 static void nfs4_test_and_free_stateid(struct nfs_server *server, in nfs4_test_and_free_stateid() argument
383 const struct nfs4_minor_version_ops *ops = server->nfs_client->cl_mvops; in nfs4_test_and_free_stateid()
385 ops->test_and_free_expired(server, stateid, cred); in nfs4_test_and_free_stateid()
388 static void __nfs4_free_revoked_stateid(struct nfs_server *server, in __nfs4_free_revoked_stateid() argument
393 nfs4_test_and_free_stateid(server, stateid, cred); in __nfs4_free_revoked_stateid()
396 static void nfs4_free_revoked_stateid(struct nfs_server *server, in nfs4_free_revoked_stateid() argument
403 __nfs4_free_revoked_stateid(server, &tmp, cred); in nfs4_free_revoked_stateid()
468 static int nfs4_do_handle_exception(struct nfs_server *server, in nfs4_do_handle_exception() argument
471 struct nfs_client *clp = server->nfs_client; in nfs4_do_handle_exception()
519 ret = nfs4_schedule_stateid_recovery(server, state); in nfs4_do_handle_exception()
528 ret = nfs4_schedule_migration_recovery(server); in nfs4_do_handle_exception()
556 nfs_inc_server_stats(server, NFSIOS_DELAY); in nfs4_do_handle_exception()
571 if (server->caps & NFS_CAP_UIDGID_NOMAP) { in nfs4_do_handle_exception()
572 server->caps &= ~NFS_CAP_UIDGID_NOMAP; in nfs4_do_handle_exception()
578 server->nfs_client->cl_hostname); in nfs4_do_handle_exception()
591 int nfs4_handle_exception(struct nfs_server *server, int errorcode, struct nfs4_exception *exceptio… in nfs4_handle_exception() argument
593 struct nfs_client *clp = server->nfs_client; in nfs4_handle_exception()
596 ret = nfs4_do_handle_exception(server, errorcode, exception); in nfs4_handle_exception()
606 if (test_bit(NFS_MIG_FAILED, &server->mig_status)) in nfs4_handle_exception()
618 nfs4_async_handle_exception(struct rpc_task *task, struct nfs_server *server, in nfs4_async_handle_exception() argument
621 struct nfs_client *clp = server->nfs_client; in nfs4_async_handle_exception()
624 ret = nfs4_do_handle_exception(server, errorcode, exception); in nfs4_async_handle_exception()
637 if (test_bit(NFS_MIG_FAILED, &server->mig_status)) in nfs4_async_handle_exception()
654 nfs4_async_handle_error(struct rpc_task *task, struct nfs_server *server, in nfs4_async_handle_error() argument
665 task->tk_status = nfs4_async_handle_exception(task, server, in nfs4_async_handle_error()
693 static void renew_lease(const struct nfs_server *server, unsigned long timestamp) in renew_lease() argument
695 struct nfs_client *clp = server->nfs_client; in renew_lease()
1138 struct nfs_server *server, in nfs4_do_call_sync() argument
1144 struct nfs_client *clp = server->nfs_client; in nfs4_do_call_sync()
1146 .seq_server = server, in nfs4_do_call_sync()
1162 struct nfs_server *server, in nfs4_call_sync_sequence() argument
1169 if (server->caps & NFS_CAP_MOVEABLE) in nfs4_call_sync_sequence()
1171 return nfs4_do_call_sync(clnt, server, msg, args, res, task_flags); in nfs4_call_sync_sequence()
1176 struct nfs_server *server, in nfs4_call_sync() argument
1183 return nfs4_call_sync_sequence(clnt, server, msg, args, res); in nfs4_call_sync()
1270 static bool nfs4_clear_cap_atomic_open_v1(struct nfs_server *server, in nfs4_clear_cap_atomic_open_v1() argument
1275 if (!(server->caps & NFS_CAP_ATOMIC_OPEN_V1)) in nfs4_clear_cap_atomic_open_v1()
1277 server->caps &= ~NFS_CAP_ATOMIC_OPEN_V1; in nfs4_clear_cap_atomic_open_v1()
1295 nfs4_map_atomic_open_share(struct nfs_server *server, in nfs4_map_atomic_open_share() argument
1310 if (!(server->caps & NFS_CAP_ATOMIC_OPEN_V1)) in nfs4_map_atomic_open_share()
1320 nfs4_map_atomic_open_claim(struct nfs_server *server, in nfs4_map_atomic_open_claim() argument
1323 if (server->caps & NFS_CAP_ATOMIC_OPEN_V1) in nfs4_map_atomic_open_claim()
1342 p->o_res.server = p->o_arg.server; in nfs4_init_opendata_res()
1356 struct nfs_server *server = NFS_SERVER(dir); in nfs4_opendata_alloc() local
1365 p->f_attr.label = nfs4_label_alloc(server, gfp_mask); in nfs4_opendata_alloc()
1369 p->a_label = nfs4_label_alloc(server, gfp_mask); in nfs4_opendata_alloc()
1373 alloc_seqid = server->nfs_client->cl_mvops->alloc_seqid; in nfs4_opendata_alloc()
1384 p->o_arg.claim = nfs4_map_atomic_open_claim(server, claim); in nfs4_opendata_alloc()
1385 p->o_arg.share_access = nfs4_map_atomic_open_share(server, in nfs4_opendata_alloc()
1408 nfs_access_xattr_mask(server); in nfs4_opendata_alloc()
1410 p->o_arg.clientid = server->nfs_client->cl_clientid; in nfs4_opendata_alloc()
1414 p->o_arg.server = server; in nfs4_opendata_alloc()
1415 p->o_arg.bitmask = nfs4_bitmask(server, label); in nfs4_opendata_alloc()
1798 struct nfs_server *server = NFS_SERVER(state->inode); in update_open_stateid() local
1799 struct nfs_client *clp = server->nfs_client; in update_open_stateid()
1843 nfs4_test_and_free_stateid(server, &freeme, in update_open_stateid()
2137 struct nfs_server *server = NFS_SB(opendata->dentry->d_sb); in nfs4_open_recover_helper() local
2145 nfs4_map_atomic_open_share(server, fmode, openflags); in nfs4_open_recover_helper()
2218 struct nfs_server *server = NFS_SERVER(state->inode); in nfs4_do_open_reclaim() local
2224 if (nfs4_clear_cap_atomic_open_v1(server, err, &exception)) in nfs4_do_open_reclaim()
2228 nfs4_handle_exception(server, err, &exception); in nfs4_do_open_reclaim()
2248 static int nfs4_handle_delegation_recall_error(struct nfs_server *server, struct nfs4_state *state,… in nfs4_handle_delegation_recall_error() argument
2270 nfs4_schedule_lease_recovery(server->nfs_client); in nfs4_handle_delegation_recall_error()
2273 nfs4_schedule_migration_recovery(server); in nfs4_handle_delegation_recall_error()
2276 nfs4_schedule_lease_moved_recovery(server->nfs_client); in nfs4_handle_delegation_recall_error()
2285 nfs4_schedule_stateid_recovery(server, state); in nfs4_handle_delegation_recall_error()
2306 struct nfs_server *server = NFS_SERVER(state->inode); in nfs4_open_delegation_recall() local
2333 return nfs4_handle_delegation_recall_error(server, state, stateid, NULL, err); in nfs4_open_delegation_recall()
2340 nfs4_setup_sequence(data->o_arg.server->nfs_client, in nfs4_open_confirm_prepare()
2354 renew_lease(data->o_res.server, data->timestamp); in nfs4_open_confirm_done()
2388 struct nfs_server *server = NFS_SERVER(d_inode(data->dir)); in _nfs4_proc_open_confirm() local
2397 .rpc_client = server->client, in _nfs4_proc_open_confirm()
2464 if (nfs4_setup_sequence(data->o_arg.server->nfs_client, in nfs4_open_prepare()
2517 renew_lease(data->o_res.server, data->timestamp); in nfs4_open_done()
2555 struct nfs_server *server = NFS_SERVER(dir); in nfs4_run_open_task() local
2566 .rpc_client = server->client, in nfs4_run_open_task()
2670 struct nfs_server *server = NFS_SERVER(dir); in _nfs4_proc_open() local
2685 nfs_fattr_map_and_free_names(server, &data->f_attr); in _nfs4_proc_open()
2699 server->caps &= ~NFS_CAP_POSIX_LOCK; in _nfs4_proc_open()
2707 nfs4_proc_getattr(server, &o_res->fh, o_res->f_attr, NULL); in _nfs4_proc_open()
2740 struct nfs_server *server = NFS_SERVER(state->inode); in nfs4_do_open_expired() local
2747 if (nfs4_clear_cap_atomic_open_v1(server, err, &exception)) in nfs4_do_open_expired()
2754 nfs4_handle_exception(server, err, &exception); in nfs4_do_open_expired()
2796 static int nfs40_test_and_free_expired_stateid(struct nfs_server *server, in nfs40_test_and_free_expired_stateid() argument
2804 static int nfs41_test_and_free_expired_stateid(struct nfs_server *server, in nfs41_test_and_free_expired_stateid() argument
2820 status = nfs41_test_stateid(server, stateid, cred); in nfs41_test_and_free_expired_stateid()
2831 nfs41_free_stateid(server, stateid, cred, true); in nfs41_test_and_free_expired_stateid()
2837 struct nfs_server *server = NFS_SERVER(state->inode); in nfs41_check_delegation_stateid() local
2866 status = nfs41_test_and_free_expired_stateid(server, &stateid, cred); in nfs41_check_delegation_stateid()
2902 struct nfs_server *server = NFS_SERVER(state->inode); in nfs41_check_expired_locks() local
2918 status = nfs41_test_and_free_expired_stateid(server, in nfs41_check_expired_locks()
2952 struct nfs_server *server = NFS_SERVER(state->inode); in nfs41_check_open_stateid() local
2959 status = nfs41_test_and_free_expired_stateid(server, stateid, cred); in nfs41_check_open_stateid()
2998 const __u32 *bitmask = opendata->o_arg.server->exclcreat_bitmask; in nfs4_exclusive_attrset()
3035 struct nfs_server *server = sp->so_server; in _nfs4_open_and_get_state() local
3056 if (server->caps & NFS_CAP_POSIX_LOCK) in _nfs4_open_and_get_state()
3100 nfs4_schedule_stateid_recovery(server, state); in _nfs4_open_and_get_state()
3125 struct nfs_server *server = NFS_SERVER(dir); in _nfs4_do_open() local
3138 sp = nfs4_get_state_owner(server, cred, GFP_KERNEL); in _nfs4_do_open()
3143 status = nfs4_client_recover_expired_lease(server->nfs_client); in _nfs4_do_open()
3156 if (server->attr_bitmask[2] & FATTR4_WORD2_MDSTHRESHOLD) { in _nfs4_do_open()
3198 if (pnfs_use_threshold(ctx_th, opendata->f_attr.mdsthreshold, server)) { in _nfs4_do_open()
3222 struct nfs_server *server = NFS_SERVER(dir); in nfs4_do_open() local
3272 nfs4_schedule_lease_recovery(server->nfs_client); in nfs4_do_open()
3281 if (nfs4_clear_cap_atomic_open_v1(server, status, &exception)) in nfs4_do_open()
3283 res = ERR_PTR(nfs4_handle_exception(server, in nfs4_do_open()
3295 struct nfs_server *server = NFS_SERVER(inode); in _nfs4_do_setattr() local
3339 status = nfs4_call_sync(server->client, server, &msg, &arg->seq_args, &res->seq_res, 1); in _nfs4_do_setattr()
3343 renew_lease(server, timestamp); in _nfs4_do_setattr()
3352 struct nfs_server *server = NFS_SERVER(inode); in nfs4_do_setattr() local
3358 .server = server, in nfs4_do_setattr()
3364 .server = server, in nfs4_do_setattr()
3380 nfs4_bitmap_copy_adjust(bitmask, nfs4_bitmask(server, fattr->label), in nfs4_do_setattr()
3391 server->nfs_client->cl_hostname); in nfs4_do_setattr()
3400 err = nfs4_handle_exception(server, err, &exception); in nfs4_do_setattr()
3547 struct nfs_server *server = NFS_SERVER(calldata->inode); in nfs4_close_done() local
3570 renew_lease(server, calldata->timestamp); in nfs4_close_done()
3589 nfs4_free_revoked_stateid(server, in nfs4_close_done()
3599 server, task->tk_status, &exception); in nfs4_close_done()
3622 struct nfs_server *server = NFS_SERVER(inode); in nfs4_close_prepare() local
3679 server->cache_consistency_bitmask, in nfs4_close_prepare()
3726 struct nfs_server *server = NFS_SERVER(state->inode); in nfs4_do_close() local
3736 .rpc_client = server->client, in nfs4_do_close()
3747 nfs4_state_protect(server->nfs_client, NFS_SP4_MACH_CRED_CLEANUP, in nfs4_do_close()
3760 alloc_seqid = server->nfs_client->cl_mvops->alloc_seqid; in nfs4_do_close()
3769 calldata->res.server = server; in nfs4_do_close()
3831 static int _nfs4_server_capabilities(struct nfs_server *server, struct nfs_fh *fhandle) in _nfs4_server_capabilities() argument
3833 u32 bitmask[3] = {}, minorversion = server->nfs_client->cl_minorversion; in _nfs4_server_capabilities()
3857 status = nfs4_call_sync(server->client, server, &msg, &args.seq_args, &res.seq_res, 0); in _nfs4_server_capabilities()
3871 memcpy(server->attr_bitmask, res.attr_bitmask, sizeof(server->attr_bitmask)); in _nfs4_server_capabilities()
3872 server->caps &= ~(NFS_CAP_ACLS | NFS_CAP_HARDLINKS | in _nfs4_server_capabilities()
3874 server->fattr_valid = NFS_ATTR_FATTR_V4; in _nfs4_server_capabilities()
3877 server->caps |= NFS_CAP_ACLS; in _nfs4_server_capabilities()
3879 server->caps |= NFS_CAP_HARDLINKS; in _nfs4_server_capabilities()
3881 server->caps |= NFS_CAP_SYMLINKS; in _nfs4_server_capabilities()
3883 server->caps |= NFS_CAP_CASE_INSENSITIVE; in _nfs4_server_capabilities()
3885 server->caps |= NFS_CAP_CASE_PRESERVING; in _nfs4_server_capabilities()
3888 server->caps |= NFS_CAP_SECURITY_LABEL; in _nfs4_server_capabilities()
3891 server->caps |= NFS_CAP_FS_LOCATIONS; in _nfs4_server_capabilities()
3893 server->fattr_valid &= ~NFS_ATTR_FATTR_FILEID; in _nfs4_server_capabilities()
3895 server->fattr_valid &= ~NFS_ATTR_FATTR_MODE; in _nfs4_server_capabilities()
3897 server->fattr_valid &= ~NFS_ATTR_FATTR_NLINK; in _nfs4_server_capabilities()
3899 server->fattr_valid &= ~(NFS_ATTR_FATTR_OWNER | in _nfs4_server_capabilities()
3902 server->fattr_valid &= ~(NFS_ATTR_FATTR_GROUP | in _nfs4_server_capabilities()
3905 server->fattr_valid &= ~NFS_ATTR_FATTR_SPACE_USED; in _nfs4_server_capabilities()
3907 server->fattr_valid &= ~NFS_ATTR_FATTR_ATIME; in _nfs4_server_capabilities()
3909 server->fattr_valid &= ~NFS_ATTR_FATTR_CTIME; in _nfs4_server_capabilities()
3911 server->fattr_valid &= ~NFS_ATTR_FATTR_MTIME; in _nfs4_server_capabilities()
3912 memcpy(server->attr_bitmask_nl, res.attr_bitmask, in _nfs4_server_capabilities()
3913 sizeof(server->attr_bitmask)); in _nfs4_server_capabilities()
3914 server->attr_bitmask_nl[2] &= ~FATTR4_WORD2_SECURITY_LABEL; in _nfs4_server_capabilities()
3916 …memcpy(server->cache_consistency_bitmask, res.attr_bitmask, sizeof(server->cache_consistency_bitma… in _nfs4_server_capabilities()
3917 server->cache_consistency_bitmask[0] &= FATTR4_WORD0_CHANGE|FATTR4_WORD0_SIZE; in _nfs4_server_capabilities()
3918 server->cache_consistency_bitmask[1] &= FATTR4_WORD1_TIME_METADATA|FATTR4_WORD1_TIME_MODIFY; in _nfs4_server_capabilities()
3919 server->cache_consistency_bitmask[2] = 0; in _nfs4_server_capabilities()
3924 memcpy(server->exclcreat_bitmask, res.exclcreat_bitmask, in _nfs4_server_capabilities()
3925 sizeof(server->exclcreat_bitmask)); in _nfs4_server_capabilities()
3927 server->acl_bitmask = res.acl_bitmask; in _nfs4_server_capabilities()
3928 server->fh_expire_type = res.fh_expire_type; in _nfs4_server_capabilities()
3934 int nfs4_server_capabilities(struct nfs_server *server, struct nfs_fh *fhandle) in nfs4_server_capabilities() argument
3941 nfs4_server_set_init_caps(server); in nfs4_server_capabilities()
3943 err = nfs4_handle_exception(server, in nfs4_server_capabilities()
3944 _nfs4_server_capabilities(server, fhandle), in nfs4_server_capabilities()
3952 struct nfs_server *server) in test_fs_location_for_trunking() argument
3978 clp->cl_net, server->port); in test_fs_location_for_trunking()
4000 static int _nfs4_discover_trunking(struct nfs_server *server, in _nfs4_discover_trunking() argument
4006 struct nfs_client *clp = server->nfs_client; in _nfs4_discover_trunking()
4028 status = nfs4_proc_get_locations(server, fhandle, locations, page, in _nfs4_discover_trunking()
4035 server); in _nfs4_discover_trunking()
4047 static int nfs4_discover_trunking(struct nfs_server *server, in nfs4_discover_trunking() argument
4053 struct nfs_client *clp = server->nfs_client; in nfs4_discover_trunking()
4059 err = nfs4_handle_exception(server, in nfs4_discover_trunking()
4060 _nfs4_discover_trunking(server, fhandle), in nfs4_discover_trunking()
4067 static int _nfs4_lookup_root(struct nfs_server *server, struct nfs_fh *fhandle, in _nfs4_lookup_root() argument
4075 .server = server, in _nfs4_lookup_root()
4093 return nfs4_call_sync(server->client, server, &msg, &args.seq_args, &res.seq_res, 0); in _nfs4_lookup_root()
4096 static int nfs4_lookup_root(struct nfs_server *server, struct nfs_fh *fhandle, in nfs4_lookup_root() argument
4104 err = _nfs4_lookup_root(server, fhandle, info); in nfs4_lookup_root()
4105 trace_nfs4_lookup_root(server, fhandle, info->fattr, err); in nfs4_lookup_root()
4111 err = nfs4_handle_exception(server, err, &exception); in nfs4_lookup_root()
4118 static int nfs4_lookup_root_sec(struct nfs_server *server, struct nfs_fh *fhandle, in nfs4_lookup_root_sec() argument
4126 auth = rpcauth_create(&auth_args, server->client); in nfs4_lookup_root_sec()
4129 return nfs4_lookup_root(server, fhandle, info); in nfs4_lookup_root_sec()
4141 static int nfs4_find_root_sec(struct nfs_server *server, struct nfs_fh *fhandle, in nfs4_find_root_sec() argument
4155 if (server->auth_info.flavor_len > 0) { in nfs4_find_root_sec()
4157 for (i = 0; i < server->auth_info.flavor_len; i++) { in nfs4_find_root_sec()
4158 status = nfs4_lookup_root_sec(server, fhandle, info, in nfs4_find_root_sec()
4159 server->auth_info.flavors[i]); in nfs4_find_root_sec()
4167 status = nfs4_lookup_root_sec(server, fhandle, info, in nfs4_find_root_sec()
4196 int nfs4_proc_get_rootfh(struct nfs_server *server, struct nfs_fh *fhandle, in nfs4_proc_get_rootfh() argument
4203 status = nfs4_lookup_root(server, fhandle, info); in nfs4_proc_get_rootfh()
4206 status = server->nfs_client->cl_mvops->find_root_sec(server, in nfs4_proc_get_rootfh()
4210 status = nfs4_server_capabilities(server, fhandle); in nfs4_proc_get_rootfh()
4212 status = nfs4_do_fsinfo(server, fhandle, info); in nfs4_proc_get_rootfh()
4217 static int nfs4_proc_get_root(struct nfs_server *server, struct nfs_fh *mntfh, in nfs4_proc_get_root() argument
4223 error = nfs4_server_capabilities(server, mntfh); in nfs4_proc_get_root()
4229 error = nfs4_proc_getattr(server, mntfh, fattr, NULL); in nfs4_proc_get_root()
4236 !nfs_fsid_equal(&server->fsid, &fattr->fsid)) in nfs4_proc_get_root()
4237 memcpy(&server->fsid, &fattr->fsid, sizeof(server->fsid)); in nfs4_proc_get_root()
4290 static int _nfs4_proc_getattr(struct nfs_server *server, struct nfs_fh *fhandle, in _nfs4_proc_getattr() argument
4300 .server = server, in _nfs4_proc_getattr()
4309 if (nfs4_has_session(server->nfs_client)) in _nfs4_proc_getattr()
4313 if (inode && (server->flags & NFS_MOUNT_SOFTREVAL)) in _nfs4_proc_getattr()
4316 nfs4_bitmap_copy_adjust(bitmask, nfs4_bitmask(server, fattr->label), inode, 0); in _nfs4_proc_getattr()
4319 return nfs4_do_call_sync(server->client, server, &msg, in _nfs4_proc_getattr()
4323 int nfs4_proc_getattr(struct nfs_server *server, struct nfs_fh *fhandle, in nfs4_proc_getattr() argument
4331 err = _nfs4_proc_getattr(server, fhandle, fattr, inode); in nfs4_proc_getattr()
4332 trace_nfs4_getattr(server, fhandle, fattr, err); in nfs4_proc_getattr()
4333 err = nfs4_handle_exception(server, err, in nfs4_proc_getattr()
4404 struct nfs_server *server = NFS_SERVER(dir); in _nfs4_proc_lookup() local
4407 .bitmask = server->attr_bitmask, in _nfs4_proc_lookup()
4412 .server = server, in _nfs4_proc_lookup()
4430 args.bitmask = nfs4_bitmask(server, fattr->label); in _nfs4_proc_lookup()
4436 status = nfs4_do_call_sync(clnt, server, &msg, in _nfs4_proc_lookup()
4527 struct nfs_server *server = NFS_SERVER(inode); in _nfs4_proc_lookupp() local
4530 .bitmask = server->attr_bitmask, in _nfs4_proc_lookupp()
4534 .server = server, in _nfs4_proc_lookupp()
4548 args.bitmask = nfs4_bitmask(server, fattr->label); in _nfs4_proc_lookupp()
4553 status = nfs4_call_sync(clnt, server, &msg, &args.seq_args, in _nfs4_proc_lookupp()
4578 struct nfs_server *server = NFS_SERVER(inode); in _nfs4_proc_access() local
4584 .server = server, in _nfs4_proc_access()
4598 args.bitmask = server->cache_consistency_bitmask; in _nfs4_proc_access()
4600 status = nfs4_call_sync(server->client, server, &msg, &args.seq_args, &res.seq_res, 0); in _nfs4_proc_access()
4690 struct nfs_server *server = NFS_SERVER(dir); in nfs4_proc_create() local
4702 if (!(server->attr_bitmask[2] & FATTR4_WORD2_MODE_UMASK)) in nfs4_proc_create()
4718 struct nfs_server *server = NFS_SERVER(dir); in _nfs4_proc_remove() local
4724 .server = server, in _nfs4_proc_remove()
4734 status = nfs4_call_sync(server->client, server, &msg, &args.seq_args, &res.seq_res, 1); in _nfs4_proc_remove()
4793 res->server = NFS_SB(dentry->d_sb); in nfs4_proc_unlink_setup()
4820 if (nfs4_async_handle_error(task, res->server, NULL, in nfs4_proc_unlink_done()
4844 res->server = NFS_SB(old_dentry->d_sb); in nfs4_proc_rename_setup()
4864 if (nfs4_async_handle_error(task, res->server, NULL, &data->timeout) == -EAGAIN) in nfs4_proc_rename_done()
4889 struct nfs_server *server = NFS_SERVER(inode); in _nfs4_proc_link() local
4898 .server = server, in _nfs4_proc_link()
4907 res.fattr = nfs_alloc_fattr_with_label(server); in _nfs4_proc_link()
4912 nfs4_bitmap_copy_adjust(bitmask, nfs4_bitmask(server, res.fattr->label), inode, in _nfs4_proc_link()
4914 status = nfs4_call_sync(server->client, server, &msg, &arg.seq_args, &res.seq_res, 1); in _nfs4_proc_link()
4958 struct nfs_server *server = NFS_SERVER(dir); in nfs4_alloc_createdata() local
4960 data->fattr.label = nfs4_label_alloc(server, GFP_KERNEL); in nfs4_alloc_createdata()
4968 data->arg.server = server; in nfs4_alloc_createdata()
4972 data->arg.bitmask = nfs4_bitmask(server, data->fattr.label); in nfs4_alloc_createdata()
4974 data->res.server = server; in nfs4_alloc_createdata()
5079 struct nfs_server *server = NFS_SERVER(dir); in nfs4_proc_mkdir() local
5088 if (!(server->attr_bitmask[2] & FATTR4_WORD2_MODE_UMASK)) in nfs4_proc_mkdir()
5105 struct nfs_server *server = NFS_SERVER(dir); in _nfs4_proc_readdir() local
5124 if (!(server->caps & NFS_CAP_SECURITY_LABEL)) in _nfs4_proc_readdir()
5125 args.bitmask = server->attr_bitmask_nl; in _nfs4_proc_readdir()
5127 args.bitmask = server->attr_bitmask; in _nfs4_proc_readdir()
5131 status = nfs4_call_sync(server->client, server, &msg, &args.seq_args, in _nfs4_proc_readdir()
5198 struct nfs_server *server = NFS_SERVER(dir); in nfs4_proc_mknod() local
5207 if (!(server->attr_bitmask[2] & FATTR4_WORD2_MODE_UMASK)) in nfs4_proc_mknod()
5221 static int _nfs4_proc_statfs(struct nfs_server *server, struct nfs_fh *fhandle, in _nfs4_proc_statfs() argument
5226 .bitmask = server->attr_bitmask, in _nfs4_proc_statfs()
5238 return nfs4_call_sync(server->client, server, &msg, &args.seq_args, &res.seq_res, 0); in _nfs4_proc_statfs()
5241 static int nfs4_proc_statfs(struct nfs_server *server, struct nfs_fh *fhandle, struct nfs_fsstat *f… in nfs4_proc_statfs() argument
5248 err = nfs4_handle_exception(server, in nfs4_proc_statfs()
5249 _nfs4_proc_statfs(server, fhandle, fsstat), in nfs4_proc_statfs()
5255 static int _nfs4_do_fsinfo(struct nfs_server *server, struct nfs_fh *fhandle, in _nfs4_do_fsinfo() argument
5260 .bitmask = server->attr_bitmask, in _nfs4_do_fsinfo()
5271 return nfs4_call_sync(server->client, server, &msg, &args.seq_args, &res.seq_res, 0); in _nfs4_do_fsinfo()
5274 static int nfs4_do_fsinfo(struct nfs_server *server, struct nfs_fh *fhandle, struct nfs_fsinfo *fsi… in nfs4_do_fsinfo() argument
5282 err = _nfs4_do_fsinfo(server, fhandle, fsinfo); in nfs4_do_fsinfo()
5283 trace_nfs4_fsinfo(server, fhandle, fsinfo->fattr, err); in nfs4_do_fsinfo()
5285 nfs4_set_lease_period(server->nfs_client, fsinfo->lease_time * HZ); in nfs4_do_fsinfo()
5288 err = nfs4_handle_exception(server, err, &exception); in nfs4_do_fsinfo()
5293 static int nfs4_proc_fsinfo(struct nfs_server *server, struct nfs_fh *fhandle, struct nfs_fsinfo *f… in nfs4_proc_fsinfo() argument
5298 error = nfs4_do_fsinfo(server, fhandle, fsinfo); in nfs4_proc_fsinfo()
5301 server->pnfs_blksize = fsinfo->blksize; in nfs4_proc_fsinfo()
5302 set_pnfs_layoutdriver(server, fhandle, fsinfo); in nfs4_proc_fsinfo()
5308 static int _nfs4_proc_pathconf(struct nfs_server *server, struct nfs_fh *fhandle, in _nfs4_proc_pathconf() argument
5313 .bitmask = server->attr_bitmask, in _nfs4_proc_pathconf()
5331 return nfs4_call_sync(server->client, server, &msg, &args.seq_args, &res.seq_res, 0); in _nfs4_proc_pathconf()
5334 static int nfs4_proc_pathconf(struct nfs_server *server, struct nfs_fh *fhandle, in nfs4_proc_pathconf() argument
5343 err = nfs4_handle_exception(server, in nfs4_proc_pathconf()
5344 _nfs4_proc_pathconf(server, fhandle, pathconf), in nfs4_proc_pathconf()
5389 struct nfs_server *server = NFS_SERVER(hdr->inode); in nfs4_read_done_cb() local
5399 server, task->tk_status, &exception); in nfs4_read_done_cb()
5407 renew_lease(server, hdr->timestamp); in nfs4_read_done_cb()
5428 struct nfs_server *server = NFS_SERVER(hdr->inode); in nfs4_read_plus_not_supported() local
5432 server->caps & NFS_CAP_READ_PLUS && task->tk_status == -ENOTSUPP) { in nfs4_read_plus_not_supported()
5433 server->caps &= ~NFS_CAP_READ_PLUS; in nfs4_read_plus_not_supported()
5564 struct nfs_server *server = NFS_SERVER(inode); in nfs4_bitmask_set() local
5591 bitmask[i] &= server->attr_bitmask[i]; in nfs4_bitmask_set()
5598 struct nfs_server *server = NFS_SERVER(hdr->inode); in nfs4_proc_write_setup() local
5605 server->cache_consistency_bitmask, in nfs4_proc_write_setup()
5612 hdr->res.server = server; in nfs4_proc_write_setup()
5617 nfs4_state_protect_write(server->nfs_client, clnt, msg, hdr); in nfs4_proc_write_setup()
5651 struct nfs_server *server = NFS_SERVER(data->inode); in nfs4_proc_commit_setup() local
5655 data->res.server = server; in nfs4_proc_commit_setup()
5658 nfs4_state_protect(server->nfs_client, NFS_SP4_MACH_CRED_COMMIT, clnt, msg); in nfs4_proc_commit_setup()
5665 struct nfs_server *server = NFS_SERVER(dst_inode); in _nfs4_proc_commit() local
5673 return nfs4_call_sync(server->client, server, &msg, in _nfs4_proc_commit()
5787 static bool nfs4_server_supports_acls(const struct nfs_server *server, in nfs4_server_supports_acls() argument
5792 return server->attr_bitmask[0] & FATTR4_WORD0_ACL; in nfs4_server_supports_acls()
5794 return server->attr_bitmask[1] & FATTR4_WORD1_DACL; in nfs4_server_supports_acls()
5796 return server->attr_bitmask[1] & FATTR4_WORD1_SACL; in nfs4_server_supports_acls()
5940 struct nfs_server *server = NFS_SERVER(inode); in __nfs4_get_acl_uncached() local
5943 buflen = server->rsize; in __nfs4_get_acl_uncached()
6021 struct nfs_server *server = NFS_SERVER(inode); in nfs4_proc_get_acl() local
6024 if (!nfs4_server_supports_acls(server, type)) in nfs4_proc_get_acl()
6042 struct nfs_server *server = NFS_SERVER(inode); in __nfs4_proc_set_acl() local
6062 if (!nfs4_server_supports_acls(server, type)) in __nfs4_proc_set_acl()
6070 ret = nfs4_call_sync(server->client, server, &msg, &arg.seq_args, &res.seq_res, 1); in __nfs4_proc_set_acl()
6119 struct nfs_server *server = NFS_SERVER(inode); in _nfs4_get_security_label() local
6132 .server = server, in _nfs4_get_security_label()
6143 ret = nfs4_call_sync(server->client, server, &msg, &arg.seq_args, &res.seq_res, 0); in _nfs4_get_security_label()
6177 struct nfs_server *server = NFS_SERVER(inode); in _nfs4_do_set_security_label() local
6182 .server = server, in _nfs4_do_set_security_label()
6188 .server = server, in _nfs4_do_set_security_label()
6199 status = nfs4_call_sync(server->client, server, &msg, &arg.seq_args, &res.seq_res, 1); in _nfs4_do_set_security_label()
6551 renew_lease(data->res.server, data->timestamp); in nfs4_delegreturn_done()
6556 nfs4_free_revoked_stateid(data->res.server, in nfs4_delegreturn_done()
6582 data->res.server, task->tk_status, in nfs4_delegreturn_done()
6630 nfs4_setup_sequence(d_data->res.server->nfs_client, in nfs4_delegreturn_prepare()
6645 struct nfs_server *server = NFS_SERVER(inode); in _nfs4_proc_delegreturn() local
6652 .rpc_client = server->client, in _nfs4_proc_delegreturn()
6666 nfs4_state_protect(server->nfs_client, in _nfs4_proc_delegreturn()
6673 server->cache_consistency_bitmask, inode, 0); in _nfs4_proc_delegreturn()
6678 data->res.server = server; in _nfs4_proc_delegreturn()
6719 struct nfs_server *server = NFS_SERVER(inode); in nfs4_proc_delegreturn() local
6731 err = nfs4_handle_exception(server, err, &exception); in nfs4_proc_delegreturn()
6739 struct nfs_server *server = NFS_SERVER(inode); in _nfs4_proc_getlk() local
6740 struct nfs_client *clp = server->nfs_client; in _nfs4_proc_getlk()
6763 arg.lock_owner.s_dev = server->s_dev; in _nfs4_proc_getlk()
6764 status = nfs4_call_sync(server->client, server, &msg, &arg.seq_args, &res.seq_res, 1); in _nfs4_proc_getlk()
6837 struct nfs_server *server; member
6863 p->server = NFS_SERVER(inode); in nfs4_alloc_unlockdata()
6892 renew_lease(calldata->server, calldata->timestamp); in nfs4_locku_done()
6900 nfs4_free_revoked_stateid(calldata->server, in nfs4_locku_done()
6917 calldata->server, task->tk_status, in nfs4_locku_done()
6940 if (nfs4_setup_sequence(calldata->server->nfs_client, in nfs4_locku_prepare()
7061 struct nfs_server *server; member
7070 struct nfs_server *server = NFS_SERVER(inode); in nfs4_alloc_lockdata() local
7082 alloc_seqid = server->nfs_client->cl_mvops->alloc_seqid; in nfs4_alloc_lockdata()
7086 p->arg.lock_owner.clientid = server->nfs_client->cl_clientid; in nfs4_alloc_lockdata()
7088 p->arg.lock_owner.s_dev = server->s_dev; in nfs4_alloc_lockdata()
7091 p->server = server; in nfs4_alloc_lockdata()
7130 if (nfs4_setup_sequence(data->server->nfs_client, in nfs4_lock_prepare()
7148 struct nfs_server *server = NFS_SERVER(d_inode(data->ctx->dentry)); in nfs4_lock_done() local
7156 renew_lease(server, data->timestamp); in nfs4_lock_done()
7177 else if (nfs4_async_handle_error(task, server, lsp->ls_state, NULL) == -EAGAIN) in nfs4_lock_done()
7217 static void nfs4_handle_setlk_error(struct nfs_server *server, struct nfs4_lock_state *lsp, int new… in nfs4_handle_setlk_error() argument
7226 nfs4_schedule_stateid_recovery(server, lsp->ls_state); in nfs4_handle_setlk_error()
7230 nfs4_schedule_lease_recovery(server->nfs_client); in nfs4_handle_setlk_error()
7277 nfs4_handle_setlk_error(data->server, data->lsp, in _nfs4_do_setlk()
7289 struct nfs_server *server = NFS_SERVER(state->inode); in nfs4_lock_reclaim() local
7302 nfs4_handle_exception(server, err, &exception); in nfs4_lock_reclaim()
7309 struct nfs_server *server = NFS_SERVER(state->inode); in nfs4_lock_expired() local
7331 nfs4_handle_exception(server, err, &exception); in nfs4_lock_expired()
7463 struct nfs_server *server = NFS_SERVER(state->inode); in nfs4_retry_setlk() local
7464 struct nfs_client *clp = server->nfs_client; in nfs4_retry_setlk()
7470 .s_dev = server->s_dev }, in nfs4_retry_setlk()
7597 struct nfs_server *server = NFS_SERVER(state->inode); in nfs4_lock_delegation_recall() local
7609 return nfs4_handle_delegation_recall_error(server, state, stateid, fl, err); in nfs4_lock_delegation_recall()
7614 struct nfs_server *server; member
7623 struct nfs_server *server = data->server; in nfs4_release_lockowner_prepare() local
7624 nfs4_setup_sequence(server->nfs_client, &data->args.seq_args, in nfs4_release_lockowner_prepare()
7626 data->args.lock_owner.clientid = server->nfs_client->cl_clientid; in nfs4_release_lockowner_prepare()
7633 struct nfs_server *server = data->server; in nfs4_release_lockowner_done() local
7639 renew_lease(server, data->timestamp); in nfs4_release_lockowner_done()
7643 nfs4_schedule_lease_recovery(server->nfs_client); in nfs4_release_lockowner_done()
7647 if (nfs4_async_handle_error(task, server, in nfs4_release_lockowner_done()
7656 nfs4_free_lock_state(data->server, data->lsp); in nfs4_release_lockowner_release()
7667 nfs4_release_lockowner(struct nfs_server *server, struct nfs4_lock_state *lsp) in nfs4_release_lockowner() argument
7674 if (server->nfs_client->cl_mvops->minor_version != 0) in nfs4_release_lockowner()
7681 data->server = server; in nfs4_release_lockowner()
7682 data->args.lock_owner.clientid = server->nfs_client->cl_clientid; in nfs4_release_lockowner()
7684 data->args.lock_owner.s_dev = server->s_dev; in nfs4_release_lockowner()
7689 rpc_call_async(server->client, &msg, 0, &nfs4_release_lockowner_ops, data); in nfs4_release_lockowner()
7966 struct nfs_server *server = NFS_SERVER(dir); in _nfs4_proc_fs_locations() local
7997 fs_locations->server = server; in _nfs4_proc_fs_locations()
7999 status = nfs4_call_sync(client, server, &msg, &args.seq_args, &res.seq_res, 0); in _nfs4_proc_fs_locations()
8030 static int _nfs40_proc_get_locations(struct nfs_server *server, in _nfs40_proc_get_locations() argument
8035 struct rpc_clnt *clnt = server->client; in _nfs40_proc_get_locations()
8040 .clientid = server->nfs_client->cl_clientid, in _nfs40_proc_get_locations()
8062 locations->server = server; in _nfs40_proc_get_locations()
8066 status = nfs4_call_sync_sequence(clnt, server, &msg, in _nfs40_proc_get_locations()
8071 renew_lease(server, now); in _nfs40_proc_get_locations()
8087 static int _nfs41_proc_get_locations(struct nfs_server *server, in _nfs41_proc_get_locations() argument
8092 struct rpc_clnt *clnt = server->client; in _nfs41_proc_get_locations()
8113 .seq_server = server, in _nfs41_proc_get_locations()
8120 .callback_ops = server->nfs_client->cl_mvops->call_sync_ops, in _nfs41_proc_get_locations()
8127 locations->server = server; in _nfs41_proc_get_locations()
8158 int nfs4_proc_get_locations(struct nfs_server *server, in nfs4_proc_get_locations() argument
8163 struct nfs_client *clp = server->nfs_client; in nfs4_proc_get_locations()
8172 (unsigned long long)server->fsid.major, in nfs4_proc_get_locations()
8173 (unsigned long long)server->fsid.minor, in nfs4_proc_get_locations()
8178 status = ops->get_locations(server, fhandle, locations, page, in nfs4_proc_get_locations()
8182 nfs4_handle_exception(server, status, &exception); in nfs4_proc_get_locations()
8196 struct nfs_server *server = NFS_SERVER(inode); in _nfs40_proc_fsid_present() local
8198 struct rpc_clnt *clnt = server->client; in _nfs40_proc_fsid_present()
8221 status = nfs4_call_sync_sequence(clnt, server, &msg, in _nfs40_proc_fsid_present()
8242 struct nfs_server *server = NFS_SERVER(inode); in _nfs41_proc_fsid_present() local
8243 struct rpc_clnt *clnt = server->client; in _nfs41_proc_fsid_present()
8262 status = nfs4_call_sync_sequence(clnt, server, &msg, in _nfs41_proc_fsid_present()
8289 struct nfs_server *server = NFS_SERVER(inode); in nfs4_proc_fsid_present() local
8290 struct nfs_client *clp = server->nfs_client; in nfs4_proc_fsid_present()
8299 (unsigned long long)server->fsid.major, in nfs4_proc_fsid_present()
8300 (unsigned long long)server->fsid.minor, in nfs4_proc_fsid_present()
8308 nfs4_handle_exception(server, status, &exception); in nfs4_proc_fsid_present()
9582 struct nfs_server *server = NFS_SERVER(lgp->args.inode); in nfs4_layoutget_prepare() local
9584 nfs4_setup_sequence(server->nfs_client, &lgp->args.seq_args, in nfs4_layoutget_prepare()
9600 struct nfs_server *server = NFS_SERVER(inode); in nfs4_layoutget_handle_exception() local
9673 err = nfs4_handle_exception(server, nfs4err, exception); in nfs4_layoutget_handle_exception()
9684 size_t max_response_pages(struct nfs_server *server) in max_response_pages() argument
9686 u32 max_resp_sz = server->nfs_client->cl_session->fc_attrs.max_resp_sz; in max_response_pages()
9708 struct nfs_server *server = NFS_SERVER(inode); in nfs4_proc_layoutget() local
9717 .rpc_client = server->client, in nfs4_proc_layoutget()
9779 struct nfs_server *server; in nfs4_layoutreturn_done() local
9793 server = NFS_SERVER(lrp->args.inode); in nfs4_layoutreturn_done()
9807 if (nfs4_async_handle_error(task, server, NULL, NULL) != -EAGAIN) in nfs4_layoutreturn_done()
9888 _nfs4_proc_getdeviceinfo(struct nfs_server *server, in _nfs4_proc_getdeviceinfo() argument
9908 status = nfs4_call_sync(server->client, server, &msg, &args.seq_args, &res.seq_res, 0); in _nfs4_proc_getdeviceinfo()
9914 trace_nfs4_getdeviceinfo(server, &pdev->dev_id, status); in _nfs4_proc_getdeviceinfo()
9921 int nfs4_proc_getdeviceinfo(struct nfs_server *server, in nfs4_proc_getdeviceinfo() argument
9929 err = nfs4_handle_exception(server, in nfs4_proc_getdeviceinfo()
9930 _nfs4_proc_getdeviceinfo(server, pdev, cred), in nfs4_proc_getdeviceinfo()
9940 struct nfs_server *server = NFS_SERVER(data->args.inode); in nfs4_layoutcommit_prepare() local
9942 nfs4_setup_sequence(server->nfs_client, in nfs4_layoutcommit_prepare()
9952 struct nfs_server *server = NFS_SERVER(data->args.inode); in nfs4_layoutcommit_done() local
9967 if (nfs4_async_handle_error(task, server, NULL, NULL) == -EAGAIN) { in nfs4_layoutcommit_done()
10042 _nfs41_proc_secinfo_no_name(struct nfs_server *server, struct nfs_fh *fhandle, in _nfs41_proc_secinfo_no_name() argument
10058 .seq_server = server, in _nfs41_proc_secinfo_no_name()
10063 .rpc_client = server->client, in _nfs41_proc_secinfo_no_name()
10065 .callback_ops = server->nfs_client->cl_mvops->call_sync_ops, in _nfs41_proc_secinfo_no_name()
10073 task_setup.rpc_client = server->nfs_client->cl_rpcclient; in _nfs41_proc_secinfo_no_name()
10075 cred = nfs4_get_clid_cred(server->nfs_client); in _nfs41_proc_secinfo_no_name()
10089 nfs41_proc_secinfo_no_name(struct nfs_server *server, struct nfs_fh *fhandle, in nfs41_proc_secinfo_no_name() argument
10101 if (_nfs4_is_integrity_protected(server->nfs_client)) in nfs41_proc_secinfo_no_name()
10102 err = _nfs41_proc_secinfo_no_name(server, fhandle, info, in nfs41_proc_secinfo_no_name()
10112 err = _nfs41_proc_secinfo_no_name(server, fhandle, info, in nfs41_proc_secinfo_no_name()
10121 err = nfs4_handle_exception(server, err, &exception); in nfs41_proc_secinfo_no_name()
10129 nfs41_find_root_sec(struct nfs_server *server, struct nfs_fh *fhandle, in nfs41_find_root_sec() argument
10146 err = nfs41_proc_secinfo_no_name(server, fhandle, info, flavors); in nfs41_find_root_sec()
10153 err = nfs4_find_root_sec(server, fhandle, info); in nfs41_find_root_sec()
10174 if (!nfs_auth_info_match(&server->auth_info, flavor)) in nfs41_find_root_sec()
10178 err = nfs4_lookup_root_sec(server, fhandle, in nfs41_find_root_sec()
10196 static int _nfs41_test_stateid(struct nfs_server *server, in _nfs41_test_stateid() argument
10211 struct rpc_clnt *rpc_client = server->client; in _nfs41_test_stateid()
10213 nfs4_state_protect(server->nfs_client, NFS_SP4_MACH_CRED_STATEID, in _nfs41_test_stateid()
10218 status = nfs4_call_sync_sequence(rpc_client, server, &msg, in _nfs41_test_stateid()
10228 static void nfs4_handle_delay_or_session_error(struct nfs_server *server, in nfs4_handle_delay_or_session_error() argument
10235 nfs4_handle_exception(server, err, exception); in nfs4_handle_delay_or_session_error()
10242 nfs4_do_handle_exception(server, err, exception); in nfs4_handle_delay_or_session_error()
10257 static int nfs41_test_stateid(struct nfs_server *server, in nfs41_test_stateid() argument
10266 err = _nfs41_test_stateid(server, stateid, cred); in nfs41_test_stateid()
10267 nfs4_handle_delay_or_session_error(server, err, &exception); in nfs41_test_stateid()
10273 struct nfs_server *server; member
10281 nfs4_setup_sequence(data->server->nfs_client, in nfs41_free_stateid_prepare()
10295 if (nfs4_async_handle_error(task, data->server, NULL, NULL) == -EAGAIN) in nfs41_free_stateid_done()
10303 struct nfs_client *clp = data->server->nfs_client; in nfs41_free_stateid_release()
10325 static int nfs41_free_stateid(struct nfs_server *server, in nfs41_free_stateid() argument
10335 .rpc_client = server->client, in nfs41_free_stateid()
10342 struct nfs_client *clp = server->nfs_client; in nfs41_free_stateid()
10347 nfs4_state_protect(server->nfs_client, NFS_SP4_MACH_CRED_STATEID, in nfs41_free_stateid()
10354 data->server = server; in nfs41_free_stateid()
10370 nfs41_free_lock_state(struct nfs_server *server, struct nfs4_lock_state *lsp) in nfs41_free_lock_state() argument
10374 nfs41_free_stateid(server, &lsp->ls_stateid, cred, false); in nfs41_free_lock_state()
10375 nfs4_free_lock_state(server, lsp); in nfs41_free_lock_state()