Lines Matching refs: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()
380 static void nfs4_test_and_free_stateid(struct nfs_server *server, in nfs4_test_and_free_stateid() argument
384 const struct nfs4_minor_version_ops *ops = server->nfs_client->cl_mvops; in nfs4_test_and_free_stateid()
386 ops->test_and_free_expired(server, stateid, cred); in nfs4_test_and_free_stateid()
389 static void __nfs4_free_revoked_stateid(struct nfs_server *server, in __nfs4_free_revoked_stateid() argument
394 nfs4_test_and_free_stateid(server, stateid, cred); in __nfs4_free_revoked_stateid()
397 static void nfs4_free_revoked_stateid(struct nfs_server *server, in nfs4_free_revoked_stateid() argument
404 __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
1167 return nfs4_do_call_sync(clnt, server, msg, args, res, 0); in nfs4_call_sync_sequence()
1172 struct nfs_server *server, in nfs4_call_sync() argument
1179 return nfs4_call_sync_sequence(clnt, server, msg, args, res); in nfs4_call_sync()
1249 static bool nfs4_clear_cap_atomic_open_v1(struct nfs_server *server, in nfs4_clear_cap_atomic_open_v1() argument
1254 if (!(server->caps & NFS_CAP_ATOMIC_OPEN_V1)) in nfs4_clear_cap_atomic_open_v1()
1256 server->caps &= ~NFS_CAP_ATOMIC_OPEN_V1; in nfs4_clear_cap_atomic_open_v1()
1274 nfs4_map_atomic_open_share(struct nfs_server *server, in nfs4_map_atomic_open_share() argument
1289 if (!(server->caps & NFS_CAP_ATOMIC_OPEN_V1)) in nfs4_map_atomic_open_share()
1299 nfs4_map_atomic_open_claim(struct nfs_server *server, in nfs4_map_atomic_open_claim() argument
1302 if (server->caps & NFS_CAP_ATOMIC_OPEN_V1) in nfs4_map_atomic_open_claim()
1322 p->o_res.server = p->o_arg.server; in nfs4_init_opendata_res()
1336 struct nfs_server *server = NFS_SERVER(dir); in nfs4_opendata_alloc() local
1345 p->f_label = nfs4_label_alloc(server, gfp_mask); in nfs4_opendata_alloc()
1349 p->a_label = nfs4_label_alloc(server, gfp_mask); in nfs4_opendata_alloc()
1353 alloc_seqid = server->nfs_client->cl_mvops->alloc_seqid; in nfs4_opendata_alloc()
1364 p->o_arg.claim = nfs4_map_atomic_open_claim(server, claim); in nfs4_opendata_alloc()
1365 p->o_arg.share_access = nfs4_map_atomic_open_share(server, in nfs4_opendata_alloc()
1393 if (server->caps & NFS_CAP_XATTR) in nfs4_opendata_alloc()
1400 p->o_arg.clientid = server->nfs_client->cl_clientid; in nfs4_opendata_alloc()
1404 p->o_arg.server = server; in nfs4_opendata_alloc()
1405 p->o_arg.bitmask = nfs4_bitmask(server, label); in nfs4_opendata_alloc()
1788 struct nfs_server *server = NFS_SERVER(state->inode); in update_open_stateid() local
1789 struct nfs_client *clp = server->nfs_client; in update_open_stateid()
1833 nfs4_test_and_free_stateid(server, &freeme, in update_open_stateid()
2208 struct nfs_server *server = NFS_SERVER(state->inode); in nfs4_do_open_reclaim() local
2214 if (nfs4_clear_cap_atomic_open_v1(server, err, &exception)) in nfs4_do_open_reclaim()
2218 nfs4_handle_exception(server, err, &exception); in nfs4_do_open_reclaim()
2238 static int nfs4_handle_delegation_recall_error(struct nfs_server *server, struct nfs4_state *state,… in nfs4_handle_delegation_recall_error() argument
2259 nfs4_schedule_lease_recovery(server->nfs_client); in nfs4_handle_delegation_recall_error()
2262 nfs4_schedule_migration_recovery(server); in nfs4_handle_delegation_recall_error()
2265 nfs4_schedule_lease_moved_recovery(server->nfs_client); in nfs4_handle_delegation_recall_error()
2274 nfs4_schedule_stateid_recovery(server, state); in nfs4_handle_delegation_recall_error()
2295 struct nfs_server *server = NFS_SERVER(state->inode); in nfs4_open_delegation_recall() local
2322 return nfs4_handle_delegation_recall_error(server, state, stateid, NULL, err); in nfs4_open_delegation_recall()
2329 nfs4_setup_sequence(data->o_arg.server->nfs_client, in nfs4_open_confirm_prepare()
2343 renew_lease(data->o_res.server, data->timestamp); in nfs4_open_confirm_done()
2377 struct nfs_server *server = NFS_SERVER(d_inode(data->dir)); in _nfs4_proc_open_confirm() local
2386 .rpc_client = server->client, in _nfs4_proc_open_confirm()
2453 if (nfs4_setup_sequence(data->o_arg.server->nfs_client, in nfs4_open_prepare()
2502 renew_lease(data->o_res.server, data->timestamp); in nfs4_open_done()
2540 struct nfs_server *server = NFS_SERVER(dir); in nfs4_run_open_task() local
2551 .rpc_client = server->client, in nfs4_run_open_task()
2658 struct nfs_server *server = NFS_SERVER(dir); in _nfs4_proc_open() local
2673 nfs_fattr_map_and_free_names(server, &data->f_attr); in _nfs4_proc_open()
2687 server->caps &= ~NFS_CAP_POSIX_LOCK; in _nfs4_proc_open()
2695 nfs4_proc_getattr(server, &o_res->fh, o_res->f_attr, in _nfs4_proc_open()
2724 struct nfs_server *server = NFS_SERVER(state->inode); in nfs4_do_open_expired() local
2731 if (nfs4_clear_cap_atomic_open_v1(server, err, &exception)) in nfs4_do_open_expired()
2738 nfs4_handle_exception(server, err, &exception); in nfs4_do_open_expired()
2780 static int nfs40_test_and_free_expired_stateid(struct nfs_server *server, in nfs40_test_and_free_expired_stateid() argument
2788 static int nfs41_test_and_free_expired_stateid(struct nfs_server *server, in nfs41_test_and_free_expired_stateid() argument
2804 status = nfs41_test_stateid(server, stateid, cred); in nfs41_test_and_free_expired_stateid()
2815 nfs41_free_stateid(server, stateid, cred, true); in nfs41_test_and_free_expired_stateid()
2821 struct nfs_server *server = NFS_SERVER(state->inode); in nfs41_check_delegation_stateid() local
2850 status = nfs41_test_and_free_expired_stateid(server, &stateid, cred); in nfs41_check_delegation_stateid()
2886 struct nfs_server *server = NFS_SERVER(state->inode); in nfs41_check_expired_locks() local
2902 status = nfs41_test_and_free_expired_stateid(server, in nfs41_check_expired_locks()
2936 struct nfs_server *server = NFS_SERVER(state->inode); in nfs41_check_open_stateid() local
2943 status = nfs41_test_and_free_expired_stateid(server, stateid, cred); in nfs41_check_open_stateid()
2982 const __u32 *bitmask = opendata->o_arg.server->exclcreat_bitmask; in nfs4_exclusive_attrset()
3019 struct nfs_server *server = sp->so_server; in _nfs4_open_and_get_state() local
3040 if (server->caps & NFS_CAP_POSIX_LOCK) in _nfs4_open_and_get_state()
3083 nfs4_schedule_stateid_recovery(server, state); in _nfs4_open_and_get_state()
3108 struct nfs_server *server = NFS_SERVER(dir); in _nfs4_do_open() local
3122 sp = nfs4_get_state_owner(server, cred, GFP_KERNEL); in _nfs4_do_open()
3127 status = nfs4_client_recover_expired_lease(server->nfs_client); in _nfs4_do_open()
3141 olabel = nfs4_label_alloc(server, GFP_KERNEL); in _nfs4_do_open()
3148 if (server->attr_bitmask[2] & FATTR4_WORD2_MDSTHRESHOLD) { in _nfs4_do_open()
3190 if (pnfs_use_threshold(ctx_th, opendata->f_attr.mdsthreshold, server)) { in _nfs4_do_open()
3218 struct nfs_server *server = NFS_SERVER(dir); in nfs4_do_open() local
3268 nfs4_schedule_lease_recovery(server->nfs_client); in nfs4_do_open()
3277 if (nfs4_clear_cap_atomic_open_v1(server, status, &exception)) in nfs4_do_open()
3279 res = ERR_PTR(nfs4_handle_exception(server, in nfs4_do_open()
3291 struct nfs_server *server = NFS_SERVER(inode); in _nfs4_do_setattr() local
3335 status = nfs4_call_sync(server->client, server, &msg, &arg->seq_args, &res->seq_res, 1); in _nfs4_do_setattr()
3339 renew_lease(server, timestamp); in _nfs4_do_setattr()
3349 struct nfs_server *server = NFS_SERVER(inode); in nfs4_do_setattr() local
3355 .server = server, in nfs4_do_setattr()
3362 .server = server, in nfs4_do_setattr()
3373 nfs4_bitmask(server, olabel), in nfs4_do_setattr()
3384 server->nfs_client->cl_hostname); in nfs4_do_setattr()
3393 err = nfs4_handle_exception(server, err, &exception); in nfs4_do_setattr()
3540 struct nfs_server *server = NFS_SERVER(calldata->inode); in nfs4_close_done() local
3564 renew_lease(server, calldata->timestamp); in nfs4_close_done()
3583 nfs4_free_revoked_stateid(server, in nfs4_close_done()
3593 server, task->tk_status, &exception); in nfs4_close_done()
3616 struct nfs_server *server = NFS_SERVER(inode); in nfs4_close_prepare() local
3674 server->cache_consistency_bitmask, in nfs4_close_prepare()
3675 inode, server, NULL); in nfs4_close_prepare()
3722 struct nfs_server *server = NFS_SERVER(state->inode); in nfs4_do_close() local
3732 .rpc_client = server->client, in nfs4_do_close()
3740 nfs4_state_protect(server->nfs_client, NFS_SP4_MACH_CRED_CLEANUP, in nfs4_do_close()
3753 alloc_seqid = server->nfs_client->cl_mvops->alloc_seqid; in nfs4_do_close()
3762 calldata->res.server = server; in nfs4_do_close()
3824 static int _nfs4_server_capabilities(struct nfs_server *server, struct nfs_fh *fhandle) in _nfs4_server_capabilities() argument
3826 u32 bitmask[3] = {}, minorversion = server->nfs_client->cl_minorversion; in _nfs4_server_capabilities()
3848 status = nfs4_call_sync(server->client, server, &msg, &args.seq_args, &res.seq_res, 0); in _nfs4_server_capabilities()
3862 memcpy(server->attr_bitmask, res.attr_bitmask, sizeof(server->attr_bitmask)); in _nfs4_server_capabilities()
3863 server->caps &= ~(NFS_CAP_ACLS|NFS_CAP_HARDLINKS| in _nfs4_server_capabilities()
3871 server->caps |= NFS_CAP_ACLS; in _nfs4_server_capabilities()
3873 server->caps |= NFS_CAP_HARDLINKS; in _nfs4_server_capabilities()
3875 server->caps |= NFS_CAP_SYMLINKS; in _nfs4_server_capabilities()
3877 server->caps |= NFS_CAP_FILEID; in _nfs4_server_capabilities()
3879 server->caps |= NFS_CAP_MODE; in _nfs4_server_capabilities()
3881 server->caps |= NFS_CAP_NLINK; in _nfs4_server_capabilities()
3883 server->caps |= NFS_CAP_OWNER; in _nfs4_server_capabilities()
3885 server->caps |= NFS_CAP_OWNER_GROUP; in _nfs4_server_capabilities()
3887 server->caps |= NFS_CAP_ATIME; in _nfs4_server_capabilities()
3889 server->caps |= NFS_CAP_CTIME; in _nfs4_server_capabilities()
3891 server->caps |= NFS_CAP_MTIME; in _nfs4_server_capabilities()
3894 server->caps |= NFS_CAP_SECURITY_LABEL; in _nfs4_server_capabilities()
3896 memcpy(server->attr_bitmask_nl, res.attr_bitmask, in _nfs4_server_capabilities()
3897 sizeof(server->attr_bitmask)); in _nfs4_server_capabilities()
3898 server->attr_bitmask_nl[2] &= ~FATTR4_WORD2_SECURITY_LABEL; in _nfs4_server_capabilities()
3900 …memcpy(server->cache_consistency_bitmask, res.attr_bitmask, sizeof(server->cache_consistency_bitma… in _nfs4_server_capabilities()
3901 server->cache_consistency_bitmask[0] &= FATTR4_WORD0_CHANGE|FATTR4_WORD0_SIZE; in _nfs4_server_capabilities()
3902 server->cache_consistency_bitmask[1] &= FATTR4_WORD1_TIME_METADATA|FATTR4_WORD1_TIME_MODIFY; in _nfs4_server_capabilities()
3903 server->cache_consistency_bitmask[2] = 0; in _nfs4_server_capabilities()
3908 memcpy(server->exclcreat_bitmask, res.exclcreat_bitmask, in _nfs4_server_capabilities()
3909 sizeof(server->exclcreat_bitmask)); in _nfs4_server_capabilities()
3911 server->acl_bitmask = res.acl_bitmask; in _nfs4_server_capabilities()
3912 server->fh_expire_type = res.fh_expire_type; in _nfs4_server_capabilities()
3918 int nfs4_server_capabilities(struct nfs_server *server, struct nfs_fh *fhandle) in nfs4_server_capabilities() argument
3925 err = nfs4_handle_exception(server, in nfs4_server_capabilities()
3926 _nfs4_server_capabilities(server, fhandle), in nfs4_server_capabilities()
3932 static int _nfs4_lookup_root(struct nfs_server *server, struct nfs_fh *fhandle, in _nfs4_lookup_root() argument
3940 .server = server, in _nfs4_lookup_root()
3958 return nfs4_call_sync(server->client, server, &msg, &args.seq_args, &res.seq_res, 0); in _nfs4_lookup_root()
3961 static int nfs4_lookup_root(struct nfs_server *server, struct nfs_fh *fhandle, in nfs4_lookup_root() argument
3969 err = _nfs4_lookup_root(server, fhandle, info); in nfs4_lookup_root()
3970 trace_nfs4_lookup_root(server, fhandle, info->fattr, err); in nfs4_lookup_root()
3976 err = nfs4_handle_exception(server, err, &exception); in nfs4_lookup_root()
3983 static int nfs4_lookup_root_sec(struct nfs_server *server, struct nfs_fh *fhandle, in nfs4_lookup_root_sec() argument
3991 auth = rpcauth_create(&auth_args, server->client); in nfs4_lookup_root_sec()
3994 return nfs4_lookup_root(server, fhandle, info); in nfs4_lookup_root_sec()
4006 static int nfs4_find_root_sec(struct nfs_server *server, struct nfs_fh *fhandle, in nfs4_find_root_sec() argument
4020 if (server->auth_info.flavor_len > 0) { in nfs4_find_root_sec()
4022 for (i = 0; i < server->auth_info.flavor_len; i++) { in nfs4_find_root_sec()
4023 status = nfs4_lookup_root_sec(server, fhandle, info, in nfs4_find_root_sec()
4024 server->auth_info.flavors[i]); in nfs4_find_root_sec()
4032 status = nfs4_lookup_root_sec(server, fhandle, info, in nfs4_find_root_sec()
4061 int nfs4_proc_get_rootfh(struct nfs_server *server, struct nfs_fh *fhandle, in nfs4_proc_get_rootfh() argument
4068 status = nfs4_lookup_root(server, fhandle, info); in nfs4_proc_get_rootfh()
4071 status = server->nfs_client->cl_mvops->find_root_sec(server, in nfs4_proc_get_rootfh()
4075 status = nfs4_server_capabilities(server, fhandle); in nfs4_proc_get_rootfh()
4077 status = nfs4_do_fsinfo(server, fhandle, info); in nfs4_proc_get_rootfh()
4082 static int nfs4_proc_get_root(struct nfs_server *server, struct nfs_fh *mntfh, in nfs4_proc_get_root() argument
4089 error = nfs4_server_capabilities(server, mntfh); in nfs4_proc_get_root()
4095 error = nfs4_proc_getattr(server, mntfh, fattr, label, NULL); in nfs4_proc_get_root()
4102 !nfs_fsid_equal(&server->fsid, &fattr->fsid)) in nfs4_proc_get_root()
4103 memcpy(&server->fsid, &fattr->fsid, sizeof(server->fsid)); in nfs4_proc_get_root()
4157 static int _nfs4_proc_getattr(struct nfs_server *server, struct nfs_fh *fhandle, in _nfs4_proc_getattr() argument
4169 .server = server, in _nfs4_proc_getattr()
4179 if (inode && (server->flags & NFS_MOUNT_SOFTREVAL)) in _nfs4_proc_getattr()
4182 nfs4_bitmap_copy_adjust(bitmask, nfs4_bitmask(server, label), inode); in _nfs4_proc_getattr()
4186 return nfs4_do_call_sync(server->client, server, &msg, in _nfs4_proc_getattr()
4190 int nfs4_proc_getattr(struct nfs_server *server, struct nfs_fh *fhandle, in nfs4_proc_getattr() argument
4199 err = _nfs4_proc_getattr(server, fhandle, fattr, label, inode); in nfs4_proc_getattr()
4200 trace_nfs4_getattr(server, fhandle, fattr, err); in nfs4_proc_getattr()
4201 err = nfs4_handle_exception(server, err, in nfs4_proc_getattr()
4278 struct nfs_server *server = NFS_SERVER(dir); in _nfs4_proc_lookup() local
4281 .bitmask = server->attr_bitmask, in _nfs4_proc_lookup()
4286 .server = server, in _nfs4_proc_lookup()
4302 args.bitmask = nfs4_bitmask(server, label); in _nfs4_proc_lookup()
4308 status = nfs4_do_call_sync(clnt, server, &msg, in _nfs4_proc_lookup()
4401 struct nfs_server *server = NFS_SERVER(inode); in _nfs4_proc_lookupp() local
4404 .bitmask = server->attr_bitmask, in _nfs4_proc_lookupp()
4408 .server = server, in _nfs4_proc_lookupp()
4419 args.bitmask = nfs4_bitmask(server, label); in _nfs4_proc_lookupp()
4424 status = nfs4_call_sync(clnt, server, &msg, &args.seq_args, in _nfs4_proc_lookupp()
4448 struct nfs_server *server = NFS_SERVER(inode); in _nfs4_proc_access() local
4454 .server = server, in _nfs4_proc_access()
4468 args.bitmask = server->cache_consistency_bitmask; in _nfs4_proc_access()
4470 status = nfs4_call_sync(server->client, server, &msg, &args.seq_args, &res.seq_res, 0); in _nfs4_proc_access()
4559 struct nfs_server *server = NFS_SERVER(dir); in nfs4_proc_create() local
4571 if (!(server->attr_bitmask[2] & FATTR4_WORD2_MODE_UMASK)) in nfs4_proc_create()
4587 struct nfs_server *server = NFS_SERVER(dir); in _nfs4_proc_remove() local
4593 .server = server, in _nfs4_proc_remove()
4603 status = nfs4_call_sync(server->client, server, &msg, &args.seq_args, &res.seq_res, 1); in _nfs4_proc_remove()
4662 res->server = NFS_SB(dentry->d_sb); in nfs4_proc_unlink_setup()
4687 if (nfs4_async_handle_error(task, res->server, NULL, in nfs4_proc_unlink_done()
4711 res->server = NFS_SB(old_dentry->d_sb); in nfs4_proc_rename_setup()
4731 if (nfs4_async_handle_error(task, res->server, NULL, &data->timeout) == -EAGAIN) in nfs4_proc_rename_done()
4755 struct nfs_server *server = NFS_SERVER(inode); in _nfs4_proc_link() local
4764 .server = server, in _nfs4_proc_link()
4778 res.label = nfs4_label_alloc(server, GFP_KERNEL); in _nfs4_proc_link()
4785 nfs4_bitmap_copy_adjust_setattr(bitmask, nfs4_bitmask(server, res.label), inode); in _nfs4_proc_link()
4787 status = nfs4_call_sync(server->client, server, &msg, &arg.seq_args, &res.seq_res, 1); in _nfs4_proc_link()
4834 struct nfs_server *server = NFS_SERVER(dir); in nfs4_alloc_createdata() local
4836 data->label = nfs4_label_alloc(server, GFP_KERNEL); in nfs4_alloc_createdata()
4844 data->arg.server = server; in nfs4_alloc_createdata()
4848 data->arg.bitmask = nfs4_bitmask(server, data->label); in nfs4_alloc_createdata()
4850 data->res.server = server; in nfs4_alloc_createdata()
4956 struct nfs_server *server = NFS_SERVER(dir); in nfs4_proc_mkdir() local
4965 if (!(server->attr_bitmask[2] & FATTR4_WORD2_MODE_UMASK)) in nfs4_proc_mkdir()
4982 struct nfs_server *server = NFS_SERVER(dir); in _nfs4_proc_readdir() local
5002 if (!(server->caps & NFS_CAP_SECURITY_LABEL)) in _nfs4_proc_readdir()
5003 args.bitmask = server->attr_bitmask_nl; in _nfs4_proc_readdir()
5005 args.bitmask = server->attr_bitmask; in _nfs4_proc_readdir()
5009 status = nfs4_call_sync(server->client, server, &msg, &args.seq_args, in _nfs4_proc_readdir()
5077 struct nfs_server *server = NFS_SERVER(dir); in nfs4_proc_mknod() local
5086 if (!(server->attr_bitmask[2] & FATTR4_WORD2_MODE_UMASK)) in nfs4_proc_mknod()
5100 static int _nfs4_proc_statfs(struct nfs_server *server, struct nfs_fh *fhandle, in _nfs4_proc_statfs() argument
5105 .bitmask = server->attr_bitmask, in _nfs4_proc_statfs()
5117 return nfs4_call_sync(server->client, server, &msg, &args.seq_args, &res.seq_res, 0); in _nfs4_proc_statfs()
5120 static int nfs4_proc_statfs(struct nfs_server *server, struct nfs_fh *fhandle, struct nfs_fsstat *f… in nfs4_proc_statfs() argument
5127 err = nfs4_handle_exception(server, in nfs4_proc_statfs()
5128 _nfs4_proc_statfs(server, fhandle, fsstat), in nfs4_proc_statfs()
5134 static int _nfs4_do_fsinfo(struct nfs_server *server, struct nfs_fh *fhandle, in _nfs4_do_fsinfo() argument
5139 .bitmask = server->attr_bitmask, in _nfs4_do_fsinfo()
5150 return nfs4_call_sync(server->client, server, &msg, &args.seq_args, &res.seq_res, 0); in _nfs4_do_fsinfo()
5153 static int nfs4_do_fsinfo(struct nfs_server *server, struct nfs_fh *fhandle, struct nfs_fsinfo *fsi… in nfs4_do_fsinfo() argument
5161 err = _nfs4_do_fsinfo(server, fhandle, fsinfo); in nfs4_do_fsinfo()
5162 trace_nfs4_fsinfo(server, fhandle, fsinfo->fattr, err); in nfs4_do_fsinfo()
5164 nfs4_set_lease_period(server->nfs_client, fsinfo->lease_time * HZ); in nfs4_do_fsinfo()
5167 err = nfs4_handle_exception(server, err, &exception); in nfs4_do_fsinfo()
5172 static int nfs4_proc_fsinfo(struct nfs_server *server, struct nfs_fh *fhandle, struct nfs_fsinfo *f… in nfs4_proc_fsinfo() argument
5177 error = nfs4_do_fsinfo(server, fhandle, fsinfo); in nfs4_proc_fsinfo()
5180 server->pnfs_blksize = fsinfo->blksize; in nfs4_proc_fsinfo()
5181 set_pnfs_layoutdriver(server, fhandle, fsinfo); in nfs4_proc_fsinfo()
5187 static int _nfs4_proc_pathconf(struct nfs_server *server, struct nfs_fh *fhandle, in _nfs4_proc_pathconf() argument
5192 .bitmask = server->attr_bitmask, in _nfs4_proc_pathconf()
5210 return nfs4_call_sync(server->client, server, &msg, &args.seq_args, &res.seq_res, 0); in _nfs4_proc_pathconf()
5213 static int nfs4_proc_pathconf(struct nfs_server *server, struct nfs_fh *fhandle, in nfs4_proc_pathconf() argument
5222 err = nfs4_handle_exception(server, in nfs4_proc_pathconf()
5223 _nfs4_proc_pathconf(server, fhandle, pathconf), in nfs4_proc_pathconf()
5268 struct nfs_server *server = NFS_SERVER(hdr->inode); in nfs4_read_done_cb() local
5278 server, task->tk_status, &exception); in nfs4_read_done_cb()
5286 renew_lease(server, hdr->timestamp); in nfs4_read_done_cb()
5307 struct nfs_server *server = NFS_SERVER(hdr->inode); in nfs4_read_plus_not_supported() local
5311 server->caps & NFS_CAP_READ_PLUS && task->tk_status == -ENOTSUPP) { in nfs4_read_plus_not_supported()
5312 server->caps &= ~NFS_CAP_READ_PLUS; in nfs4_read_plus_not_supported()
5337 static void nfs42_read_plus_support(struct nfs_server *server, struct rpc_message *msg) in nfs42_read_plus_support() argument
5339 if (server->caps & NFS_CAP_READ_PLUS) in nfs42_read_plus_support()
5345 static void nfs42_read_plus_support(struct nfs_server *server, struct rpc_message *msg) in nfs42_read_plus_support() argument
5442 struct inode *inode, struct nfs_server *server, in nfs4_bitmask_set() argument
5475 bitmask[i] &= server->attr_bitmask[i]; in nfs4_bitmask_set()
5482 struct nfs_server *server = NFS_SERVER(hdr->inode); in nfs4_proc_write_setup() local
5489 server->cache_consistency_bitmask, in nfs4_proc_write_setup()
5490 hdr->inode, server, NULL); in nfs4_proc_write_setup()
5496 hdr->res.server = server; in nfs4_proc_write_setup()
5501 nfs4_state_protect_write(server->nfs_client, clnt, msg, hdr); in nfs4_proc_write_setup()
5535 struct nfs_server *server = NFS_SERVER(data->inode); in nfs4_proc_commit_setup() local
5539 data->res.server = server; in nfs4_proc_commit_setup()
5542 nfs4_state_protect(server->nfs_client, NFS_SP4_MACH_CRED_COMMIT, clnt, msg); in nfs4_proc_commit_setup()
5549 struct nfs_server *server = NFS_SERVER(dst_inode); in _nfs4_proc_commit() local
5557 return nfs4_call_sync(server->client, server, &msg, in _nfs4_proc_commit()
5671 static inline int nfs4_server_supports_acls(struct nfs_server *server) in nfs4_server_supports_acls() argument
5673 return server->caps & NFS_CAP_ACLS; in nfs4_server_supports_acls()
5806 struct nfs_server *server = NFS_SERVER(inode); in __nfs4_get_acl_uncached() local
5809 buflen = server->rsize; in __nfs4_get_acl_uncached()
5884 struct nfs_server *server = NFS_SERVER(inode); in nfs4_proc_get_acl() local
5887 if (!nfs4_server_supports_acls(server)) in nfs4_proc_get_acl()
5889 ret = nfs_revalidate_inode(server, inode); in nfs4_proc_get_acl()
5904 struct nfs_server *server = NFS_SERVER(inode); in __nfs4_proc_set_acl() local
5923 if (!nfs4_server_supports_acls(server)) in __nfs4_proc_set_acl()
5931 ret = nfs4_call_sync(server->client, server, &msg, &arg.seq_args, &res.seq_res, 1); in __nfs4_proc_set_acl()
5979 struct nfs_server *server = NFS_SERVER(inode); in _nfs4_get_security_label() local
5991 .server = server, in _nfs4_get_security_label()
6002 ret = nfs4_call_sync(server->client, server, &msg, &arg.seq_args, &res.seq_res, 0); in _nfs4_get_security_label()
6037 struct nfs_server *server = NFS_SERVER(inode); in _nfs4_do_set_security_label() local
6042 .server = server, in _nfs4_do_set_security_label()
6049 .server = server, in _nfs4_do_set_security_label()
6060 status = nfs4_call_sync(server->client, server, &msg, &arg.seq_args, &res.seq_res, 1); in _nfs4_do_set_security_label()
6425 renew_lease(data->res.server, data->timestamp); in nfs4_delegreturn_done()
6430 nfs4_free_revoked_stateid(data->res.server, in nfs4_delegreturn_done()
6456 data->res.server, task->tk_status, in nfs4_delegreturn_done()
6504 nfs4_setup_sequence(d_data->res.server->nfs_client, in nfs4_delegreturn_prepare()
6519 struct nfs_server *server = NFS_SERVER(inode); in _nfs4_proc_delegreturn() local
6526 .rpc_client = server->client, in _nfs4_proc_delegreturn()
6537 nfs4_state_protect(server->nfs_client, in _nfs4_proc_delegreturn()
6544 server->cache_consistency_bitmask, inode, server, in _nfs4_proc_delegreturn()
6550 data->res.server = server; in _nfs4_proc_delegreturn()
6591 struct nfs_server *server = NFS_SERVER(inode); in nfs4_proc_delegreturn() local
6603 err = nfs4_handle_exception(server, err, &exception); in nfs4_proc_delegreturn()
6611 struct nfs_server *server = NFS_SERVER(inode); in _nfs4_proc_getlk() local
6612 struct nfs_client *clp = server->nfs_client; in _nfs4_proc_getlk()
6635 arg.lock_owner.s_dev = server->s_dev; in _nfs4_proc_getlk()
6636 status = nfs4_call_sync(server->client, server, &msg, &arg.seq_args, &res.seq_res, 1); in _nfs4_proc_getlk()
6709 struct nfs_server *server; member
6735 p->server = NFS_SERVER(inode); in nfs4_alloc_unlockdata()
6764 renew_lease(calldata->server, calldata->timestamp); in nfs4_locku_done()
6772 nfs4_free_revoked_stateid(calldata->server, in nfs4_locku_done()
6789 calldata->server, task->tk_status, in nfs4_locku_done()
6812 if (nfs4_setup_sequence(calldata->server->nfs_client, in nfs4_locku_prepare()
6929 struct nfs_server *server; member
6938 struct nfs_server *server = NFS_SERVER(inode); in nfs4_alloc_lockdata() local
6950 alloc_seqid = server->nfs_client->cl_mvops->alloc_seqid; in nfs4_alloc_lockdata()
6954 p->arg.lock_owner.clientid = server->nfs_client->cl_clientid; in nfs4_alloc_lockdata()
6956 p->arg.lock_owner.s_dev = server->s_dev; in nfs4_alloc_lockdata()
6959 p->server = server; in nfs4_alloc_lockdata()
6999 if (nfs4_setup_sequence(data->server->nfs_client, in nfs4_lock_prepare()
7017 struct nfs_server *server = NFS_SERVER(d_inode(data->ctx->dentry)); in nfs4_lock_done() local
7027 renew_lease(server, data->timestamp); in nfs4_lock_done()
7048 else if (nfs4_async_handle_error(task, server, lsp->ls_state, NULL) == -EAGAIN) in nfs4_lock_done()
7090 static void nfs4_handle_setlk_error(struct nfs_server *server, struct nfs4_lock_state *lsp, int new… in nfs4_handle_setlk_error() argument
7099 nfs4_schedule_stateid_recovery(server, lsp->ls_state); in nfs4_handle_setlk_error()
7103 nfs4_schedule_lease_recovery(server->nfs_client); in nfs4_handle_setlk_error()
7149 nfs4_handle_setlk_error(data->server, data->lsp, in _nfs4_do_setlk()
7161 struct nfs_server *server = NFS_SERVER(state->inode); in nfs4_lock_reclaim() local
7174 nfs4_handle_exception(server, err, &exception); in nfs4_lock_reclaim()
7181 struct nfs_server *server = NFS_SERVER(state->inode); in nfs4_lock_expired() local
7203 nfs4_handle_exception(server, err, &exception); in nfs4_lock_expired()
7341 struct nfs_server *server = NFS_SERVER(state->inode); in nfs4_retry_setlk() local
7342 struct nfs_client *clp = server->nfs_client; in nfs4_retry_setlk()
7346 .s_dev = server->s_dev }; in nfs4_retry_setlk()
7441 struct nfs_server *server = NFS_SERVER(state->inode); in nfs4_lock_delegation_recall() local
7453 return nfs4_handle_delegation_recall_error(server, state, stateid, fl, err); in nfs4_lock_delegation_recall()
7458 struct nfs_server *server; member
7467 struct nfs_server *server = data->server; in nfs4_release_lockowner_prepare() local
7468 nfs4_setup_sequence(server->nfs_client, &data->args.seq_args, in nfs4_release_lockowner_prepare()
7470 data->args.lock_owner.clientid = server->nfs_client->cl_clientid; in nfs4_release_lockowner_prepare()
7477 struct nfs_server *server = data->server; in nfs4_release_lockowner_done() local
7483 renew_lease(server, data->timestamp); in nfs4_release_lockowner_done()
7487 nfs4_schedule_lease_recovery(server->nfs_client); in nfs4_release_lockowner_done()
7491 if (nfs4_async_handle_error(task, server, in nfs4_release_lockowner_done()
7500 nfs4_free_lock_state(data->server, data->lsp); in nfs4_release_lockowner_release()
7511 nfs4_release_lockowner(struct nfs_server *server, struct nfs4_lock_state *lsp) in nfs4_release_lockowner() argument
7518 if (server->nfs_client->cl_mvops->minor_version != 0) in nfs4_release_lockowner()
7525 data->server = server; in nfs4_release_lockowner()
7526 data->args.lock_owner.clientid = server->nfs_client->cl_clientid; in nfs4_release_lockowner()
7528 data->args.lock_owner.s_dev = server->s_dev; in nfs4_release_lockowner()
7533 rpc_call_async(server->client, &msg, 0, &nfs4_release_lockowner_ops, data); in nfs4_release_lockowner()
7761 struct nfs_server *server = NFS_SERVER(dir); in _nfs4_proc_fs_locations() local
7792 fs_locations->server = server; in _nfs4_proc_fs_locations()
7794 status = nfs4_call_sync(client, server, &msg, &args.seq_args, &res.seq_res, 0); in _nfs4_proc_fs_locations()
7829 struct nfs_server *server = NFS_SERVER(inode); in _nfs40_proc_get_locations() local
7830 struct rpc_clnt *clnt = server->client; in _nfs40_proc_get_locations()
7835 .clientid = server->nfs_client->cl_clientid, in _nfs40_proc_get_locations()
7857 locations->server = server; in _nfs40_proc_get_locations()
7861 status = nfs4_call_sync_sequence(clnt, server, &msg, in _nfs40_proc_get_locations()
7866 renew_lease(server, now); in _nfs40_proc_get_locations()
7886 struct nfs_server *server = NFS_SERVER(inode); in _nfs41_proc_get_locations() local
7887 struct rpc_clnt *clnt = server->client; in _nfs41_proc_get_locations()
7910 locations->server = server; in _nfs41_proc_get_locations()
7914 status = nfs4_call_sync_sequence(clnt, server, &msg, in _nfs41_proc_get_locations()
7945 struct nfs_server *server = NFS_SERVER(inode); in nfs4_proc_get_locations() local
7946 struct nfs_client *clp = server->nfs_client; in nfs4_proc_get_locations()
7955 (unsigned long long)server->fsid.major, in nfs4_proc_get_locations()
7956 (unsigned long long)server->fsid.minor, in nfs4_proc_get_locations()
7964 nfs4_handle_exception(server, status, &exception); in nfs4_proc_get_locations()
7978 struct nfs_server *server = NFS_SERVER(inode); in _nfs40_proc_fsid_present() local
7980 struct rpc_clnt *clnt = server->client; in _nfs40_proc_fsid_present()
8003 status = nfs4_call_sync_sequence(clnt, server, &msg, in _nfs40_proc_fsid_present()
8024 struct nfs_server *server = NFS_SERVER(inode); in _nfs41_proc_fsid_present() local
8025 struct rpc_clnt *clnt = server->client; in _nfs41_proc_fsid_present()
8044 status = nfs4_call_sync_sequence(clnt, server, &msg, in _nfs41_proc_fsid_present()
8071 struct nfs_server *server = NFS_SERVER(inode); in nfs4_proc_fsid_present() local
8072 struct nfs_client *clp = server->nfs_client; in nfs4_proc_fsid_present()
8081 (unsigned long long)server->fsid.major, in nfs4_proc_fsid_present()
8082 (unsigned long long)server->fsid.minor, in nfs4_proc_fsid_present()
8090 nfs4_handle_exception(server, status, &exception); in nfs4_proc_fsid_present()
9367 struct nfs_server *server = NFS_SERVER(lgp->args.inode); in nfs4_layoutget_prepare() local
9370 nfs4_setup_sequence(server->nfs_client, &lgp->args.seq_args, in nfs4_layoutget_prepare()
9389 struct nfs_server *server = NFS_SERVER(inode); in nfs4_layoutget_handle_exception() local
9463 err = nfs4_handle_exception(server, nfs4err, exception); in nfs4_layoutget_handle_exception()
9475 size_t max_response_pages(struct nfs_server *server) in max_response_pages() argument
9477 u32 max_resp_sz = server->nfs_client->cl_session->fc_attrs.max_resp_sz; in max_response_pages()
9501 struct nfs_server *server = NFS_SERVER(inode); in nfs4_proc_layoutget() local
9510 .rpc_client = server->client, in nfs4_proc_layoutget()
9575 struct nfs_server *server; in nfs4_layoutreturn_done() local
9591 server = NFS_SERVER(lrp->args.inode); in nfs4_layoutreturn_done()
9605 if (nfs4_async_handle_error(task, server, NULL, NULL) != -EAGAIN) in nfs4_layoutreturn_done()
9689 _nfs4_proc_getdeviceinfo(struct nfs_server *server, in _nfs4_proc_getdeviceinfo() argument
9710 status = nfs4_call_sync(server->client, server, &msg, &args.seq_args, &res.seq_res, 0); in _nfs4_proc_getdeviceinfo()
9721 int nfs4_proc_getdeviceinfo(struct nfs_server *server, in nfs4_proc_getdeviceinfo() argument
9729 err = nfs4_handle_exception(server, in nfs4_proc_getdeviceinfo()
9730 _nfs4_proc_getdeviceinfo(server, pdev, cred), in nfs4_proc_getdeviceinfo()
9740 struct nfs_server *server = NFS_SERVER(data->args.inode); in nfs4_layoutcommit_prepare() local
9742 nfs4_setup_sequence(server->nfs_client, in nfs4_layoutcommit_prepare()
9752 struct nfs_server *server = NFS_SERVER(data->args.inode); in nfs4_layoutcommit_done() local
9766 if (nfs4_async_handle_error(task, server, NULL, NULL) == -EAGAIN) { in nfs4_layoutcommit_done()
9840 _nfs41_proc_secinfo_no_name(struct nfs_server *server, struct nfs_fh *fhandle, in _nfs41_proc_secinfo_no_name() argument
9856 .seq_server = server, in _nfs41_proc_secinfo_no_name()
9861 .rpc_client = server->client, in _nfs41_proc_secinfo_no_name()
9863 .callback_ops = server->nfs_client->cl_mvops->call_sync_ops, in _nfs41_proc_secinfo_no_name()
9871 task_setup.rpc_client = server->nfs_client->cl_rpcclient; in _nfs41_proc_secinfo_no_name()
9873 cred = nfs4_get_clid_cred(server->nfs_client); in _nfs41_proc_secinfo_no_name()
9888 nfs41_proc_secinfo_no_name(struct nfs_server *server, struct nfs_fh *fhandle, in nfs41_proc_secinfo_no_name() argument
9900 if (_nfs4_is_integrity_protected(server->nfs_client)) in nfs41_proc_secinfo_no_name()
9901 err = _nfs41_proc_secinfo_no_name(server, fhandle, info, in nfs41_proc_secinfo_no_name()
9911 err = _nfs41_proc_secinfo_no_name(server, fhandle, info, in nfs41_proc_secinfo_no_name()
9920 err = nfs4_handle_exception(server, err, &exception); in nfs41_proc_secinfo_no_name()
9928 nfs41_find_root_sec(struct nfs_server *server, struct nfs_fh *fhandle, in nfs41_find_root_sec() argument
9945 err = nfs41_proc_secinfo_no_name(server, fhandle, info, flavors); in nfs41_find_root_sec()
9952 err = nfs4_find_root_sec(server, fhandle, info); in nfs41_find_root_sec()
9973 if (!nfs_auth_info_match(&server->auth_info, flavor)) in nfs41_find_root_sec()
9977 err = nfs4_lookup_root_sec(server, fhandle, in nfs41_find_root_sec()
9995 static int _nfs41_test_stateid(struct nfs_server *server, in _nfs41_test_stateid() argument
10010 struct rpc_clnt *rpc_client = server->client; in _nfs41_test_stateid()
10012 nfs4_state_protect(server->nfs_client, NFS_SP4_MACH_CRED_STATEID, in _nfs41_test_stateid()
10017 status = nfs4_call_sync_sequence(rpc_client, server, &msg, in _nfs41_test_stateid()
10027 static void nfs4_handle_delay_or_session_error(struct nfs_server *server, in nfs4_handle_delay_or_session_error() argument
10034 nfs4_handle_exception(server, err, exception); in nfs4_handle_delay_or_session_error()
10041 nfs4_do_handle_exception(server, err, exception); in nfs4_handle_delay_or_session_error()
10056 static int nfs41_test_stateid(struct nfs_server *server, in nfs41_test_stateid() argument
10065 err = _nfs41_test_stateid(server, stateid, cred); in nfs41_test_stateid()
10066 nfs4_handle_delay_or_session_error(server, err, &exception); in nfs41_test_stateid()
10072 struct nfs_server *server; member
10080 nfs4_setup_sequence(data->server->nfs_client, in nfs41_free_stateid_prepare()
10094 if (nfs4_async_handle_error(task, data->server, NULL, NULL) == -EAGAIN) in nfs41_free_stateid_done()
10120 static int nfs41_free_stateid(struct nfs_server *server, in nfs41_free_stateid() argument
10130 .rpc_client = server->client, in nfs41_free_stateid()
10138 nfs4_state_protect(server->nfs_client, NFS_SP4_MACH_CRED_STATEID, in nfs41_free_stateid()
10145 data->server = server; in nfs41_free_stateid()
10161 nfs41_free_lock_state(struct nfs_server *server, struct nfs4_lock_state *lsp) in nfs41_free_lock_state() argument
10165 nfs41_free_stateid(server, &lsp->ls_stateid, cred, false); in nfs41_free_lock_state()
10166 nfs4_free_lock_state(server, lsp); in nfs41_free_lock_state()