/kernel/linux/linux-5.10/fs/nfs/ |
H A D | delegation.c | 3 * linux/fs/nfs/delegation.c 7 * NFS file delegation management 24 #include "delegation.h" 33 static void __nfs_free_delegation(struct nfs_delegation *delegation) in __nfs_free_delegation() argument 35 put_cred(delegation->cred); in __nfs_free_delegation() 36 delegation->cred = NULL; in __nfs_free_delegation() 37 kfree_rcu(delegation, rcu); in __nfs_free_delegation() 40 static void nfs_mark_delegation_revoked(struct nfs_delegation *delegation) in nfs_mark_delegation_revoked() argument 42 if (!test_and_set_bit(NFS_DELEGATION_REVOKED, &delegation->flags)) { in nfs_mark_delegation_revoked() 43 delegation in nfs_mark_delegation_revoked() 50 nfs_get_delegation(struct nfs_delegation *delegation) nfs_get_delegation() argument 56 nfs_put_delegation(struct nfs_delegation *delegation) nfs_put_delegation() argument 62 nfs_free_delegation(struct nfs_delegation *delegation) nfs_free_delegation() argument 73 nfs_mark_delegation_referenced(struct nfs_delegation *delegation) nfs_mark_delegation_referenced() argument 78 nfs_mark_return_delegation(struct nfs_server *server, struct nfs_delegation *delegation) nfs_mark_return_delegation() argument 86 nfs4_is_valid_delegation(const struct nfs_delegation *delegation, fmode_t flags) nfs4_is_valid_delegation() argument 98 struct nfs_delegation *delegation; nfs4_get_valid_delegation() local 109 struct nfs_delegation *delegation; nfs4_do_check_delegation() local 234 struct nfs_delegation *delegation; nfs_inode_reclaim_delegation() local 261 nfs_do_return_delegation(struct inode *inode, struct nfs_delegation *delegation, int issync) nfs_do_return_delegation() argument 278 nfs_delegation_grab_inode(struct nfs_delegation *delegation) nfs_delegation_grab_inode() argument 295 struct nfs_delegation *delegation = rcu_dereference(nfsi->delegation); nfs_start_delegation_return_locked() local 315 struct nfs_delegation *delegation; nfs_start_delegation_return() local 323 nfs_abort_delegation_return(struct nfs_delegation *delegation, struct nfs_client *clp, int err) nfs_abort_delegation_return() argument 337 nfs_detach_delegation_locked(struct nfs_inode *nfsi, struct nfs_delegation *delegation, struct nfs_client *clp) nfs_detach_delegation_locked() argument 360 nfs_detach_delegation(struct nfs_inode *nfsi, struct nfs_delegation *delegation, struct nfs_server *server) nfs_detach_delegation() argument 377 struct nfs_delegation *delegation; nfs_inode_detach_delegation() local 388 nfs_update_delegation_cred(struct nfs_delegation *delegation, const struct cred *cred) nfs_update_delegation_cred() argument 400 nfs_update_inplace_delegation(struct nfs_delegation *delegation, const struct nfs_delegation *update) nfs_update_inplace_delegation() argument 436 struct nfs_delegation *delegation, *old_delegation; nfs_inode_set_delegation() local 517 nfs_end_delegation_return(struct inode *inode, struct nfs_delegation *delegation, int issync) nfs_end_delegation_return() argument 549 nfs_delegation_need_return(struct nfs_delegation *delegation) nfs_delegation_need_return() argument 577 struct nfs_delegation *delegation; nfs_server_return_marked_delegations() local 711 struct nfs_delegation *delegation; nfs_inode_evict_delegation() local 735 struct nfs_delegation *delegation; nfs4_inode_return_delegation() local 754 struct nfs_delegation *delegation; nfs4_inode_return_delegation_on_close() local 792 struct nfs_delegation *delegation; nfs4_inode_make_writeable() local 806 nfs_mark_return_if_closed_delegation(struct nfs_server *server, struct nfs_delegation *delegation) nfs_mark_return_if_closed_delegation() argument 815 struct nfs_delegation *delegation; nfs_server_mark_return_all_delegations() local 878 struct nfs_delegation *delegation; nfs_mark_return_unused_delegation_types() local 902 struct nfs_delegation *delegation; nfs_revoke_delegation() local 944 struct nfs_delegation *delegation; nfs_delegation_mark_returned() local 991 struct nfs_delegation *delegation; nfs_mark_return_unreferenced_delegations() local 1029 struct nfs_delegation *delegation; nfs_async_inode_return_delegation() local 1052 struct nfs_delegation *delegation; nfs_delegation_find_inode_server() local 1108 struct nfs_delegation *delegation; nfs_delegation_mark_reclaim_server() local 1139 struct nfs_delegation *delegation; nfs_server_reap_unclaimed_delegations() local 1190 nfs_mark_test_expired_delegation(struct nfs_server *server, struct nfs_delegation *delegation) nfs_mark_test_expired_delegation() argument 1203 struct nfs_delegation *delegation; nfs_inode_mark_test_expired_delegation() local 1215 struct nfs_delegation *delegation; nfs_delegation_mark_test_expired_server() local 1269 struct nfs_delegation *delegation; nfs_server_reap_expired_delegations() local 1327 struct nfs_delegation *delegation; nfs_inode_find_delegation_state_and_recover() local 1335 nfs_mark_test_expired_delegation(NFS_SERVER(inode), delegation); nfs_inode_find_delegation_state_and_recover() local 1375 struct nfs_delegation *delegation; nfs4_refresh_delegation_stateid() local 1408 struct nfs_delegation *delegation; nfs4_copy_delegation_stateid() local 1441 struct nfs_delegation *delegation; nfs4_delegation_flush_on_close() local [all...] |
H A D | callback_proc.c | 15 #include "delegation.h" 28 struct nfs_delegation *delegation; in nfs4_callback_getattr() local 50 delegation = nfs4_get_valid_delegation(inode); in nfs4_callback_getattr() 51 if (delegation == NULL || (delegation->type & FMODE_WRITE) == 0) in nfs4_callback_getattr() 54 res->change_attr = delegation->change_attr; in nfs4_callback_getattr() 96 /* Set up a helper thread to actually return the delegation */ in nfs4_callback_recall()
|
H A D | nfs4proc.c | 60 #include "delegation.h" 1299 /* Want no delegation if we're using O_DIRECT */ in nfs4_map_atomic_open_share() 1521 static int can_open_delegated(struct nfs_delegation *delegation, fmode_t fmode, in can_open_delegated() argument 1524 if (delegation == NULL) in can_open_delegated() 1526 if ((delegation->type & fmode) != fmode) in can_open_delegated() 1533 if (!test_bit(NFS_DELEGATION_NEED_RECLAIM, &delegation->flags)) in can_open_delegated() 1539 nfs_mark_delegation_referenced(delegation); in can_open_delegated() 1793 const nfs4_stateid *delegation, in update_open_stateid() 1817 if (rcu_dereference(nfsi->delegation) != deleg_cur || in update_open_stateid() 1822 if (delegation in update_open_stateid() 1791 update_open_stateid(struct nfs4_state *state, const nfs4_stateid *open_stateid, const nfs4_stateid *delegation, fmode_t fmode) update_open_stateid() argument 1867 struct nfs_delegation *delegation; nfs4_return_incompatible_delegation() local 1883 struct nfs_delegation *delegation; nfs4_try_open_cached() local 1930 struct nfs_delegation *delegation; nfs4_opendata_check_deleg() local 2193 struct nfs_delegation *delegation; _nfs4_do_open_reclaim() local 2435 struct nfs_delegation *delegation; nfs4_open_prepare() local 2835 struct nfs_delegation *delegation; nfs41_check_delegation_stateid() local [all...] |
H A D | Makefile | 27 delegation.o nfs4idmap.o callback.o callback_xdr.o callback_proc.o \
|
H A D | delegation.h | 3 * linux/fs/nfs/delegation.h 14 * NFSv4 delegation 68 /* NFSv4 delegation-related procedures */ 76 void nfs_mark_delegation_referenced(struct nfs_delegation *delegation);
|
H A D | inode.c | 47 #include "delegation.h" 1890 /* Save the delegation state before clearing cache_validity */ in nfs_update_inode() 2145 nfsi->delegation = NULL; in nfs4_init_once()
|
H A D | nfs4xdr.c | 1537 encode_claim_delegate_cur(xdr, arg->name, &arg->u.delegation); in encode_open() 1543 encode_claim_delegate_cur_fh(xdr, &arg->u.delegation); in encode_open() 5053 status = decode_delegation_stateid(xdr, &res->delegation); in decode_rw_delegation()
|
/kernel/linux/linux-6.6/fs/nfs/ |
H A D | delegation.c | 3 * linux/fs/nfs/delegation.c 7 * NFS file delegation management 24 #include "delegation.h" 33 static void __nfs_free_delegation(struct nfs_delegation *delegation) in __nfs_free_delegation() argument 35 put_cred(delegation->cred); in __nfs_free_delegation() 36 delegation->cred = NULL; in __nfs_free_delegation() 37 kfree_rcu(delegation, rcu); in __nfs_free_delegation() 40 static void nfs_mark_delegation_revoked(struct nfs_delegation *delegation) in nfs_mark_delegation_revoked() argument 42 if (!test_and_set_bit(NFS_DELEGATION_REVOKED, &delegation->flags)) { in nfs_mark_delegation_revoked() 43 delegation in nfs_mark_delegation_revoked() 50 nfs_get_delegation(struct nfs_delegation *delegation) nfs_get_delegation() argument 56 nfs_put_delegation(struct nfs_delegation *delegation) nfs_put_delegation() argument 62 nfs_free_delegation(struct nfs_delegation *delegation) nfs_free_delegation() argument 73 nfs_mark_delegation_referenced(struct nfs_delegation *delegation) nfs_mark_delegation_referenced() argument 78 nfs_mark_return_delegation(struct nfs_server *server, struct nfs_delegation *delegation) nfs_mark_return_delegation() argument 86 nfs4_is_valid_delegation(const struct nfs_delegation *delegation, fmode_t flags) nfs4_is_valid_delegation() argument 98 struct nfs_delegation *delegation; nfs4_get_valid_delegation() local 109 struct nfs_delegation *delegation; nfs4_do_check_delegation() local 234 struct nfs_delegation *delegation; nfs_inode_reclaim_delegation() local 261 nfs_do_return_delegation(struct inode *inode, struct nfs_delegation *delegation, int issync) nfs_do_return_delegation() argument 278 nfs_delegation_grab_inode(struct nfs_delegation *delegation) nfs_delegation_grab_inode() argument 295 struct nfs_delegation *delegation = rcu_dereference(nfsi->delegation); nfs_start_delegation_return_locked() local 315 struct nfs_delegation *delegation; nfs_start_delegation_return() local 323 nfs_abort_delegation_return(struct nfs_delegation *delegation, struct nfs_client *clp, int err) nfs_abort_delegation_return() argument 337 nfs_detach_delegation_locked(struct nfs_inode *nfsi, struct nfs_delegation *delegation, struct nfs_client *clp) nfs_detach_delegation_locked() argument 360 nfs_detach_delegation(struct nfs_inode *nfsi, struct nfs_delegation *delegation, struct nfs_server *server) nfs_detach_delegation() argument 377 struct nfs_delegation *delegation; nfs_inode_detach_delegation() local 388 nfs_update_delegation_cred(struct nfs_delegation *delegation, const struct cred *cred) nfs_update_delegation_cred() argument 400 nfs_update_inplace_delegation(struct nfs_delegation *delegation, const struct nfs_delegation *update) nfs_update_inplace_delegation() argument 436 struct nfs_delegation *delegation, *old_delegation; nfs_inode_set_delegation() local 528 nfs_end_delegation_return(struct inode *inode, struct nfs_delegation *delegation, int issync) nfs_end_delegation_return() argument 567 nfs_delegation_need_return(struct nfs_delegation *delegation) nfs_delegation_need_return() argument 595 struct nfs_delegation *delegation; nfs_server_return_marked_delegations() local 729 struct nfs_delegation *delegation; nfs_inode_evict_delegation() local 753 struct nfs_delegation *delegation; nfs4_inode_return_delegation() local 775 struct nfs_delegation *delegation; nfs4_inode_return_delegation_on_close() local 813 struct nfs_delegation *delegation; nfs4_inode_make_writeable() local 827 nfs_mark_return_if_closed_delegation(struct nfs_server *server, struct nfs_delegation *delegation) nfs_mark_return_if_closed_delegation() argument 836 struct nfs_delegation *delegation; nfs_server_mark_return_all_delegations() local 899 struct nfs_delegation *delegation; nfs_mark_return_unused_delegation_types() local 923 struct nfs_delegation *delegation; nfs_revoke_delegation() local 965 struct nfs_delegation *delegation; nfs_delegation_mark_returned() local 1012 struct nfs_delegation *delegation; nfs_mark_return_unreferenced_delegations() local 1050 struct nfs_delegation *delegation; nfs_async_inode_return_delegation() local 1076 struct nfs_delegation *delegation; nfs_delegation_find_inode_server() local 1132 struct nfs_delegation *delegation; nfs_delegation_mark_reclaim_server() local 1163 struct nfs_delegation *delegation; nfs_server_reap_unclaimed_delegations() local 1214 nfs_mark_test_expired_delegation(struct nfs_server *server, struct nfs_delegation *delegation) nfs_mark_test_expired_delegation() argument 1227 struct nfs_delegation *delegation; nfs_inode_mark_test_expired_delegation() local 1239 struct nfs_delegation *delegation; nfs_delegation_mark_test_expired_server() local 1293 struct nfs_delegation *delegation; nfs_server_reap_expired_delegations() local 1351 struct nfs_delegation *delegation; nfs_inode_find_delegation_state_and_recover() local 1359 nfs_mark_test_expired_delegation(NFS_SERVER(inode), delegation); nfs_inode_find_delegation_state_and_recover() local 1399 struct nfs_delegation *delegation; nfs4_refresh_delegation_stateid() local 1432 struct nfs_delegation *delegation; nfs4_copy_delegation_stateid() local 1465 struct nfs_delegation *delegation; nfs4_delegation_flush_on_close() local [all...] |
H A D | callback_proc.c | 20 #include "delegation.h" 33 struct nfs_delegation *delegation; in nfs4_callback_getattr() local 55 delegation = nfs4_get_valid_delegation(inode); in nfs4_callback_getattr() 56 if (delegation == NULL || (delegation->type & FMODE_WRITE) == 0) in nfs4_callback_getattr() 59 res->change_attr = delegation->change_attr; in nfs4_callback_getattr() 101 /* Set up a helper thread to actually return the delegation */ in nfs4_callback_recall()
|
H A D | Makefile | 27 delegation.o nfs4idmap.o callback.o callback_xdr.o callback_proc.o \
|
H A D | nfs4proc.c | 60 #include "delegation.h" 1315 /* Want no delegation if we're using O_DIRECT */ in nfs4_map_atomic_open_share() 1526 static int can_open_delegated(struct nfs_delegation *delegation, fmode_t fmode, in can_open_delegated() argument 1529 if (delegation == NULL) in can_open_delegated() 1531 if ((delegation->type & fmode) != fmode) in can_open_delegated() 1538 if (!test_bit(NFS_DELEGATION_NEED_RECLAIM, &delegation->flags)) in can_open_delegated() 1544 nfs_mark_delegation_referenced(delegation); in can_open_delegated() 1798 const nfs4_stateid *delegation, in update_open_stateid() 1822 if (rcu_dereference(nfsi->delegation) != deleg_cur || in update_open_stateid() 1827 if (delegation in update_open_stateid() 1796 update_open_stateid(struct nfs4_state *state, const nfs4_stateid *open_stateid, const nfs4_stateid *delegation, fmode_t fmode) update_open_stateid() argument 1872 struct nfs_delegation *delegation; nfs4_return_incompatible_delegation() local 1888 struct nfs_delegation *delegation; nfs4_try_open_cached() local 1935 struct nfs_delegation *delegation; nfs4_opendata_check_deleg() local 2198 struct nfs_delegation *delegation; _nfs4_do_open_reclaim() local 2441 struct nfs_delegation *delegation; nfs4_open_prepare() local 2845 struct nfs_delegation *delegation; nfs41_check_delegation_stateid() local [all...] |
H A D | delegation.h | 3 * linux/fs/nfs/delegation.h 14 * NFSv4 delegation 68 /* NFSv4 delegation-related procedures */ 76 void nfs_mark_delegation_referenced(struct nfs_delegation *delegation);
|
H A D | inode.c | 47 #include "delegation.h" 2113 /* Save the delegation state before clearing cache_validity */ in nfs_update_inode() 2353 nfsi->delegation = NULL; in nfs4_init_once()
|
H A D | nfs4xdr.c | 1549 encode_claim_delegate_cur(xdr, arg->name, &arg->u.delegation); in encode_open() 1555 encode_claim_delegate_cur_fh(xdr, &arg->u.delegation); in encode_open() 5148 status = decode_delegation_stateid(xdr, &res->delegation); in decode_rw_delegation()
|
/kernel/linux/linux-5.10/include/linux/ |
H A D | nfs_fs.h | 100 * NFSv4 delegation 181 struct nfs_delegation __rcu *delegation; member 234 #define NFS_INO_REVAL_FORCED BIT(6) /* force revalidation ignoring a delegation */
|
H A D | nfs_xdr.h | 467 nfs4_stateid delegation; /* CLAIM_DELEGATE_CUR */ member 492 nfs4_stateid delegation; member
|
/kernel/linux/linux-6.6/include/linux/ |
H A D | nfs_fs.h | 117 * NFSv4 delegation 235 struct nfs_delegation __rcu *delegation; member 288 #define NFS_INO_REVAL_FORCED BIT(6) /* force revalidation ignoring a delegation */
|
H A D | nfs_xdr.h | 470 nfs4_stateid delegation; /* CLAIM_DELEGATE_CUR */ member 494 nfs4_stateid delegation; member
|