Lines Matching refs:server
83 static int _nfs4_proc_getattr(struct nfs_server *server, struct nfs_fh *fhandle, struct nfs_fattr *…
121 static inline u32 *nfs4_bitmask(struct nfs_server *server, struct nfs4_label *label) in nfs4_bitmask() argument
124 return server->attr_bitmask; in nfs4_bitmask()
126 return server->attr_bitmask_nl; in nfs4_bitmask()
137 nfs4_bitmask(struct nfs_server *server, struct nfs4_label *label) in nfs4_bitmask() argument
138 { return server->attr_bitmask; } in nfs4_bitmask()
347 static int nfs4_do_handle_exception(struct nfs_server *server, in nfs4_do_handle_exception() argument
350 struct nfs_client *clp = server->nfs_client; in nfs4_do_handle_exception()
370 ret = nfs4_schedule_stateid_recovery(server, state); in nfs4_do_handle_exception()
376 ret = nfs4_schedule_stateid_recovery(server, state); in nfs4_do_handle_exception()
385 ret = nfs4_schedule_migration_recovery(server); in nfs4_do_handle_exception()
414 nfs_inc_server_stats(server, NFSIOS_DELAY); in nfs4_do_handle_exception()
426 if (server->caps & NFS_CAP_UIDGID_NOMAP) { in nfs4_do_handle_exception()
427 server->caps &= ~NFS_CAP_UIDGID_NOMAP; in nfs4_do_handle_exception()
433 server->nfs_client->cl_hostname); in nfs4_do_handle_exception()
446 int nfs4_handle_exception(struct nfs_server *server, int errorcode, struct nfs4_exception *exceptio… in nfs4_handle_exception() argument
448 struct nfs_client *clp = server->nfs_client; in nfs4_handle_exception()
451 ret = nfs4_do_handle_exception(server, errorcode, exception); in nfs4_handle_exception()
453 ret = nfs4_delay(server->client, &exception->timeout); in nfs4_handle_exception()
458 if (test_bit(NFS_MIG_FAILED, &server->mig_status)) in nfs4_handle_exception()
470 nfs4_async_handle_exception(struct rpc_task *task, struct nfs_server *server, in nfs4_async_handle_exception() argument
473 struct nfs_client *clp = server->nfs_client; in nfs4_async_handle_exception()
476 ret = nfs4_do_handle_exception(server, errorcode, exception); in nfs4_async_handle_exception()
487 if (test_bit(NFS_MIG_FAILED, &server->mig_status)) in nfs4_async_handle_exception()
497 nfs4_async_handle_error(struct rpc_task *task, struct nfs_server *server, in nfs4_async_handle_error() argument
508 task->tk_status = nfs4_async_handle_exception(task, server, in nfs4_async_handle_error()
541 static void renew_lease(const struct nfs_server *server, unsigned long timestamp) in renew_lease() argument
543 struct nfs_client *clp = server->nfs_client; in renew_lease()
842 static int nfs4_setup_sequence(const struct nfs_server *server, in nfs4_setup_sequence() argument
847 struct nfs4_session *session = nfs4_get_session(server); in nfs4_setup_sequence()
851 return nfs40_setup_sequence(server->nfs_client->cl_slot_tbl, in nfs4_setup_sequence()
888 static int nfs4_setup_sequence(const struct nfs_server *server, in nfs4_setup_sequence() argument
893 return nfs40_setup_sequence(server->nfs_client->cl_slot_tbl, in nfs4_setup_sequence()
925 struct nfs_server *server, in nfs4_call_sync_sequence() argument
932 struct nfs_client *clp = server->nfs_client; in nfs4_call_sync_sequence()
934 .seq_server = server, in nfs4_call_sync_sequence()
956 struct nfs_server *server, in nfs4_call_sync() argument
963 return nfs4_call_sync_sequence(clnt, server, msg, args, res); in nfs4_call_sync()
1004 static bool nfs4_clear_cap_atomic_open_v1(struct nfs_server *server, in nfs4_clear_cap_atomic_open_v1() argument
1009 if (!(server->caps & NFS_CAP_ATOMIC_OPEN_V1)) in nfs4_clear_cap_atomic_open_v1()
1011 server->caps &= ~NFS_CAP_ATOMIC_OPEN_V1; in nfs4_clear_cap_atomic_open_v1()
1017 nfs4_map_atomic_open_share(struct nfs_server *server, in nfs4_map_atomic_open_share() argument
1032 if (!(server->caps & NFS_CAP_ATOMIC_OPEN_V1)) in nfs4_map_atomic_open_share()
1042 nfs4_map_atomic_open_claim(struct nfs_server *server, in nfs4_map_atomic_open_claim() argument
1045 if (server->caps & NFS_CAP_ATOMIC_OPEN_V1) in nfs4_map_atomic_open_claim()
1065 p->o_res.server = p->o_arg.server; in nfs4_init_opendata_res()
1080 struct nfs_server *server = NFS_SERVER(dir); in nfs4_opendata_alloc() local
1088 p->f_label = nfs4_label_alloc(server, gfp_mask); in nfs4_opendata_alloc()
1092 p->a_label = nfs4_label_alloc(server, gfp_mask); in nfs4_opendata_alloc()
1096 alloc_seqid = server->nfs_client->cl_mvops->alloc_seqid; in nfs4_opendata_alloc()
1107 p->o_arg.share_access = nfs4_map_atomic_open_share(server, in nfs4_opendata_alloc()
1117 p->o_arg.clientid = server->nfs_client->cl_clientid; in nfs4_opendata_alloc()
1121 p->o_arg.server = server; in nfs4_opendata_alloc()
1122 p->o_arg.bitmask = nfs4_bitmask(server, label); in nfs4_opendata_alloc()
1125 p->o_arg.claim = nfs4_map_atomic_open_claim(server, claim); in nfs4_opendata_alloc()
1759 struct nfs_server *server = NFS_SERVER(state->inode); in nfs4_do_open_reclaim() local
1765 if (nfs4_clear_cap_atomic_open_v1(server, err, &exception)) in nfs4_do_open_reclaim()
1769 nfs4_handle_exception(server, err, &exception); in nfs4_do_open_reclaim()
1787 static int nfs4_handle_delegation_recall_error(struct nfs_server *server, struct nfs4_state *state,… in nfs4_handle_delegation_recall_error() argument
1804 nfs4_schedule_session_recovery(server->nfs_client->cl_session, err); in nfs4_handle_delegation_recall_error()
1811 nfs4_schedule_lease_recovery(server->nfs_client); in nfs4_handle_delegation_recall_error()
1814 nfs4_schedule_migration_recovery(server); in nfs4_handle_delegation_recall_error()
1817 nfs4_schedule_lease_moved_recovery(server->nfs_client); in nfs4_handle_delegation_recall_error()
1825 nfs4_schedule_stateid_recovery(server, state); in nfs4_handle_delegation_recall_error()
1844 struct nfs_server *server = NFS_SERVER(state->inode); in nfs4_open_delegation_recall() local
1870 return nfs4_handle_delegation_recall_error(server, state, stateid, err); in nfs4_open_delegation_recall()
1877 nfs40_setup_sequence(data->o_arg.server->nfs_client->cl_slot_tbl, in nfs4_open_confirm_prepare()
1891 renew_lease(data->o_res.server, data->timestamp); in nfs4_open_confirm_done()
1925 struct nfs_server *server = NFS_SERVER(d_inode(data->dir)); in _nfs4_proc_open_confirm() local
1934 .rpc_client = server->client, in _nfs4_proc_open_confirm()
2001 if (nfs4_setup_sequence(data->o_arg.server, in nfs4_open_prepare()
2049 renew_lease(data->o_res.server, data->timestamp); in nfs4_open_done()
2086 struct nfs_server *server = NFS_SERVER(dir); in nfs4_run_open_task() local
2097 .rpc_client = server->client, in nfs4_run_open_task()
2202 struct nfs_server *server = NFS_SERVER(dir); in _nfs4_proc_open() local
2217 nfs_fattr_map_and_free_names(server, &data->f_attr); in _nfs4_proc_open()
2227 server->caps &= ~NFS_CAP_POSIX_LOCK; in _nfs4_proc_open()
2234 nfs4_proc_getattr(server, &o_res->fh, o_res->f_attr, o_res->f_label); in _nfs4_proc_open()
2238 static int nfs4_recover_expired_lease(struct nfs_server *server) in nfs4_recover_expired_lease() argument
2240 return nfs4_client_recover_expired_lease(server->nfs_client); in nfs4_recover_expired_lease()
2266 struct nfs_server *server = NFS_SERVER(state->inode); in nfs4_do_open_expired() local
2273 if (nfs4_clear_cap_atomic_open_v1(server, err, &exception)) in nfs4_do_open_expired()
2280 nfs4_handle_exception(server, err, &exception); in nfs4_do_open_expired()
2326 struct nfs_server *server = NFS_SERVER(state->inode); in nfs41_check_delegation_stateid() local
2343 status = nfs41_test_stateid(server, &stateid, cred); in nfs41_check_delegation_stateid()
2350 nfs41_free_stateid(server, &stateid, cred); in nfs41_check_delegation_stateid()
2367 struct nfs_server *server = NFS_SERVER(state->inode); in nfs41_check_open_stateid() local
2378 status = nfs41_test_stateid(server, stateid, cred); in nfs41_check_open_stateid()
2384 nfs41_free_stateid(server, stateid, cred); in nfs41_check_open_stateid()
2438 struct nfs_server *server = sp->so_server; in _nfs4_open_and_get_state() local
2454 if (server->caps & NFS_CAP_POSIX_LOCK) in _nfs4_open_and_get_state()
2480 nfs4_schedule_stateid_recovery(server, state); in _nfs4_open_and_get_state()
2498 struct nfs_server *server = NFS_SERVER(dir); in _nfs4_do_open() local
2510 sp = nfs4_get_state_owner(server, cred, GFP_KERNEL); in _nfs4_do_open()
2515 status = nfs4_recover_expired_lease(server); in _nfs4_do_open()
2529 olabel = nfs4_label_alloc(server, GFP_KERNEL); in _nfs4_do_open()
2536 if (server->attr_bitmask[2] & FATTR4_WORD2_MDSTHRESHOLD) { in _nfs4_do_open()
2569 if (pnfs_use_threshold(ctx_th, opendata->f_attr.mdsthreshold, server)) { in _nfs4_do_open()
2597 struct nfs_server *server = NFS_SERVER(dir); in nfs4_do_open() local
2641 if (nfs4_clear_cap_atomic_open_v1(server, status, &exception)) in nfs4_do_open()
2643 res = ERR_PTR(nfs4_handle_exception(server, in nfs4_do_open()
2654 struct nfs_server *server = NFS_SERVER(inode); in _nfs4_do_setattr() local
2658 .server = server, in _nfs4_do_setattr()
2659 .bitmask = server->attr_bitmask, in _nfs4_do_setattr()
2665 .server = server, in _nfs4_do_setattr()
2678 arg.bitmask = nfs4_bitmask(server, ilabel); in _nfs4_do_setattr()
2680 arg.bitmask = nfs4_bitmask(server, olabel); in _nfs4_do_setattr()
2703 status = nfs4_call_sync(server->client, server, &msg, &arg.seq_args, &res.seq_res, 1); in _nfs4_do_setattr()
2705 renew_lease(server, timestamp); in _nfs4_do_setattr()
2714 struct nfs_server *server = NFS_SERVER(inode); in nfs4_do_setattr() local
2730 server->nfs_client->cl_hostname); in nfs4_do_setattr()
2739 err = nfs4_handle_exception(server, err, &exception); in nfs4_do_setattr()
2784 struct nfs_server *server = NFS_SERVER(calldata->inode); in nfs4_close_done() local
2800 renew_lease(server, calldata->timestamp); in nfs4_close_done()
2815 if (nfs4_async_handle_error(task, server, state, NULL) == -EAGAIN) { in nfs4_close_done()
2927 struct nfs_server *server = NFS_SERVER(state->inode); in nfs4_do_close() local
2937 .rpc_client = server->client, in nfs4_do_close()
2945 nfs4_state_protect(server->nfs_client, NFS_SP4_MACH_CRED_CLEANUP, in nfs4_do_close()
2956 alloc_seqid = server->nfs_client->cl_mvops->alloc_seqid; in nfs4_do_close()
2961 calldata->arg.bitmask = server->cache_consistency_bitmask; in nfs4_do_close()
2964 calldata->res.server = server; in nfs4_do_close()
3020 static int _nfs4_server_capabilities(struct nfs_server *server, struct nfs_fh *fhandle) in _nfs4_server_capabilities() argument
3022 u32 bitmask[3] = {}, minorversion = server->nfs_client->cl_minorversion; in _nfs4_server_capabilities()
3043 status = nfs4_call_sync(server->client, server, &msg, &args.seq_args, &res.seq_res, 0); in _nfs4_server_capabilities()
3057 memcpy(server->attr_bitmask, res.attr_bitmask, sizeof(server->attr_bitmask)); in _nfs4_server_capabilities()
3058 server->caps &= ~(NFS_CAP_ACLS|NFS_CAP_HARDLINKS| in _nfs4_server_capabilities()
3066 server->caps |= NFS_CAP_ACLS; in _nfs4_server_capabilities()
3068 server->caps |= NFS_CAP_HARDLINKS; in _nfs4_server_capabilities()
3070 server->caps |= NFS_CAP_SYMLINKS; in _nfs4_server_capabilities()
3072 server->caps |= NFS_CAP_FILEID; in _nfs4_server_capabilities()
3074 server->caps |= NFS_CAP_MODE; in _nfs4_server_capabilities()
3076 server->caps |= NFS_CAP_NLINK; in _nfs4_server_capabilities()
3078 server->caps |= NFS_CAP_OWNER; in _nfs4_server_capabilities()
3080 server->caps |= NFS_CAP_OWNER_GROUP; in _nfs4_server_capabilities()
3082 server->caps |= NFS_CAP_ATIME; in _nfs4_server_capabilities()
3084 server->caps |= NFS_CAP_CTIME; in _nfs4_server_capabilities()
3086 server->caps |= NFS_CAP_MTIME; in _nfs4_server_capabilities()
3089 server->caps |= NFS_CAP_SECURITY_LABEL; in _nfs4_server_capabilities()
3091 memcpy(server->attr_bitmask_nl, res.attr_bitmask, in _nfs4_server_capabilities()
3092 sizeof(server->attr_bitmask)); in _nfs4_server_capabilities()
3093 server->attr_bitmask_nl[2] &= ~FATTR4_WORD2_SECURITY_LABEL; in _nfs4_server_capabilities()
3095 …memcpy(server->cache_consistency_bitmask, res.attr_bitmask, sizeof(server->cache_consistency_bitma… in _nfs4_server_capabilities()
3096 server->cache_consistency_bitmask[0] &= FATTR4_WORD0_CHANGE|FATTR4_WORD0_SIZE; in _nfs4_server_capabilities()
3097 server->cache_consistency_bitmask[1] &= FATTR4_WORD1_TIME_METADATA|FATTR4_WORD1_TIME_MODIFY; in _nfs4_server_capabilities()
3098 server->cache_consistency_bitmask[2] = 0; in _nfs4_server_capabilities()
3099 memcpy(server->exclcreat_bitmask, res.exclcreat_bitmask, in _nfs4_server_capabilities()
3100 sizeof(server->exclcreat_bitmask)); in _nfs4_server_capabilities()
3101 server->acl_bitmask = res.acl_bitmask; in _nfs4_server_capabilities()
3102 server->fh_expire_type = res.fh_expire_type; in _nfs4_server_capabilities()
3108 int nfs4_server_capabilities(struct nfs_server *server, struct nfs_fh *fhandle) in nfs4_server_capabilities() argument
3113 err = nfs4_handle_exception(server, in nfs4_server_capabilities()
3114 _nfs4_server_capabilities(server, fhandle), in nfs4_server_capabilities()
3120 static int _nfs4_lookup_root(struct nfs_server *server, struct nfs_fh *fhandle, in _nfs4_lookup_root() argument
3128 .server = server, in _nfs4_lookup_root()
3146 return nfs4_call_sync(server->client, server, &msg, &args.seq_args, &res.seq_res, 0); in _nfs4_lookup_root()
3149 static int nfs4_lookup_root(struct nfs_server *server, struct nfs_fh *fhandle, in nfs4_lookup_root() argument
3155 err = _nfs4_lookup_root(server, fhandle, info); in nfs4_lookup_root()
3156 trace_nfs4_lookup_root(server, fhandle, info->fattr, err); in nfs4_lookup_root()
3162 err = nfs4_handle_exception(server, err, &exception); in nfs4_lookup_root()
3169 static int nfs4_lookup_root_sec(struct nfs_server *server, struct nfs_fh *fhandle, in nfs4_lookup_root_sec() argument
3178 auth = rpcauth_create(&auth_args, server->client); in nfs4_lookup_root_sec()
3183 ret = nfs4_lookup_root(server, fhandle, info); in nfs4_lookup_root_sec()
3197 static int nfs4_find_root_sec(struct nfs_server *server, struct nfs_fh *fhandle, in nfs4_find_root_sec() argument
3211 if (server->auth_info.flavor_len > 0) { in nfs4_find_root_sec()
3213 for (i = 0; i < server->auth_info.flavor_len; i++) { in nfs4_find_root_sec()
3214 status = nfs4_lookup_root_sec(server, fhandle, info, in nfs4_find_root_sec()
3215 server->auth_info.flavors[i]); in nfs4_find_root_sec()
3223 status = nfs4_lookup_root_sec(server, fhandle, info, in nfs4_find_root_sec()
3243 static int nfs4_do_find_root_sec(struct nfs_server *server, in nfs4_do_find_root_sec() argument
3246 int mv = server->nfs_client->cl_minorversion; in nfs4_do_find_root_sec()
3247 return nfs_v4_minor_ops[mv]->find_root_sec(server, fhandle, info); in nfs4_do_find_root_sec()
3259 int nfs4_proc_get_rootfh(struct nfs_server *server, struct nfs_fh *fhandle, in nfs4_proc_get_rootfh() argument
3266 status = nfs4_lookup_root(server, fhandle, info); in nfs4_proc_get_rootfh()
3269 status = nfs4_do_find_root_sec(server, fhandle, info); in nfs4_proc_get_rootfh()
3272 status = nfs4_server_capabilities(server, fhandle); in nfs4_proc_get_rootfh()
3274 status = nfs4_do_fsinfo(server, fhandle, info); in nfs4_proc_get_rootfh()
3279 static int nfs4_proc_get_root(struct nfs_server *server, struct nfs_fh *mntfh, in nfs4_proc_get_root() argument
3286 error = nfs4_server_capabilities(server, mntfh); in nfs4_proc_get_root()
3292 label = nfs4_label_alloc(server, GFP_KERNEL); in nfs4_proc_get_root()
3296 error = nfs4_proc_getattr(server, mntfh, fattr, label); in nfs4_proc_get_root()
3303 !nfs_fsid_equal(&server->fsid, &fattr->fsid)) in nfs4_proc_get_root()
3304 memcpy(&server->fsid, &fattr->fsid, sizeof(server->fsid)); in nfs4_proc_get_root()
3360 static int _nfs4_proc_getattr(struct nfs_server *server, struct nfs_fh *fhandle, in _nfs4_proc_getattr() argument
3365 .bitmask = server->attr_bitmask, in _nfs4_proc_getattr()
3370 .server = server, in _nfs4_proc_getattr()
3378 args.bitmask = nfs4_bitmask(server, label); in _nfs4_proc_getattr()
3381 return nfs4_call_sync(server->client, server, &msg, &args.seq_args, &res.seq_res, 0); in _nfs4_proc_getattr()
3384 static int nfs4_proc_getattr(struct nfs_server *server, struct nfs_fh *fhandle, in nfs4_proc_getattr() argument
3390 err = _nfs4_proc_getattr(server, fhandle, fattr, label); in nfs4_proc_getattr()
3391 trace_nfs4_getattr(server, fhandle, fattr, err); in nfs4_proc_getattr()
3392 err = nfs4_handle_exception(server, err, in nfs4_proc_getattr()
3468 struct nfs_server *server = NFS_SERVER(dir); in _nfs4_proc_lookup() local
3471 .bitmask = server->attr_bitmask, in _nfs4_proc_lookup()
3476 .server = server, in _nfs4_proc_lookup()
3487 args.bitmask = nfs4_bitmask(server, label); in _nfs4_proc_lookup()
3492 status = nfs4_call_sync(clnt, server, &msg, &args.seq_args, &res.seq_res, 0); in _nfs4_proc_lookup()
3578 struct nfs_server *server = NFS_SERVER(inode); in _nfs4_proc_access() local
3581 .bitmask = server->cache_consistency_bitmask, in _nfs4_proc_access()
3584 .server = server, in _nfs4_proc_access()
3616 status = nfs4_call_sync(server->client, server, &msg, &args.seq_args, &res.seq_res, 0); in _nfs4_proc_access()
3725 struct nfs_server *server = NFS_SERVER(dir); in _nfs4_proc_remove() local
3731 .server = server, in _nfs4_proc_remove()
3740 status = nfs4_call_sync(server->client, server, &msg, &args.seq_args, &res.seq_res, 1); in _nfs4_proc_remove()
3761 struct nfs_server *server = NFS_SERVER(dir); in nfs4_proc_unlink_setup() local
3765 res->server = server; in nfs4_proc_unlink_setup()
3787 if (nfs4_async_handle_error(task, res->server, NULL, in nfs4_proc_unlink_done()
3796 struct nfs_server *server = NFS_SERVER(dir); in nfs4_proc_rename_setup() local
3801 res->server = server; in nfs4_proc_rename_setup()
3821 if (nfs4_async_handle_error(task, res->server, NULL, &data->timeout) == -EAGAIN) in nfs4_proc_rename_done()
3831 struct nfs_server *server = NFS_SERVER(inode); in _nfs4_proc_link() local
3836 .bitmask = server->attr_bitmask, in _nfs4_proc_link()
3839 .server = server, in _nfs4_proc_link()
3853 res.label = nfs4_label_alloc(server, GFP_KERNEL); in _nfs4_proc_link()
3858 arg.bitmask = nfs4_bitmask(server, res.label); in _nfs4_proc_link()
3860 status = nfs4_call_sync(server->client, server, &msg, &arg.seq_args, &res.seq_res, 1); in _nfs4_proc_link()
3904 struct nfs_server *server = NFS_SERVER(dir); in nfs4_alloc_createdata() local
3906 data->label = nfs4_label_alloc(server, GFP_KERNEL); in nfs4_alloc_createdata()
3914 data->arg.server = server; in nfs4_alloc_createdata()
3918 data->arg.bitmask = nfs4_bitmask(server, data->label); in nfs4_alloc_createdata()
3919 data->res.server = server; in nfs4_alloc_createdata()
4144 static int _nfs4_proc_statfs(struct nfs_server *server, struct nfs_fh *fhandle, in _nfs4_proc_statfs() argument
4149 .bitmask = server->attr_bitmask, in _nfs4_proc_statfs()
4161 return nfs4_call_sync(server->client, server, &msg, &args.seq_args, &res.seq_res, 0); in _nfs4_proc_statfs()
4164 static int nfs4_proc_statfs(struct nfs_server *server, struct nfs_fh *fhandle, struct nfs_fsstat *f… in nfs4_proc_statfs() argument
4169 err = nfs4_handle_exception(server, in nfs4_proc_statfs()
4170 _nfs4_proc_statfs(server, fhandle, fsstat), in nfs4_proc_statfs()
4176 static int _nfs4_do_fsinfo(struct nfs_server *server, struct nfs_fh *fhandle, in _nfs4_do_fsinfo() argument
4181 .bitmask = server->attr_bitmask, in _nfs4_do_fsinfo()
4192 return nfs4_call_sync(server->client, server, &msg, &args.seq_args, &res.seq_res, 0); in _nfs4_do_fsinfo()
4195 static int nfs4_do_fsinfo(struct nfs_server *server, struct nfs_fh *fhandle, struct nfs_fsinfo *fsi… in nfs4_do_fsinfo() argument
4202 err = _nfs4_do_fsinfo(server, fhandle, fsinfo); in nfs4_do_fsinfo()
4203 trace_nfs4_fsinfo(server, fhandle, fsinfo->fattr, err); in nfs4_do_fsinfo()
4205 struct nfs_client *clp = server->nfs_client; in nfs4_do_fsinfo()
4213 err = nfs4_handle_exception(server, err, &exception); in nfs4_do_fsinfo()
4218 static int nfs4_proc_fsinfo(struct nfs_server *server, struct nfs_fh *fhandle, struct nfs_fsinfo *f… in nfs4_proc_fsinfo() argument
4223 error = nfs4_do_fsinfo(server, fhandle, fsinfo); in nfs4_proc_fsinfo()
4226 server->pnfs_blksize = fsinfo->blksize; in nfs4_proc_fsinfo()
4227 set_pnfs_layoutdriver(server, fhandle, fsinfo->layouttype); in nfs4_proc_fsinfo()
4233 static int _nfs4_proc_pathconf(struct nfs_server *server, struct nfs_fh *fhandle, in _nfs4_proc_pathconf() argument
4238 .bitmask = server->attr_bitmask, in _nfs4_proc_pathconf()
4256 return nfs4_call_sync(server->client, server, &msg, &args.seq_args, &res.seq_res, 0); in _nfs4_proc_pathconf()
4259 static int nfs4_proc_pathconf(struct nfs_server *server, struct nfs_fh *fhandle, in nfs4_proc_pathconf() argument
4266 err = nfs4_handle_exception(server, in nfs4_proc_pathconf()
4267 _nfs4_proc_pathconf(server, fhandle, pathconf), in nfs4_proc_pathconf()
4321 struct nfs_server *server = NFS_SERVER(hdr->inode); in nfs4_read_done_cb() local
4324 if (nfs4_async_handle_error(task, server, in nfs4_read_done_cb()
4333 renew_lease(server, hdr->timestamp); in nfs4_read_done_cb()
4448 struct nfs_server *server = NFS_SERVER(hdr->inode); in nfs4_proc_write_setup() local
4454 hdr->args.bitmask = server->cache_consistency_bitmask; in nfs4_proc_write_setup()
4458 hdr->res.server = server; in nfs4_proc_write_setup()
4495 struct nfs_server *server = NFS_SERVER(data->inode); in nfs4_proc_commit_setup() local
4499 data->res.server = server; in nfs4_proc_commit_setup()
4594 static inline int nfs4_server_supports_acls(struct nfs_server *server) in nfs4_server_supports_acls() argument
4596 return server->caps & NFS_CAP_ACLS; in nfs4_server_supports_acls()
4801 struct nfs_server *server = NFS_SERVER(inode); in nfs4_proc_get_acl() local
4804 if (!nfs4_server_supports_acls(server)) in nfs4_proc_get_acl()
4806 ret = nfs_revalidate_inode(server, inode); in nfs4_proc_get_acl()
4821 struct nfs_server *server = NFS_SERVER(inode); in __nfs4_proc_set_acl() local
4837 if (!nfs4_server_supports_acls(server)) in __nfs4_proc_set_acl()
4845 ret = nfs4_call_sync(server->client, server, &msg, &arg.seq_args, &res.seq_res, 1); in __nfs4_proc_set_acl()
4883 struct nfs_server *server = NFS_SERVER(inode); in _nfs4_get_security_label() local
4895 .server = server, in _nfs4_get_security_label()
4906 ret = nfs4_call_sync(server->client, server, &msg, &arg.seq_args, &res.seq_res, 0); in _nfs4_get_security_label()
4941 struct nfs_server *server = NFS_SERVER(inode); in _nfs4_do_set_security_label() local
4946 .server = server, in _nfs4_do_set_security_label()
4953 .server = server, in _nfs4_do_set_security_label()
4964 status = nfs4_call_sync(server->client, server, &msg, &arg.seq_args, &res.seq_res, 1); in _nfs4_do_set_security_label()
5308 renew_lease(data->res.server, data->timestamp); in nfs4_delegreturn_done()
5320 if (nfs4_async_handle_error(task, data->res.server, in nfs4_delegreturn_done()
5354 nfs4_setup_sequence(d_data->res.server, in nfs4_delegreturn_prepare()
5369 struct nfs_server *server = NFS_SERVER(inode); in _nfs4_proc_delegreturn() local
5376 .rpc_client = server->client, in _nfs4_proc_delegreturn()
5389 data->args.bitmask = server->cache_consistency_bitmask; in _nfs4_proc_delegreturn()
5393 data->res.server = server; in _nfs4_proc_delegreturn()
5424 struct nfs_server *server = NFS_SERVER(inode); in nfs4_proc_delegreturn() local
5436 err = nfs4_handle_exception(server, err, &exception); in nfs4_proc_delegreturn()
5460 struct nfs_server *server = NFS_SERVER(inode); in _nfs4_proc_getlk() local
5461 struct nfs_client *clp = server->nfs_client; in _nfs4_proc_getlk()
5484 arg.lock_owner.s_dev = server->s_dev; in _nfs4_proc_getlk()
5485 status = nfs4_call_sync(server->client, server, &msg, &arg.seq_args, &res.seq_res, 1); in _nfs4_proc_getlk()
5524 struct nfs_server *server; member
5548 p->server = NFS_SERVER(inode); in nfs4_alloc_unlockdata()
5569 renew_lease(calldata->server, calldata->timestamp); in nfs4_locku_done()
5583 if (nfs4_async_handle_error(task, calldata->server, in nfs4_locku_done()
5602 if (nfs4_setup_sequence(calldata->server, in nfs4_locku_prepare()
5717 struct nfs_server *server; member
5726 struct nfs_server *server = NFS_SERVER(inode); in nfs4_alloc_lockdata() local
5738 alloc_seqid = server->nfs_client->cl_mvops->alloc_seqid; in nfs4_alloc_lockdata()
5742 p->arg.lock_owner.clientid = server->nfs_client->cl_clientid; in nfs4_alloc_lockdata()
5744 p->arg.lock_owner.s_dev = server->s_dev; in nfs4_alloc_lockdata()
5747 p->server = server; in nfs4_alloc_lockdata()
5788 if (nfs4_setup_sequence(data->server, in nfs4_lock_prepare()
5874 static void nfs4_handle_setlk_error(struct nfs_server *server, struct nfs4_lock_state *lsp, int new… in nfs4_handle_setlk_error() argument
5882 nfs4_schedule_stateid_recovery(server, lsp->ls_state); in nfs4_handle_setlk_error()
5887 nfs4_schedule_lease_recovery(server->nfs_client); in nfs4_handle_setlk_error()
5933 nfs4_handle_setlk_error(data->server, data->lsp, in _nfs4_do_setlk()
5944 struct nfs_server *server = NFS_SERVER(state->inode); in nfs4_lock_reclaim() local
5958 nfs4_handle_exception(server, err, &exception); in nfs4_lock_reclaim()
5965 struct nfs_server *server = NFS_SERVER(state->inode); in nfs4_lock_expired() local
5988 nfs4_handle_exception(server, err, &exception); in nfs4_lock_expired()
6009 struct nfs_server *server = NFS_SERVER(state->inode); in nfs41_check_expired_locks() local
6015 status = nfs41_test_stateid(server, in nfs41_check_expired_locks()
6023 nfs41_free_stateid(server, in nfs41_check_expired_locks()
6159 struct nfs_server *server = NFS_SERVER(state->inode); in nfs4_lock_delegation_recall() local
6166 return nfs4_handle_delegation_recall_error(server, state, stateid, err); in nfs4_lock_delegation_recall()
6171 struct nfs_server *server; member
6180 struct nfs_server *server = data->server; in nfs4_release_lockowner_prepare() local
6181 nfs40_setup_sequence(server->nfs_client->cl_slot_tbl, in nfs4_release_lockowner_prepare()
6183 data->args.lock_owner.clientid = server->nfs_client->cl_clientid; in nfs4_release_lockowner_prepare()
6190 struct nfs_server *server = data->server; in nfs4_release_lockowner_done() local
6196 renew_lease(server, data->timestamp); in nfs4_release_lockowner_done()
6200 nfs4_schedule_lease_recovery(server->nfs_client); in nfs4_release_lockowner_done()
6204 if (nfs4_async_handle_error(task, server, in nfs4_release_lockowner_done()
6213 nfs4_free_lock_state(data->server, data->lsp); in nfs4_release_lockowner_release()
6224 nfs4_release_lockowner(struct nfs_server *server, struct nfs4_lock_state *lsp) in nfs4_release_lockowner() argument
6231 if (server->nfs_client->cl_mvops->minor_version != 0) in nfs4_release_lockowner()
6238 data->server = server; in nfs4_release_lockowner()
6239 data->args.lock_owner.clientid = server->nfs_client->cl_clientid; in nfs4_release_lockowner()
6241 data->args.lock_owner.s_dev = server->s_dev; in nfs4_release_lockowner()
6246 rpc_call_async(server->client, &msg, 0, &nfs4_release_lockowner_ops, data); in nfs4_release_lockowner()
6288 static inline int nfs4_server_supports_labels(struct nfs_server *server) in nfs4_server_supports_labels() argument
6290 return server->caps & NFS_CAP_SECURITY_LABEL; in nfs4_server_supports_labels()
6359 struct nfs_server *server = NFS_SERVER(dir); in _nfs4_proc_fs_locations() local
6389 fs_locations->server = server; in _nfs4_proc_fs_locations()
6391 status = nfs4_call_sync(client, server, &msg, &args.seq_args, &res.seq_res, 0); in _nfs4_proc_fs_locations()
6424 struct nfs_server *server = NFS_SERVER(inode); in _nfs40_proc_get_locations() local
6425 struct rpc_clnt *clnt = server->client; in _nfs40_proc_get_locations()
6430 .clientid = server->nfs_client->cl_clientid, in _nfs40_proc_get_locations()
6452 locations->server = server; in _nfs40_proc_get_locations()
6457 status = nfs4_call_sync_sequence(clnt, server, &msg, in _nfs40_proc_get_locations()
6462 renew_lease(server, now); in _nfs40_proc_get_locations()
6482 struct nfs_server *server = NFS_SERVER(inode); in _nfs41_proc_get_locations() local
6483 struct rpc_clnt *clnt = server->client; in _nfs41_proc_get_locations()
6506 locations->server = server; in _nfs41_proc_get_locations()
6511 status = nfs4_call_sync_sequence(clnt, server, &msg, in _nfs41_proc_get_locations()
6542 struct nfs_server *server = NFS_SERVER(inode); in nfs4_proc_get_locations() local
6543 struct nfs_client *clp = server->nfs_client; in nfs4_proc_get_locations()
6550 (unsigned long long)server->fsid.major, in nfs4_proc_get_locations()
6551 (unsigned long long)server->fsid.minor, in nfs4_proc_get_locations()
6559 nfs4_handle_exception(server, status, &exception); in nfs4_proc_get_locations()
6573 struct nfs_server *server = NFS_SERVER(inode); in _nfs40_proc_fsid_present() local
6575 struct rpc_clnt *clnt = server->client; in _nfs40_proc_fsid_present()
6599 status = nfs4_call_sync_sequence(clnt, server, &msg, in _nfs40_proc_fsid_present()
6620 struct nfs_server *server = NFS_SERVER(inode); in _nfs41_proc_fsid_present() local
6621 struct rpc_clnt *clnt = server->client; in _nfs41_proc_fsid_present()
6641 status = nfs4_call_sync_sequence(clnt, server, &msg, in _nfs41_proc_fsid_present()
6668 struct nfs_server *server = NFS_SERVER(inode); in nfs4_proc_fsid_present() local
6669 struct nfs_client *clp = server->nfs_client; in nfs4_proc_fsid_present()
6676 (unsigned long long)server->fsid.major, in nfs4_proc_fsid_present()
6677 (unsigned long long)server->fsid.minor, in nfs4_proc_fsid_present()
6685 nfs4_handle_exception(server, status, &exception); in nfs4_proc_fsid_present()
7764 struct nfs_server *server = NFS_SERVER(lgp->args.inode); in nfs4_layoutget_prepare() local
7765 struct nfs4_session *session = nfs4_get_session(server); in nfs4_layoutget_prepare()
7788 struct nfs_server *server = NFS_SERVER(inode); in nfs4_layoutget_done() local
7869 if (nfs4_async_handle_error(task, server, state, &lgp->timeout) == -EAGAIN) in nfs4_layoutget_done()
7883 static size_t max_response_pages(struct nfs_server *server) in max_response_pages() argument
7885 u32 max_resp_sz = server->nfs_client->cl_session->fc_attrs.max_resp_sz; in max_response_pages()
7931 struct nfs_server *server = NFS_SERVER(inode); in nfs4_layoutget_release() local
7932 size_t max_pages = max_response_pages(server); in nfs4_layoutget_release()
7952 struct nfs_server *server = NFS_SERVER(inode); in nfs4_proc_layoutget() local
7953 size_t max_pages = max_response_pages(server); in nfs4_proc_layoutget()
7962 .rpc_client = server->client, in nfs4_proc_layoutget()
8023 struct nfs_server *server; in nfs4_layoutreturn_done() local
8030 server = NFS_SERVER(lrp->args.inode); in nfs4_layoutreturn_done()
8037 if (nfs4_async_handle_error(task, server, NULL, NULL) != -EAGAIN) in nfs4_layoutreturn_done()
8110 _nfs4_proc_getdeviceinfo(struct nfs_server *server, in _nfs4_proc_getdeviceinfo() argument
8131 status = nfs4_call_sync(server->client, server, &msg, &args.seq_args, &res.seq_res, 0); in _nfs4_proc_getdeviceinfo()
8142 int nfs4_proc_getdeviceinfo(struct nfs_server *server, in nfs4_proc_getdeviceinfo() argument
8150 err = nfs4_handle_exception(server, in nfs4_proc_getdeviceinfo()
8151 _nfs4_proc_getdeviceinfo(server, pdev, cred), in nfs4_proc_getdeviceinfo()
8161 struct nfs_server *server = NFS_SERVER(data->args.inode); in nfs4_layoutcommit_prepare() local
8162 struct nfs4_session *session = nfs4_get_session(server); in nfs4_layoutcommit_prepare()
8174 struct nfs_server *server = NFS_SERVER(data->args.inode); in nfs4_layoutcommit_done() local
8188 if (nfs4_async_handle_error(task, server, NULL, NULL) == -EAGAIN) { in nfs4_layoutcommit_done()
8262 _nfs41_proc_secinfo_no_name(struct nfs_server *server, struct nfs_fh *fhandle, in _nfs41_proc_secinfo_no_name() argument
8277 struct rpc_clnt *clnt = server->client; in _nfs41_proc_secinfo_no_name()
8282 clnt = server->nfs_client->cl_rpcclient; in _nfs41_proc_secinfo_no_name()
8283 cred = nfs4_get_clid_cred(server->nfs_client); in _nfs41_proc_secinfo_no_name()
8288 status = nfs4_call_sync(clnt, server, &msg, &args.seq_args, in _nfs41_proc_secinfo_no_name()
8299 nfs41_proc_secinfo_no_name(struct nfs_server *server, struct nfs_fh *fhandle, in nfs41_proc_secinfo_no_name() argument
8309 if (_nfs4_is_integrity_protected(server->nfs_client)) in nfs41_proc_secinfo_no_name()
8310 err = _nfs41_proc_secinfo_no_name(server, fhandle, info, in nfs41_proc_secinfo_no_name()
8320 err = _nfs41_proc_secinfo_no_name(server, fhandle, info, in nfs41_proc_secinfo_no_name()
8329 err = nfs4_handle_exception(server, err, &exception); in nfs41_proc_secinfo_no_name()
8337 nfs41_find_root_sec(struct nfs_server *server, struct nfs_fh *fhandle, in nfs41_find_root_sec() argument
8354 err = nfs41_proc_secinfo_no_name(server, fhandle, info, flavors); in nfs41_find_root_sec()
8361 err = nfs4_find_root_sec(server, fhandle, info); in nfs41_find_root_sec()
8382 if (!nfs_auth_info_match(&server->auth_info, flavor)) in nfs41_find_root_sec()
8386 err = nfs4_lookup_root_sec(server, fhandle, in nfs41_find_root_sec()
8404 static int _nfs41_test_stateid(struct nfs_server *server, in _nfs41_test_stateid() argument
8419 struct rpc_clnt *rpc_client = server->client; in _nfs41_test_stateid()
8421 nfs4_state_protect(server->nfs_client, NFS_SP4_MACH_CRED_STATEID, in _nfs41_test_stateid()
8427 status = nfs4_call_sync_sequence(rpc_client, server, &msg, in _nfs41_test_stateid()
8448 static int nfs41_test_stateid(struct nfs_server *server, in nfs41_test_stateid() argument
8455 err = _nfs41_test_stateid(server, stateid, cred); in nfs41_test_stateid()
8458 nfs4_handle_exception(server, err, &exception); in nfs41_test_stateid()
8464 struct nfs_server *server; member
8472 nfs41_setup_sequence(nfs4_get_session(data->server), in nfs41_free_stateid_prepare()
8486 if (nfs4_async_handle_error(task, data->server, NULL, NULL) == -EAGAIN) in nfs41_free_stateid_done()
8502 static struct rpc_task *_nfs41_free_stateid(struct nfs_server *server, in _nfs41_free_stateid() argument
8512 .rpc_client = server->client, in _nfs41_free_stateid()
8519 nfs4_state_protect(server->nfs_client, NFS_SP4_MACH_CRED_STATEID, in _nfs41_free_stateid()
8526 data->server = server; in _nfs41_free_stateid()
8550 static int nfs41_free_stateid(struct nfs_server *server, in nfs41_free_stateid() argument
8557 task = _nfs41_free_stateid(server, stateid, cred, true); in nfs41_free_stateid()
8568 nfs41_free_lock_state(struct nfs_server *server, struct nfs4_lock_state *lsp) in nfs41_free_lock_state() argument
8573 task = _nfs41_free_stateid(server, &lsp->ls_stateid, cred, false); in nfs41_free_lock_state()
8574 nfs4_free_lock_state(server, lsp); in nfs41_free_lock_state()