/kernel/linux/linux-6.6/fs/nfs/ |
H A D | pnfs.c | 62 static bool pnfs_lseg_dec_and_remove_zero(struct pnfs_layout_segment *lseg, 375 struct pnfs_layout_segment *lseg; in pnfs_clear_layoutreturn_info() local 379 list_for_each_entry(lseg, &lo->plh_segs, pls_list) { in pnfs_clear_layoutreturn_info() 380 if (!test_bit(NFS_LSEG_LAYOUTRETURN, &lseg->pls_flags)) in pnfs_clear_layoutreturn_info() 382 pnfs_set_plh_return_info(lo, lseg->pls_range.iomode, 0); in pnfs_clear_layoutreturn_info() 396 pnfs_clear_lseg_state(struct pnfs_layout_segment *lseg, in pnfs_clear_lseg_state() argument 399 clear_bit(NFS_LSEG_ROC, &lseg->pls_flags); in pnfs_clear_lseg_state() 400 clear_bit(NFS_LSEG_LAYOUTRETURN, &lseg->pls_flags); in pnfs_clear_lseg_state() 401 if (test_and_clear_bit(NFS_LSEG_VALID, &lseg->pls_flags)) in pnfs_clear_lseg_state() 402 pnfs_lseg_dec_and_remove_zero(lseg, free_m in pnfs_clear_lseg_state() 465 struct pnfs_layout_segment *lseg, *next; pnfs_mark_layout_stateid_invalid() local 540 pnfs_init_lseg(struct pnfs_layout_hdr *lo, struct pnfs_layout_segment *lseg, const struct pnfs_layout_range *range, const nfs4_stateid *stateid) pnfs_init_lseg() argument 554 pnfs_free_lseg(struct pnfs_layout_segment *lseg) pnfs_free_lseg() argument 563 pnfs_layout_remove_lseg(struct pnfs_layout_hdr *lo, struct pnfs_layout_segment *lseg) pnfs_layout_remove_lseg() argument 582 pnfs_cache_lseg_for_layoutreturn(struct pnfs_layout_hdr *lo, struct pnfs_layout_segment *lseg) pnfs_cache_lseg_for_layoutreturn() argument 595 pnfs_put_lseg(struct pnfs_layout_segment *lseg) pnfs_put_lseg() argument 641 pnfs_lseg_dec_and_remove_zero(struct pnfs_layout_segment *lseg, struct list_head *tmp_list) pnfs_lseg_dec_and_remove_zero() argument 652 mark_lseg_invalid(struct pnfs_layout_segment *lseg, struct list_head *tmp_list) mark_lseg_invalid() argument 680 pnfs_match_lseg_recall(const struct pnfs_layout_segment *lseg, const struct pnfs_layout_range *recall_range, u32 seq) pnfs_match_lseg_recall() argument 712 struct pnfs_layout_segment *lseg, *next; pnfs_mark_matching_lsegs_invalid() local 741 struct pnfs_layout_segment *lseg, *next; pnfs_free_returned_lsegs() local 753 struct pnfs_layout_segment *lseg, *tmp; pnfs_free_lseg_list() local 1155 struct pnfs_layout_segment *lseg, *tmp; pnfs_clear_layoutcommit() local 1429 struct pnfs_layout_segment *lseg, *next; pnfs_roc() local 1655 pnfs_lseg_no_merge(struct pnfs_layout_segment *lseg, struct pnfs_layout_segment *old) pnfs_lseg_no_merge() argument 1662 pnfs_generic_layout_insert_lseg(struct pnfs_layout_hdr *lo, struct pnfs_layout_segment *lseg, bool (*is_after)(const struct pnfs_layout_range *, const struct pnfs_layout_range *), bool (*do_merge)(struct pnfs_layout_segment *, struct pnfs_layout_segment *), struct list_head *free_me) pnfs_generic_layout_insert_lseg() argument 1706 pnfs_layout_insert_lseg(struct pnfs_layout_hdr *lo, struct pnfs_layout_segment *lseg, struct list_head *free_me) pnfs_layout_insert_lseg() argument 1812 struct pnfs_layout_segment *lseg, *ret = NULL; pnfs_find_lseg() local 1980 struct pnfs_layout_segment *lseg = NULL; pnfs_update_layout() local 2334 struct pnfs_layout_segment *lseg; pnfs_parse_lgopen() local 2395 struct pnfs_layout_segment *lseg; pnfs_layout_process() local 2490 struct pnfs_layout_segment *lseg, *next; pnfs_mark_matching_lsegs_return() local 2564 pnfs_error_mark_layout_for_return(struct inode *inode, struct pnfs_layout_segment *lseg) pnfs_error_mark_layout_for_return() argument 2590 struct pnfs_layout_segment *lseg; pnfs_find_first_lseg() local 2887 pnfs_try_to_write_data(struct nfs_pgio_header *hdr, const struct rpc_call_ops *call_ops, struct pnfs_layout_segment *lseg, int how) pnfs_try_to_write_data() argument 2912 struct pnfs_layout_segment *lseg = desc->pg_lseg; pnfs_do_write() local 3014 pnfs_try_to_read_data(struct nfs_pgio_header *hdr, const struct rpc_call_ops *call_ops, struct pnfs_layout_segment *lseg) pnfs_try_to_read_data() argument 3057 struct pnfs_layout_segment *lseg = desc->pg_lseg; pnfs_do_read() local 3118 struct pnfs_layout_segment *lseg; pnfs_list_write_lseg() local 3129 struct pnfs_layout_segment *lseg, *tmp; pnfs_list_write_lseg_done() local 3140 pnfs_set_lo_fail(struct pnfs_layout_segment *lseg) pnfs_set_lo_fail() argument 3147 pnfs_set_layoutcommit(struct inode *inode, struct pnfs_layout_segment *lseg, loff_t end_pos) pnfs_set_layoutcommit() argument [all...] |
H A D | pnfs.h | 41 NFS_LSEG_VALID = 0, /* cleared when lseg is recalled/returned */ 139 void (*free_lseg) (struct pnfs_layout_segment *lseg); 141 struct pnfs_layout_segment *lseg, 173 void (*cancel_io)(struct pnfs_layout_segment *lseg); 186 struct pnfs_layout_segment *lseg, 253 void pnfs_put_lseg(struct pnfs_layout_segment *lseg); 267 void pnfs_set_lo_fail(struct pnfs_layout_segment *lseg); 330 struct pnfs_layout_segment *lseg, 333 bool (*do_merge)(struct pnfs_layout_segment *lseg, 342 struct pnfs_layout_segment *lseg); 445 pnfs_get_lseg(struct pnfs_layout_segment *lseg) pnfs_get_lseg() argument 455 pnfs_is_valid_lseg(struct pnfs_layout_segment *lseg) pnfs_is_valid_lseg() argument 516 pnfs_mark_request_commit(struct nfs_page *req, struct pnfs_layout_segment *lseg, struct nfs_commit_info *cinfo, u32 ds_commit_idx) pnfs_mark_request_commit() argument 681 pnfs_lseg_request_intersecting(struct pnfs_layout_segment *lseg, struct nfs_page *req) pnfs_lseg_request_intersecting() argument 690 pnfs_lseg_cancel_io(struct nfs_server *server, struct pnfs_layout_segment *lseg) pnfs_lseg_cancel_io() argument 727 pnfs_get_lseg(struct pnfs_layout_segment *lseg) pnfs_get_lseg() argument 732 pnfs_put_lseg(struct pnfs_layout_segment *lseg) pnfs_put_lseg() argument 841 pnfs_mark_request_commit(struct nfs_page *req, struct pnfs_layout_segment *lseg, struct nfs_commit_info *cinfo, u32 ds_commit_idx) pnfs_mark_request_commit() argument [all...] |
H A D | pnfs_nfs.c | 56 pnfs_put_lseg(data->lseg); in pnfs_generic_commit_release() 66 struct pnfs_layout_segment *freeme = bucket->lseg; in pnfs_free_bucket_lseg() 67 bucket->lseg = NULL; in pnfs_free_bucket_lseg() 74 * If this will make the bucket empty, it will need to put the lseg reference. 108 p->lseg = NULL; in pnfs_alloc_commit_array() 112 b->lseg = NULL; in pnfs_alloc_commit_array() 128 struct pnfs_layout_segment *lseg) in pnfs_find_commit_array_by_lseg() 133 if (array->lseg == lseg) in pnfs_find_commit_array_by_lseg() 142 struct pnfs_layout_segment *lseg) in pnfs_add_commit_array() 127 pnfs_find_commit_array_by_lseg(struct pnfs_ds_commit_info *fl_cinfo, struct pnfs_layout_segment *lseg) pnfs_find_commit_array_by_lseg() argument 140 pnfs_add_commit_array(struct pnfs_ds_commit_info *fl_cinfo, struct pnfs_commit_array *new, struct pnfs_layout_segment *lseg) pnfs_add_commit_array() argument 158 pnfs_lookup_commit_array(struct pnfs_ds_commit_info *fl_cinfo, struct pnfs_layout_segment *lseg) pnfs_lookup_commit_array() argument 216 pnfs_generic_ds_cinfo_release_lseg(struct pnfs_ds_commit_info *fl_cinfo, struct pnfs_layout_segment *lseg) pnfs_generic_ds_cinfo_release_lseg() argument 406 struct pnfs_layout_segment *lseg; pnfs_bucket_get_committing() local 1200 pnfs_layout_mark_request_commit(struct nfs_page *req, struct pnfs_layout_segment *lseg, struct nfs_commit_info *cinfo, u32 ds_commit_idx) pnfs_layout_mark_request_commit() argument [all...] |
H A D | nfs4trace.h | 1469 #define NFS4_LSEG_LAYOUT_STATEID_HASH(lseg) \ 1470 (lseg ? nfs_stateid_hash(&lseg->pls_layout->plh_stateid) : 0) 1472 #define NFS4_LSEG_LAYOUT_STATEID_HASH(lseg) (0) 1504 const struct pnfs_layout_segment *lseg = hdr->lseg; 1517 __entry->layoutstateid_seq = lseg ? lseg->pls_seq : 0; 1519 NFS4_LSEG_LAYOUT_STATEID_HASH(lseg); 1578 const struct pnfs_layout_segment *lseg [all...] |
/kernel/linux/linux-5.10/fs/nfs/ |
H A D | pnfs.c | 62 static bool pnfs_lseg_dec_and_remove_zero(struct pnfs_layout_segment *lseg, 375 struct pnfs_layout_segment *lseg; in pnfs_clear_layoutreturn_info() local 379 list_for_each_entry(lseg, &lo->plh_segs, pls_list) { in pnfs_clear_layoutreturn_info() 380 if (!test_bit(NFS_LSEG_LAYOUTRETURN, &lseg->pls_flags)) in pnfs_clear_layoutreturn_info() 382 pnfs_set_plh_return_info(lo, lseg->pls_range.iomode, 0); in pnfs_clear_layoutreturn_info() 396 pnfs_clear_lseg_state(struct pnfs_layout_segment *lseg, in pnfs_clear_lseg_state() argument 399 clear_bit(NFS_LSEG_ROC, &lseg->pls_flags); in pnfs_clear_lseg_state() 400 clear_bit(NFS_LSEG_LAYOUTRETURN, &lseg->pls_flags); in pnfs_clear_lseg_state() 401 if (test_and_clear_bit(NFS_LSEG_VALID, &lseg->pls_flags)) in pnfs_clear_lseg_state() 402 pnfs_lseg_dec_and_remove_zero(lseg, free_m in pnfs_clear_lseg_state() 465 struct pnfs_layout_segment *lseg, *next; pnfs_mark_layout_stateid_invalid() local 540 pnfs_init_lseg(struct pnfs_layout_hdr *lo, struct pnfs_layout_segment *lseg, const struct pnfs_layout_range *range, const nfs4_stateid *stateid) pnfs_init_lseg() argument 554 pnfs_free_lseg(struct pnfs_layout_segment *lseg) pnfs_free_lseg() argument 563 pnfs_layout_remove_lseg(struct pnfs_layout_hdr *lo, struct pnfs_layout_segment *lseg) pnfs_layout_remove_lseg() argument 582 pnfs_cache_lseg_for_layoutreturn(struct pnfs_layout_hdr *lo, struct pnfs_layout_segment *lseg) pnfs_cache_lseg_for_layoutreturn() argument 595 pnfs_put_lseg(struct pnfs_layout_segment *lseg) pnfs_put_lseg() argument 645 pnfs_lseg_dec_and_remove_zero(struct pnfs_layout_segment *lseg, struct list_head *tmp_list) pnfs_lseg_dec_and_remove_zero() argument 656 mark_lseg_invalid(struct pnfs_layout_segment *lseg, struct list_head *tmp_list) mark_lseg_invalid() argument 684 pnfs_match_lseg_recall(const struct pnfs_layout_segment *lseg, const struct pnfs_layout_range *recall_range, u32 seq) pnfs_match_lseg_recall() argument 716 struct pnfs_layout_segment *lseg, *next; pnfs_mark_matching_lsegs_invalid() local 742 struct pnfs_layout_segment *lseg, *next; pnfs_free_returned_lsegs() local 754 struct pnfs_layout_segment *lseg, *tmp; pnfs_free_lseg_list() local 1157 struct pnfs_layout_segment *lseg, *tmp; pnfs_clear_layoutcommit() local 1431 struct pnfs_layout_segment *lseg, *next; pnfs_roc() local 1658 pnfs_lseg_no_merge(struct pnfs_layout_segment *lseg, struct pnfs_layout_segment *old) pnfs_lseg_no_merge() argument 1665 pnfs_generic_layout_insert_lseg(struct pnfs_layout_hdr *lo, struct pnfs_layout_segment *lseg, bool (*is_after)(const struct pnfs_layout_range *, const struct pnfs_layout_range *), bool (*do_merge)(struct pnfs_layout_segment *, struct pnfs_layout_segment *), struct list_head *free_me) pnfs_generic_layout_insert_lseg() argument 1709 pnfs_layout_insert_lseg(struct pnfs_layout_hdr *lo, struct pnfs_layout_segment *lseg, struct list_head *free_me) pnfs_layout_insert_lseg() argument 1815 struct pnfs_layout_segment *lseg, *ret = NULL; pnfs_find_lseg() local 1983 struct pnfs_layout_segment *lseg = NULL; pnfs_update_layout() local 2330 struct pnfs_layout_segment *lseg; pnfs_parse_lgopen() local 2393 struct pnfs_layout_segment *lseg; pnfs_layout_process() local 2491 struct pnfs_layout_segment *lseg, *next; pnfs_mark_matching_lsegs_return() local 2563 pnfs_error_mark_layout_for_return(struct inode *inode, struct pnfs_layout_segment *lseg) pnfs_error_mark_layout_for_return() argument 2589 struct pnfs_layout_segment *lseg; pnfs_find_first_lseg() local 2891 pnfs_try_to_write_data(struct nfs_pgio_header *hdr, const struct rpc_call_ops *call_ops, struct pnfs_layout_segment *lseg, int how) pnfs_try_to_write_data() argument 2916 struct pnfs_layout_segment *lseg = desc->pg_lseg; pnfs_do_write() local 3017 pnfs_try_to_read_data(struct nfs_pgio_header *hdr, const struct rpc_call_ops *call_ops, struct pnfs_layout_segment *lseg) pnfs_try_to_read_data() argument 3060 struct pnfs_layout_segment *lseg = desc->pg_lseg; pnfs_do_read() local 3120 struct pnfs_layout_segment *lseg; pnfs_list_write_lseg() local 3131 struct pnfs_layout_segment *lseg, *tmp; pnfs_list_write_lseg_done() local 3142 pnfs_set_lo_fail(struct pnfs_layout_segment *lseg) pnfs_set_lo_fail() argument 3149 pnfs_set_layoutcommit(struct inode *inode, struct pnfs_layout_segment *lseg, loff_t end_pos) pnfs_set_layoutcommit() argument [all...] |
H A D | pnfs_nfs.c | 56 pnfs_put_lseg(data->lseg); in pnfs_generic_commit_release() 66 struct pnfs_layout_segment *freeme = bucket->lseg; in pnfs_free_bucket_lseg() 67 bucket->lseg = NULL; in pnfs_free_bucket_lseg() 74 * If this will make the bucket empty, it will need to put the lseg reference. 108 p->lseg = NULL; in pnfs_alloc_commit_array() 112 b->lseg = NULL; in pnfs_alloc_commit_array() 128 struct pnfs_layout_segment *lseg) in pnfs_find_commit_array_by_lseg() 133 if (array->lseg == lseg) in pnfs_find_commit_array_by_lseg() 142 struct pnfs_layout_segment *lseg) in pnfs_add_commit_array() 127 pnfs_find_commit_array_by_lseg(struct pnfs_ds_commit_info *fl_cinfo, struct pnfs_layout_segment *lseg) pnfs_find_commit_array_by_lseg() argument 140 pnfs_add_commit_array(struct pnfs_ds_commit_info *fl_cinfo, struct pnfs_commit_array *new, struct pnfs_layout_segment *lseg) pnfs_add_commit_array() argument 158 pnfs_lookup_commit_array(struct pnfs_ds_commit_info *fl_cinfo, struct pnfs_layout_segment *lseg) pnfs_lookup_commit_array() argument 216 pnfs_generic_ds_cinfo_release_lseg(struct pnfs_ds_commit_info *fl_cinfo, struct pnfs_layout_segment *lseg) pnfs_generic_ds_cinfo_release_lseg() argument 406 struct pnfs_layout_segment *lseg; pnfs_bucket_get_committing() local 1164 pnfs_layout_mark_request_commit(struct nfs_page *req, struct pnfs_layout_segment *lseg, struct nfs_commit_info *cinfo, u32 ds_commit_idx) pnfs_layout_mark_request_commit() argument [all...] |
H A D | pnfs.h | 41 NFS_LSEG_VALID = 0, /* cleared when lseg is recalled/returned */ 141 void (*free_lseg) (struct pnfs_layout_segment *lseg); 143 struct pnfs_layout_segment *lseg, 186 struct pnfs_layout_segment *lseg, 253 void pnfs_put_lseg(struct pnfs_layout_segment *lseg); 267 void pnfs_set_lo_fail(struct pnfs_layout_segment *lseg); 330 struct pnfs_layout_segment *lseg, 333 bool (*do_merge)(struct pnfs_layout_segment *lseg, 342 struct pnfs_layout_segment *lseg); 387 struct pnfs_layout_segment *lseg); 445 pnfs_get_lseg(struct pnfs_layout_segment *lseg) pnfs_get_lseg() argument 455 pnfs_is_valid_lseg(struct pnfs_layout_segment *lseg) pnfs_is_valid_lseg() argument 516 pnfs_mark_request_commit(struct nfs_page *req, struct pnfs_layout_segment *lseg, struct nfs_commit_info *cinfo, u32 ds_commit_idx) pnfs_mark_request_commit() argument 681 pnfs_lseg_request_intersecting(struct pnfs_layout_segment *lseg, struct nfs_page *req) pnfs_lseg_request_intersecting() argument 720 pnfs_get_lseg(struct pnfs_layout_segment *lseg) pnfs_get_lseg() argument 725 pnfs_put_lseg(struct pnfs_layout_segment *lseg) pnfs_put_lseg() argument 834 pnfs_mark_request_commit(struct nfs_page *req, struct pnfs_layout_segment *lseg, struct nfs_commit_info *cinfo, u32 ds_commit_idx) pnfs_mark_request_commit() argument [all...] |
H A D | nfs4trace.h | 1734 #define NFS4_LSEG_LAYOUT_STATEID_HASH(lseg) \ 1735 (lseg ? nfs_stateid_hash(&lseg->pls_layout->plh_stateid) : 0) 1737 #define NFS4_LSEG_LAYOUT_STATEID_HASH(lseg) (0) 1769 const struct pnfs_layout_segment *lseg = hdr->lseg; 1782 __entry->layoutstateid_seq = lseg ? lseg->pls_seq : 0; 1784 NFS4_LSEG_LAYOUT_STATEID_HASH(lseg); 1843 const struct pnfs_layout_segment *lseg [all...] |
/kernel/linux/linux-5.10/fs/nfs/flexfilelayout/ |
H A D | flexfilelayout.h | 128 FF_LAYOUT_LSEG(struct pnfs_layout_segment *lseg) in FF_LAYOUT_LSEG() argument 130 return container_of(lseg, in FF_LAYOUT_LSEG() 142 FF_LAYOUT_COMP(struct pnfs_layout_segment *lseg, u32 idx) in FF_LAYOUT_COMP() argument 144 struct nfs4_ff_layout_segment *fls = FF_LAYOUT_LSEG(lseg); in FF_LAYOUT_COMP() 152 FF_LAYOUT_DEVID_NODE(struct pnfs_layout_segment *lseg, u32 idx) in FF_LAYOUT_DEVID_NODE() argument 154 struct nfs4_ff_layout_mirror *mirror = FF_LAYOUT_COMP(lseg, idx); in FF_LAYOUT_DEVID_NODE() 166 FF_LAYOUT_MIRROR_COUNT(struct pnfs_layout_segment *lseg) in FF_LAYOUT_MIRROR_COUNT() argument 168 return FF_LAYOUT_LSEG(lseg)->mirror_array_cnt; in FF_LAYOUT_MIRROR_COUNT() 172 ff_layout_no_fallback_to_mds(struct pnfs_layout_segment *lseg) in ff_layout_no_fallback_to_mds() argument 174 return FF_LAYOUT_LSEG(lseg) in ff_layout_no_fallback_to_mds() 178 ff_layout_no_read_on_rw(struct pnfs_layout_segment *lseg) ff_layout_no_read_on_rw() argument [all...] |
H A D | flexfilelayout.c | 337 struct pnfs_layout_segment *lseg, in ff_layout_add_lseg() 340 pnfs_generic_layout_insert_lseg(lo, lseg, in ff_layout_add_lseg() 554 ff_layout_free_lseg(struct pnfs_layout_segment *lseg) in ff_layout_free_lseg() argument 556 struct nfs4_ff_layout_segment *fls = FF_LAYOUT_LSEG(lseg); in ff_layout_free_lseg() 560 if (lseg->pls_range.iomode == IOMODE_RW) { in ff_layout_free_lseg() 564 ffl = FF_LAYOUT_FROM_HDR(lseg->pls_layout); in ff_layout_free_lseg() 567 pnfs_generic_ds_cinfo_release_lseg(&ffl->commit_info, lseg); in ff_layout_free_lseg() 718 ff_layout_mark_ds_unreachable(struct pnfs_layout_segment *lseg, u32 idx) in ff_layout_mark_ds_unreachable() argument 720 struct nfs4_deviceid_node *devid = FF_LAYOUT_DEVID_NODE(lseg, idx); in ff_layout_mark_ds_unreachable() 727 ff_layout_mark_ds_reachable(struct pnfs_layout_segment *lseg, u3 argument 336 ff_layout_add_lseg(struct pnfs_layout_hdr *lo, struct pnfs_layout_segment *lseg, struct list_head *free_me) ff_layout_add_lseg() argument 736 ff_layout_choose_ds_for_read(struct pnfs_layout_segment *lseg, u32 start_idx, u32 *best_idx, bool check_device) ff_layout_choose_ds_for_read() argument 768 ff_layout_choose_any_ds_for_read(struct pnfs_layout_segment *lseg, u32 start_idx, u32 *best_idx) ff_layout_choose_any_ds_for_read() argument 775 ff_layout_choose_valid_ds_for_read(struct pnfs_layout_segment *lseg, u32 start_idx, u32 *best_idx) ff_layout_choose_valid_ds_for_read() argument 782 ff_layout_choose_best_ds_for_read(struct pnfs_layout_segment *lseg, u32 start_idx, u32 *best_idx) ff_layout_choose_best_ds_for_read() argument 797 struct pnfs_layout_segment *lseg = pgio->pg_lseg; ff_layout_get_ds_for_read() local 1090 ff_layout_async_handle_error_v4(struct rpc_task *task, struct nfs4_state *state, struct nfs_client *clp, struct pnfs_layout_segment *lseg, u32 idx) ff_layout_async_handle_error_v4() argument 1166 ff_layout_async_handle_error_v3(struct rpc_task *task, struct pnfs_layout_segment *lseg, u32 idx) ff_layout_async_handle_error_v3() argument 1199 ff_layout_async_handle_error(struct rpc_task *task, struct nfs4_state *state, struct nfs_client *clp, struct pnfs_layout_segment *lseg, u32 idx) ff_layout_async_handle_error() argument 1229 ff_layout_io_track_ds_error(struct pnfs_layout_segment *lseg, u32 idx, u64 offset, u64 length, u32 *op_status, int opnum, int error) ff_layout_io_track_ds_error() argument 1328 ff_layout_need_layoutcommit(struct pnfs_layout_segment *lseg) ff_layout_need_layoutcommit() argument 1343 ff_layout_set_layoutcommit(struct inode *inode, struct pnfs_layout_segment *lseg, loff_t end_offset) ff_layout_set_layoutcommit() argument 1751 struct pnfs_layout_segment *lseg = hdr->lseg; ff_layout_read_pagelist() local 1821 struct pnfs_layout_segment *lseg = hdr->lseg; ff_layout_write_pagelist() local 1885 calc_ds_index_from_commit(struct pnfs_layout_segment *lseg, u32 i) calc_ds_index_from_commit() argument 1891 select_ds_fh_from_commit(struct pnfs_layout_segment *lseg, u32 i) select_ds_fh_from_commit() argument 1903 struct pnfs_layout_segment *lseg = data->lseg; ff_layout_initiate_commit() local 1976 ff_layout_setup_ds_info(struct pnfs_ds_commit_info *fl_cinfo, struct pnfs_layout_segment *lseg) ff_layout_setup_ds_info() argument 2190 ff_layout_send_layouterror(struct pnfs_layout_segment *lseg) ff_layout_send_layouterror() argument 2229 ff_layout_send_layouterror(struct pnfs_layout_segment *lseg) ff_layout_send_layouterror() argument [all...] |
H A D | flexfilelayoutdev.c | 24 static bool ff_layout_has_available_ds(struct pnfs_layout_segment *lseg); 351 * @lseg: the layout segment we're operating on 367 nfs4_ff_layout_prepare_ds(struct pnfs_layout_segment *lseg, in nfs4_ff_layout_prepare_ds() argument 372 struct inode *ino = lseg->pls_layout->plh_inode; in nfs4_ff_layout_prepare_ds() 377 if (!ff_layout_init_mirror_ds(lseg->pls_layout, mirror)) in nfs4_ff_layout_prepare_ds() 406 ff_layout_track_ds_error(FF_LAYOUT_FROM_HDR(lseg->pls_layout), in nfs4_ff_layout_prepare_ds() 407 mirror, lseg->pls_range.offset, in nfs4_ff_layout_prepare_ds() 408 lseg->pls_range.length, NFS4ERR_NXIO, in nfs4_ff_layout_prepare_ds() 410 ff_layout_send_layouterror(lseg); in nfs4_ff_layout_prepare_ds() 411 if (fail_return || !ff_layout_has_available_ds(lseg)) in nfs4_ff_layout_prepare_ds() 550 ff_read_layout_has_available_ds(struct pnfs_layout_segment *lseg) ff_read_layout_has_available_ds() argument 572 ff_rw_layout_has_available_ds(struct pnfs_layout_segment *lseg) ff_rw_layout_has_available_ds() argument 592 ff_layout_has_available_ds(struct pnfs_layout_segment *lseg) ff_layout_has_available_ds() argument 600 ff_layout_avoid_mds_available_ds(struct pnfs_layout_segment *lseg) ff_layout_avoid_mds_available_ds() argument 606 ff_layout_avoid_read_on_rw(struct pnfs_layout_segment *lseg) ff_layout_avoid_read_on_rw() argument [all...] |
/kernel/linux/linux-6.6/fs/nfs/flexfilelayout/ |
H A D | flexfilelayout.h | 128 FF_LAYOUT_LSEG(struct pnfs_layout_segment *lseg) in FF_LAYOUT_LSEG() argument 130 return container_of(lseg, in FF_LAYOUT_LSEG() 142 FF_LAYOUT_COMP(struct pnfs_layout_segment *lseg, u32 idx) in FF_LAYOUT_COMP() argument 144 struct nfs4_ff_layout_segment *fls = FF_LAYOUT_LSEG(lseg); in FF_LAYOUT_COMP() 152 FF_LAYOUT_DEVID_NODE(struct pnfs_layout_segment *lseg, u32 idx) in FF_LAYOUT_DEVID_NODE() argument 154 struct nfs4_ff_layout_mirror *mirror = FF_LAYOUT_COMP(lseg, idx); in FF_LAYOUT_DEVID_NODE() 166 FF_LAYOUT_MIRROR_COUNT(struct pnfs_layout_segment *lseg) in FF_LAYOUT_MIRROR_COUNT() argument 168 return FF_LAYOUT_LSEG(lseg)->mirror_array_cnt; in FF_LAYOUT_MIRROR_COUNT() 172 ff_layout_no_fallback_to_mds(struct pnfs_layout_segment *lseg) in ff_layout_no_fallback_to_mds() argument 174 return FF_LAYOUT_LSEG(lseg) in ff_layout_no_fallback_to_mds() 178 ff_layout_no_read_on_rw(struct pnfs_layout_segment *lseg) ff_layout_no_read_on_rw() argument [all...] |
H A D | flexfilelayout.c | 343 struct pnfs_layout_segment *lseg, in ff_layout_add_lseg() 346 pnfs_generic_layout_insert_lseg(lo, lseg, in ff_layout_add_lseg() 560 ff_layout_free_lseg(struct pnfs_layout_segment *lseg) in ff_layout_free_lseg() argument 562 struct nfs4_ff_layout_segment *fls = FF_LAYOUT_LSEG(lseg); in ff_layout_free_lseg() 566 if (lseg->pls_range.iomode == IOMODE_RW) { in ff_layout_free_lseg() 570 ffl = FF_LAYOUT_FROM_HDR(lseg->pls_layout); in ff_layout_free_lseg() 573 pnfs_generic_ds_cinfo_release_lseg(&ffl->commit_info, lseg); in ff_layout_free_lseg() 724 ff_layout_mark_ds_unreachable(struct pnfs_layout_segment *lseg, u32 idx) in ff_layout_mark_ds_unreachable() argument 726 struct nfs4_deviceid_node *devid = FF_LAYOUT_DEVID_NODE(lseg, idx); in ff_layout_mark_ds_unreachable() 733 ff_layout_mark_ds_reachable(struct pnfs_layout_segment *lseg, u3 argument 342 ff_layout_add_lseg(struct pnfs_layout_hdr *lo, struct pnfs_layout_segment *lseg, struct list_head *free_me) ff_layout_add_lseg() argument 742 ff_layout_choose_ds_for_read(struct pnfs_layout_segment *lseg, u32 start_idx, u32 *best_idx, bool check_device) ff_layout_choose_ds_for_read() argument 770 ff_layout_choose_any_ds_for_read(struct pnfs_layout_segment *lseg, u32 start_idx, u32 *best_idx) ff_layout_choose_any_ds_for_read() argument 777 ff_layout_choose_valid_ds_for_read(struct pnfs_layout_segment *lseg, u32 start_idx, u32 *best_idx) ff_layout_choose_valid_ds_for_read() argument 784 ff_layout_choose_best_ds_for_read(struct pnfs_layout_segment *lseg, u32 start_idx, u32 *best_idx) ff_layout_choose_best_ds_for_read() argument 799 struct pnfs_layout_segment *lseg = pgio->pg_lseg; ff_layout_get_ds_for_read() local 1083 ff_layout_async_handle_error_v4(struct rpc_task *task, struct nfs4_state *state, struct nfs_client *clp, struct pnfs_layout_segment *lseg, u32 idx) ff_layout_async_handle_error_v4() argument 1161 ff_layout_async_handle_error_v3(struct rpc_task *task, struct pnfs_layout_segment *lseg, u32 idx) ff_layout_async_handle_error_v3() argument 1194 ff_layout_async_handle_error(struct rpc_task *task, struct nfs4_state *state, struct nfs_client *clp, struct pnfs_layout_segment *lseg, u32 idx) ff_layout_async_handle_error() argument 1224 ff_layout_io_track_ds_error(struct pnfs_layout_segment *lseg, u32 idx, u64 offset, u64 length, u32 *op_status, int opnum, int error) ff_layout_io_track_ds_error() argument 1325 ff_layout_need_layoutcommit(struct pnfs_layout_segment *lseg) ff_layout_need_layoutcommit() argument 1340 ff_layout_set_layoutcommit(struct inode *inode, struct pnfs_layout_segment *lseg, loff_t end_offset) ff_layout_set_layoutcommit() argument 1764 struct pnfs_layout_segment *lseg = hdr->lseg; ff_layout_read_pagelist() local 1834 struct pnfs_layout_segment *lseg = hdr->lseg; ff_layout_write_pagelist() local 1898 calc_ds_index_from_commit(struct pnfs_layout_segment *lseg, u32 i) calc_ds_index_from_commit() argument 1904 select_ds_fh_from_commit(struct pnfs_layout_segment *lseg, u32 i) select_ds_fh_from_commit() argument 1916 struct pnfs_layout_segment *lseg = data->lseg; ff_layout_initiate_commit() local 1977 ff_layout_match_rw(const struct rpc_task *task, const struct nfs_pgio_header *hdr, const struct pnfs_layout_segment *lseg) ff_layout_match_rw() argument 1984 ff_layout_match_commit(const struct rpc_task *task, const struct nfs_commit_data *cdata, const struct pnfs_layout_segment *lseg) ff_layout_match_commit() argument 2006 ff_layout_cancel_io(struct pnfs_layout_segment *lseg) ff_layout_cancel_io() argument 2048 ff_layout_setup_ds_info(struct pnfs_ds_commit_info *fl_cinfo, struct pnfs_layout_segment *lseg) ff_layout_setup_ds_info() argument 2264 ff_layout_send_layouterror(struct pnfs_layout_segment *lseg) ff_layout_send_layouterror() argument 2303 ff_layout_send_layouterror(struct pnfs_layout_segment *lseg) ff_layout_send_layouterror() argument [all...] |
H A D | flexfilelayoutdev.c | 24 static bool ff_layout_has_available_ds(struct pnfs_layout_segment *lseg); 353 * @lseg: the layout segment we're operating on 369 nfs4_ff_layout_prepare_ds(struct pnfs_layout_segment *lseg, in nfs4_ff_layout_prepare_ds() argument 374 struct inode *ino = lseg->pls_layout->plh_inode; in nfs4_ff_layout_prepare_ds() 379 if (!ff_layout_init_mirror_ds(lseg->pls_layout, mirror)) in nfs4_ff_layout_prepare_ds() 408 ff_layout_track_ds_error(FF_LAYOUT_FROM_HDR(lseg->pls_layout), in nfs4_ff_layout_prepare_ds() 409 mirror, lseg->pls_range.offset, in nfs4_ff_layout_prepare_ds() 410 lseg->pls_range.length, NFS4ERR_NXIO, in nfs4_ff_layout_prepare_ds() 412 ff_layout_send_layouterror(lseg); in nfs4_ff_layout_prepare_ds() 413 if (fail_return || !ff_layout_has_available_ds(lseg)) in nfs4_ff_layout_prepare_ds() 552 ff_read_layout_has_available_ds(struct pnfs_layout_segment *lseg) ff_read_layout_has_available_ds() argument 574 ff_rw_layout_has_available_ds(struct pnfs_layout_segment *lseg) ff_rw_layout_has_available_ds() argument 594 ff_layout_has_available_ds(struct pnfs_layout_segment *lseg) ff_layout_has_available_ds() argument 602 ff_layout_avoid_mds_available_ds(struct pnfs_layout_segment *lseg) ff_layout_avoid_mds_available_ds() argument 608 ff_layout_avoid_read_on_rw(struct pnfs_layout_segment *lseg) ff_layout_avoid_read_on_rw() argument [all...] |
/kernel/linux/linux-6.6/fs/nfs/filelayout/ |
H A D | filelayout.c | 74 filelayout_get_dserver_offset(struct pnfs_layout_segment *lseg, loff_t offset) in filelayout_get_dserver_offset() argument 76 struct nfs4_filelayout_segment *flseg = FILELAYOUT_LSEG(lseg); in filelayout_get_dserver_offset() 126 struct pnfs_layout_segment *lseg) in filelayout_async_handle_error() 128 struct pnfs_layout_hdr *lo = lseg->pls_layout; in filelayout_async_handle_error() 130 struct nfs4_deviceid_node *devid = FILELAYOUT_DEVID_NODE(lseg); in filelayout_async_handle_error() 168 * Layout will not be destroyed until all current lseg in filelayout_async_handle_error() 189 pnfs_error_mark_layout_for_return(inode, lseg); in filelayout_async_handle_error() 190 pnfs_set_lo_fail(lseg); in filelayout_async_handle_error() 212 hdr->ds_clp, hdr->lseg); in filelayout_read_done_cb() 236 if (FILELAYOUT_LSEG(hdr->lseg) in filelayout_set_layoutcommit() 123 filelayout_async_handle_error(struct rpc_task *task, struct nfs4_state *state, struct nfs_client *clp, struct pnfs_layout_segment *lseg) filelayout_async_handle_error() argument 256 filelayout_reset_to_mds(struct pnfs_layout_segment *lseg) filelayout_reset_to_mds() argument 452 struct pnfs_layout_segment *lseg = hdr->lseg; filelayout_read_pagelist() local 499 struct pnfs_layout_segment *lseg = hdr->lseg; filelayout_write_pagelist() local 744 filelayout_free_lseg(struct pnfs_layout_segment *lseg) filelayout_free_lseg() argument 845 struct pnfs_layout_segment *lseg = NULL; fl_pnfs_update_layout() local 946 filelayout_mark_request_commit(struct nfs_page *req, struct pnfs_layout_segment *lseg, struct nfs_commit_info *cinfo, u32 ds_commit_idx) filelayout_mark_request_commit() argument 970 calc_ds_index_from_commit(struct pnfs_layout_segment *lseg, u32 i) calc_ds_index_from_commit() argument 981 select_ds_fh_from_commit(struct pnfs_layout_segment *lseg, u32 i) select_ds_fh_from_commit() argument 997 struct pnfs_layout_segment *lseg = data->lseg; filelayout_initiate_commit() local 1086 filelayout_setup_ds_info(struct pnfs_ds_commit_info *fl_cinfo, struct pnfs_layout_segment *lseg) filelayout_setup_ds_info() argument [all...] |
H A D | filelayout.h | 82 FILELAYOUT_LSEG(struct pnfs_layout_segment *lseg) in FILELAYOUT_LSEG() argument 84 return container_of(lseg, in FILELAYOUT_LSEG() 90 FILELAYOUT_DEVID_NODE(struct pnfs_layout_segment *lseg) in FILELAYOUT_DEVID_NODE() argument 92 return &FILELAYOUT_LSEG(lseg)->dsaddr->id_node; in FILELAYOUT_DEVID_NODE() 105 nfs4_fl_select_ds_fh(struct pnfs_layout_segment *lseg, u32 j); 107 u32 nfs4_fl_calc_j_index(struct pnfs_layout_segment *lseg, loff_t offset); 108 u32 nfs4_fl_calc_ds_index(struct pnfs_layout_segment *lseg, u32 j); 109 struct nfs4_pnfs_ds *nfs4_fl_prepare_ds(struct pnfs_layout_segment *lseg,
|
H A D | filelayoutdev.c | 222 nfs4_fl_calc_j_index(struct pnfs_layout_segment *lseg, loff_t offset) in nfs4_fl_calc_j_index() argument 224 struct nfs4_filelayout_segment *flseg = FILELAYOUT_LSEG(lseg); in nfs4_fl_calc_j_index() 234 nfs4_fl_calc_ds_index(struct pnfs_layout_segment *lseg, u32 j) in nfs4_fl_calc_ds_index() argument 236 return FILELAYOUT_LSEG(lseg)->dsaddr->stripe_indices[j]; in nfs4_fl_calc_ds_index() 240 nfs4_fl_select_ds_fh(struct pnfs_layout_segment *lseg, u32 j) in nfs4_fl_select_ds_fh() argument 242 struct nfs4_filelayout_segment *flseg = FILELAYOUT_LSEG(lseg); in nfs4_fl_select_ds_fh() 252 i = nfs4_fl_calc_ds_index(lseg, j); in nfs4_fl_select_ds_fh() 260 nfs4_fl_prepare_ds(struct pnfs_layout_segment *lseg, u32 ds_idx) in nfs4_fl_prepare_ds() argument 262 struct nfs4_file_layout_dsaddr *dsaddr = FILELAYOUT_LSEG(lseg)->dsaddr; in nfs4_fl_prepare_ds() 264 struct nfs4_deviceid_node *devid = FILELAYOUT_DEVID_NODE(lseg); in nfs4_fl_prepare_ds() [all...] |
/kernel/linux/linux-5.10/fs/nfs/filelayout/ |
H A D | filelayout.c | 74 filelayout_get_dserver_offset(struct pnfs_layout_segment *lseg, loff_t offset) in filelayout_get_dserver_offset() argument 76 struct nfs4_filelayout_segment *flseg = FILELAYOUT_LSEG(lseg); in filelayout_get_dserver_offset() 126 struct pnfs_layout_segment *lseg) in filelayout_async_handle_error() 128 struct pnfs_layout_hdr *lo = lseg->pls_layout; in filelayout_async_handle_error() 130 struct nfs4_deviceid_node *devid = FILELAYOUT_DEVID_NODE(lseg); in filelayout_async_handle_error() 168 * Layout will not be destroyed until all current lseg in filelayout_async_handle_error() 187 pnfs_error_mark_layout_for_return(inode, lseg); in filelayout_async_handle_error() 188 pnfs_set_lo_fail(lseg); in filelayout_async_handle_error() 210 hdr->ds_clp, hdr->lseg); in filelayout_read_done_cb() 234 if (FILELAYOUT_LSEG(hdr->lseg) in filelayout_set_layoutcommit() 123 filelayout_async_handle_error(struct rpc_task *task, struct nfs4_state *state, struct nfs_client *clp, struct pnfs_layout_segment *lseg) filelayout_async_handle_error() argument 254 filelayout_reset_to_mds(struct pnfs_layout_segment *lseg) filelayout_reset_to_mds() argument 452 struct pnfs_layout_segment *lseg = hdr->lseg; filelayout_read_pagelist() local 499 struct pnfs_layout_segment *lseg = hdr->lseg; filelayout_write_pagelist() local 744 filelayout_free_lseg(struct pnfs_layout_segment *lseg) filelayout_free_lseg() argument 845 struct pnfs_layout_segment *lseg = NULL; fl_pnfs_update_layout() local 939 filelayout_mark_request_commit(struct nfs_page *req, struct pnfs_layout_segment *lseg, struct nfs_commit_info *cinfo, u32 ds_commit_idx) filelayout_mark_request_commit() argument 963 calc_ds_index_from_commit(struct pnfs_layout_segment *lseg, u32 i) calc_ds_index_from_commit() argument 974 select_ds_fh_from_commit(struct pnfs_layout_segment *lseg, u32 i) select_ds_fh_from_commit() argument 990 struct pnfs_layout_segment *lseg = data->lseg; filelayout_initiate_commit() local 1079 filelayout_setup_ds_info(struct pnfs_ds_commit_info *fl_cinfo, struct pnfs_layout_segment *lseg) filelayout_setup_ds_info() argument [all...] |
H A D | filelayout.h | 82 FILELAYOUT_LSEG(struct pnfs_layout_segment *lseg) in FILELAYOUT_LSEG() argument 84 return container_of(lseg, in FILELAYOUT_LSEG() 90 FILELAYOUT_DEVID_NODE(struct pnfs_layout_segment *lseg) in FILELAYOUT_DEVID_NODE() argument 92 return &FILELAYOUT_LSEG(lseg)->dsaddr->id_node; in FILELAYOUT_DEVID_NODE() 105 nfs4_fl_select_ds_fh(struct pnfs_layout_segment *lseg, u32 j); 107 u32 nfs4_fl_calc_j_index(struct pnfs_layout_segment *lseg, loff_t offset); 108 u32 nfs4_fl_calc_ds_index(struct pnfs_layout_segment *lseg, u32 j); 109 struct nfs4_pnfs_ds *nfs4_fl_prepare_ds(struct pnfs_layout_segment *lseg,
|
H A D | filelayoutdev.c | 224 nfs4_fl_calc_j_index(struct pnfs_layout_segment *lseg, loff_t offset) in nfs4_fl_calc_j_index() argument 226 struct nfs4_filelayout_segment *flseg = FILELAYOUT_LSEG(lseg); in nfs4_fl_calc_j_index() 236 nfs4_fl_calc_ds_index(struct pnfs_layout_segment *lseg, u32 j) in nfs4_fl_calc_ds_index() argument 238 return FILELAYOUT_LSEG(lseg)->dsaddr->stripe_indices[j]; in nfs4_fl_calc_ds_index() 242 nfs4_fl_select_ds_fh(struct pnfs_layout_segment *lseg, u32 j) in nfs4_fl_select_ds_fh() argument 244 struct nfs4_filelayout_segment *flseg = FILELAYOUT_LSEG(lseg); in nfs4_fl_select_ds_fh() 254 i = nfs4_fl_calc_ds_index(lseg, j); in nfs4_fl_select_ds_fh() 262 nfs4_fl_prepare_ds(struct pnfs_layout_segment *lseg, u32 ds_idx) in nfs4_fl_prepare_ds() argument 264 struct nfs4_file_layout_dsaddr *dsaddr = FILELAYOUT_LSEG(lseg)->dsaddr; in nfs4_fl_prepare_ds() 266 struct nfs4_deviceid_node *devid = FILELAYOUT_DEVID_NODE(lseg); in nfs4_fl_prepare_ds() [all...] |
/kernel/linux/linux-5.10/fs/nfs/blocklayout/ |
H A D | blocklayout.c | 194 struct pnfs_block_layout *bl = BLK_LSEG2EXT(header->lseg); in bl_mark_devices_unavailable() 224 pnfs_set_lo_fail(header->lseg); in bl_end_io_read() 255 struct pnfs_block_layout *bl = BLK_LSEG2EXT(header->lseg); in bl_read_pagelist() 354 pnfs_set_lo_fail(header->lseg); in bl_end_io_write() 373 struct pnfs_block_layout *bl = BLK_LSEG2EXT(hdr->lseg); in bl_write_cleanup() 400 struct pnfs_block_layout *bl = BLK_LSEG2EXT(header->lseg); in bl_write_pagelist() 512 static void bl_free_lseg(struct pnfs_layout_segment *lseg) in bl_free_lseg() argument 515 kfree(lseg); in bl_free_lseg() 680 struct pnfs_layout_segment *lseg; in bl_alloc_lseg() local 691 lseg in bl_alloc_lseg() [all...] |
H A D | blocklayout.h | 153 BLK_LSEG2EXT(struct pnfs_layout_segment *lseg) in BLK_LSEG2EXT() argument 155 return BLK_LO2EXT(lseg->pls_layout); in BLK_LSEG2EXT()
|
/kernel/linux/linux-6.6/fs/nfs/blocklayout/ |
H A D | blocklayout.c | 171 struct pnfs_block_layout *bl = BLK_LSEG2EXT(header->lseg); in bl_mark_devices_unavailable() 201 pnfs_set_lo_fail(header->lseg); in bl_end_io_read() 232 struct pnfs_block_layout *bl = BLK_LSEG2EXT(header->lseg); in bl_read_pagelist() 331 pnfs_set_lo_fail(header->lseg); in bl_end_io_write() 350 struct pnfs_block_layout *bl = BLK_LSEG2EXT(hdr->lseg); in bl_write_cleanup() 377 struct pnfs_block_layout *bl = BLK_LSEG2EXT(header->lseg); in bl_write_pagelist() 488 static void bl_free_lseg(struct pnfs_layout_segment *lseg) in bl_free_lseg() argument 491 kfree(lseg); in bl_free_lseg() 656 struct pnfs_layout_segment *lseg; in bl_alloc_lseg() local 667 lseg in bl_alloc_lseg() [all...] |
H A D | blocklayout.h | 153 BLK_LSEG2EXT(struct pnfs_layout_segment *lseg) in BLK_LSEG2EXT() argument 155 return BLK_LO2EXT(lseg->pls_layout); in BLK_LSEG2EXT()
|
/kernel/linux/linux-5.10/arch/x86/kernel/ |
H A D | module.c | 291 void *lseg = (void *)locks->sh_addr; in module_finalize() local 294 lseg, lseg + locks->sh_size, in module_finalize()
|