/kernel/linux/linux-4.19/fs/nfs/ |
D | nfs3proc.c | 859 struct nfs_lock_context *l_ctx = data; in nfs3_nlm_alloc_call() local 860 if (l_ctx && test_bit(NFS_CONTEXT_UNLOCK, &l_ctx->open_context->flags)) { in nfs3_nlm_alloc_call() 861 get_nfs_open_context(l_ctx->open_context); in nfs3_nlm_alloc_call() 862 nfs_get_lock_context(l_ctx->open_context); in nfs3_nlm_alloc_call() 868 struct nfs_lock_context *l_ctx = data; in nfs3_nlm_unlock_prepare() local 869 if (l_ctx && test_bit(NFS_CONTEXT_UNLOCK, &l_ctx->open_context->flags)) in nfs3_nlm_unlock_prepare() 870 return nfs_async_iocounter_wait(task, l_ctx); in nfs3_nlm_unlock_prepare() 877 struct nfs_lock_context *l_ctx = data; in nfs3_nlm_release_call() local 879 if (l_ctx && test_bit(NFS_CONTEXT_UNLOCK, &l_ctx->open_context->flags)) { in nfs3_nlm_release_call() 880 ctx = l_ctx->open_context; in nfs3_nlm_release_call() [all …]
|
D | direct.c | 78 struct nfs_lock_context *l_ctx; /* Lock context info */ member 349 if (dreq->l_ctx != NULL) in nfs_direct_req_free() 350 nfs_put_lock_context(dreq->l_ctx); in nfs_direct_req_free() 577 struct nfs_lock_context *l_ctx; in nfs_file_direct_read() local 600 l_ctx = nfs_get_lock_context(dreq->ctx); in nfs_file_direct_read() 601 if (IS_ERR(l_ctx)) { in nfs_file_direct_read() 602 result = PTR_ERR(l_ctx); in nfs_file_direct_read() 606 dreq->l_ctx = l_ctx; in nfs_file_direct_read() 998 struct nfs_lock_context *l_ctx; in nfs_file_direct_write() local 1024 l_ctx = nfs_get_lock_context(dreq->ctx); in nfs_file_direct_write() [all …]
|
D | pagelist.c | 99 nfs_iocounter_wait(struct nfs_lock_context *l_ctx) in nfs_iocounter_wait() argument 101 return wait_var_event_killable(&l_ctx->io_count, in nfs_iocounter_wait() 102 !atomic_read(&l_ctx->io_count)); in nfs_iocounter_wait() 115 nfs_async_iocounter_wait(struct rpc_task *task, struct nfs_lock_context *l_ctx) in nfs_async_iocounter_wait() argument 117 struct inode *inode = d_inode(l_ctx->open_context->dentry); in nfs_async_iocounter_wait() 120 if (atomic_read(&l_ctx->io_count) > 0) { in nfs_async_iocounter_wait() 125 if (atomic_read(&l_ctx->io_count) == 0) { in nfs_async_iocounter_wait() 339 struct nfs_lock_context *l_ctx; in nfs_create_request() local 349 l_ctx = nfs_get_lock_context(ctx); in nfs_create_request() 350 if (IS_ERR(l_ctx)) { in nfs_create_request() [all …]
|
D | file.c | 693 struct nfs_lock_context *l_ctx; in do_unlk() local 702 l_ctx = nfs_get_lock_context(nfs_file_open_context(filp)); in do_unlk() 703 if (!IS_ERR(l_ctx)) { in do_unlk() 704 status = nfs_iocounter_wait(l_ctx); in do_unlk() 705 nfs_put_lock_context(l_ctx); in do_unlk()
|
D | inode.c | 850 static void nfs_init_lock_context(struct nfs_lock_context *l_ctx) in nfs_init_lock_context() argument 852 refcount_set(&l_ctx->count, 1); in nfs_init_lock_context() 853 l_ctx->lockowner = current->files; in nfs_init_lock_context() 854 INIT_LIST_HEAD(&l_ctx->list); in nfs_init_lock_context() 855 atomic_set(&l_ctx->io_count, 0); in nfs_init_lock_context() 900 void nfs_put_lock_context(struct nfs_lock_context *l_ctx) in nfs_put_lock_context() argument 902 struct nfs_open_context *ctx = l_ctx->open_context; in nfs_put_lock_context() 905 if (!refcount_dec_and_lock(&l_ctx->count, &inode->i_lock)) in nfs_put_lock_context() 907 list_del(&l_ctx->list); in nfs_put_lock_context() 909 kfree(l_ctx); in nfs_put_lock_context()
|
D | nfs4state.c | 993 const struct nfs_lock_context *l_ctx) in nfs4_copy_lock_stateid() argument 999 if (l_ctx == NULL) in nfs4_copy_lock_stateid() 1005 fl_owner = l_ctx->lockowner; in nfs4_copy_lock_stateid() 1006 fl_flock_owner = l_ctx->open_context->flock_owner; in nfs4_copy_lock_stateid() 1062 fmode_t fmode, const struct nfs_lock_context *l_ctx, in nfs4_select_rw_stateid() argument 1071 ret = nfs4_copy_lock_stateid(dst, state, l_ctx); in nfs4_select_rw_stateid()
|
D | write.c | 1207 struct nfs_lock_context *l_ctx; in nfs_flush_incompatible() local 1223 l_ctx = req->wb_lock_context; in nfs_flush_incompatible() 1226 if (l_ctx && flctx && in nfs_flush_incompatible() 1229 do_flush |= l_ctx->lockowner != current->files; in nfs_flush_incompatible()
|
D | nfs4_fs.h | 309 const struct nfs_lock_context *l_ctx,
|
D | nfs4proc.c | 3140 struct nfs_lock_context *l_ctx; in _nfs4_do_setattr() local 3143 l_ctx = nfs_get_lock_context(ctx); in _nfs4_do_setattr() 3144 if (IS_ERR(l_ctx)) in _nfs4_do_setattr() 3145 return PTR_ERR(l_ctx); in _nfs4_do_setattr() 3146 status = nfs4_select_rw_stateid(ctx->state, FMODE_WRITE, l_ctx, in _nfs4_do_setattr() 3148 nfs_put_lock_context(l_ctx); in _nfs4_do_setattr() 4926 const struct nfs_lock_context *l_ctx, in nfs4_set_rw_stateid() argument 4929 return nfs4_select_rw_stateid(ctx->state, fmode, l_ctx, stateid, NULL); in nfs4_set_rw_stateid() 4935 const struct nfs_lock_context *l_ctx, in nfs4_stateid_is_current() argument 4941 if (nfs4_set_rw_stateid(¤t_stateid, ctx, l_ctx, fmode) == -EIO) in nfs4_stateid_is_current() [all …]
|
D | internal.h | 250 int nfs_iocounter_wait(struct nfs_lock_context *l_ctx);
|
/kernel/linux/linux-5.10/fs/nfs/ |
D | nfs3proc.c | 901 struct nfs_lock_context *l_ctx = data; in nfs3_nlm_alloc_call() local 902 if (l_ctx && test_bit(NFS_CONTEXT_UNLOCK, &l_ctx->open_context->flags)) { in nfs3_nlm_alloc_call() 903 get_nfs_open_context(l_ctx->open_context); in nfs3_nlm_alloc_call() 904 nfs_get_lock_context(l_ctx->open_context); in nfs3_nlm_alloc_call() 910 struct nfs_lock_context *l_ctx = data; in nfs3_nlm_unlock_prepare() local 911 if (l_ctx && test_bit(NFS_CONTEXT_UNLOCK, &l_ctx->open_context->flags)) in nfs3_nlm_unlock_prepare() 912 return nfs_async_iocounter_wait(task, l_ctx); in nfs3_nlm_unlock_prepare() 919 struct nfs_lock_context *l_ctx = data; in nfs3_nlm_release_call() local 921 if (l_ctx && test_bit(NFS_CONTEXT_UNLOCK, &l_ctx->open_context->flags)) { in nfs3_nlm_release_call() 922 ctx = l_ctx->open_context; in nfs3_nlm_release_call() [all …]
|
D | pagelist.c | 116 nfs_iocounter_wait(struct nfs_lock_context *l_ctx) in nfs_iocounter_wait() argument 118 return wait_var_event_killable(&l_ctx->io_count, in nfs_iocounter_wait() 119 !atomic_read(&l_ctx->io_count)); in nfs_iocounter_wait() 132 nfs_async_iocounter_wait(struct rpc_task *task, struct nfs_lock_context *l_ctx) in nfs_async_iocounter_wait() argument 134 struct inode *inode = d_inode(l_ctx->open_context->dentry); in nfs_async_iocounter_wait() 137 if (atomic_read(&l_ctx->io_count) > 0) { in nfs_async_iocounter_wait() 142 if (atomic_read(&l_ctx->io_count) == 0) { in nfs_async_iocounter_wait() 435 __nfs_create_request(struct nfs_lock_context *l_ctx, struct page *page, in __nfs_create_request() argument 440 struct nfs_open_context *ctx = l_ctx->open_context; in __nfs_create_request() 449 req->wb_lock_context = l_ctx; in __nfs_create_request() [all …]
|
D | direct.c | 72 struct nfs_lock_context *l_ctx; /* Lock context info */ member 220 if (dreq->l_ctx != NULL) in nfs_direct_req_free() 221 nfs_put_lock_context(dreq->l_ctx); in nfs_direct_req_free() 448 struct nfs_lock_context *l_ctx; in nfs_file_direct_read() local 471 l_ctx = nfs_get_lock_context(dreq->ctx); in nfs_file_direct_read() 472 if (IS_ERR(l_ctx)) { in nfs_file_direct_read() 473 result = PTR_ERR(l_ctx); in nfs_file_direct_read() 477 dreq->l_ctx = l_ctx; in nfs_file_direct_read() 902 struct nfs_lock_context *l_ctx; in nfs_file_direct_write() local 928 l_ctx = nfs_get_lock_context(dreq->ctx); in nfs_file_direct_write() [all …]
|
D | file.c | 705 struct nfs_lock_context *l_ctx; in do_unlk() local 714 l_ctx = nfs_get_lock_context(nfs_file_open_context(filp)); in do_unlk() 715 if (!IS_ERR(l_ctx)) { in do_unlk() 716 status = nfs_iocounter_wait(l_ctx); in do_unlk() 717 nfs_put_lock_context(l_ctx); in do_unlk()
|
D | inode.c | 872 static void nfs_init_lock_context(struct nfs_lock_context *l_ctx) in nfs_init_lock_context() argument 874 refcount_set(&l_ctx->count, 1); in nfs_init_lock_context() 875 l_ctx->lockowner = current->files; in nfs_init_lock_context() 876 INIT_LIST_HEAD(&l_ctx->list); in nfs_init_lock_context() 877 atomic_set(&l_ctx->io_count, 0); in nfs_init_lock_context() 925 void nfs_put_lock_context(struct nfs_lock_context *l_ctx) in nfs_put_lock_context() argument 927 struct nfs_open_context *ctx = l_ctx->open_context; in nfs_put_lock_context() 930 if (!refcount_dec_and_lock(&l_ctx->count, &inode->i_lock)) in nfs_put_lock_context() 932 list_del_rcu(&l_ctx->list); in nfs_put_lock_context() 935 kfree_rcu(l_ctx, rcu_head); in nfs_put_lock_context()
|
D | nfs42proc.c | 565 struct nfs_lock_context *l_ctx; in _nfs42_proc_copy_notify() local 568 l_ctx = nfs_get_lock_context(ctx); in _nfs42_proc_copy_notify() 569 if (IS_ERR(l_ctx)) in _nfs42_proc_copy_notify() 570 return PTR_ERR(l_ctx); in _nfs42_proc_copy_notify() 572 status = nfs4_set_rw_stateid(&args->cna_src_stateid, ctx, l_ctx, in _nfs42_proc_copy_notify() 574 nfs_put_lock_context(l_ctx); in _nfs42_proc_copy_notify()
|
D | nfs4state.c | 989 const struct nfs_lock_context *l_ctx) in nfs4_copy_lock_stateid() argument 995 if (l_ctx == NULL) in nfs4_copy_lock_stateid() 1001 fl_owner = l_ctx->lockowner; in nfs4_copy_lock_stateid() 1002 fl_flock_owner = l_ctx->open_context->flock_owner; in nfs4_copy_lock_stateid() 1042 fmode_t fmode, const struct nfs_lock_context *l_ctx, in nfs4_select_rw_stateid() argument 1051 ret = nfs4_copy_lock_stateid(dst, state, l_ctx); in nfs4_select_rw_stateid()
|
D | write.c | 1197 struct nfs_lock_context *l_ctx; in nfs_flush_incompatible() local 1213 l_ctx = req->wb_lock_context; in nfs_flush_incompatible() 1216 if (l_ctx && flctx && in nfs_flush_incompatible() 1219 do_flush |= l_ctx->lockowner != current->files; in nfs_flush_incompatible()
|
D | nfs4proc.c | 3303 struct nfs_lock_context *l_ctx; in _nfs4_do_setattr() local 3306 l_ctx = nfs_get_lock_context(ctx); in _nfs4_do_setattr() 3307 if (IS_ERR(l_ctx)) in _nfs4_do_setattr() 3308 return PTR_ERR(l_ctx); in _nfs4_do_setattr() 3309 status = nfs4_select_rw_stateid(ctx->state, FMODE_WRITE, l_ctx, in _nfs4_do_setattr() 3311 nfs_put_lock_context(l_ctx); in _nfs4_do_setattr() 5219 const struct nfs_lock_context *l_ctx, in nfs4_set_rw_stateid() argument 5222 return nfs4_select_rw_stateid(ctx->state, fmode, l_ctx, stateid, NULL); in nfs4_set_rw_stateid() 5228 const struct nfs_lock_context *l_ctx, in nfs4_stateid_is_current() argument 5234 if (nfs4_set_rw_stateid(&_current_stateid, ctx, l_ctx, fmode) == -EIO) in nfs4_stateid_is_current() [all …]
|
D | nfs4_fs.h | 317 const struct nfs_lock_context *l_ctx,
|
D | internal.h | 284 int nfs_iocounter_wait(struct nfs_lock_context *l_ctx);
|
/kernel/linux/linux-4.19/include/linux/ |
D | nfs_fs.h | 397 extern void nfs_put_lock_context(struct nfs_lock_context *l_ctx);
|
/kernel/linux/linux-5.10/include/linux/ |
D | nfs_fs.h | 401 extern void nfs_put_lock_context(struct nfs_lock_context *l_ctx);
|