Home
last modified time | relevance | path

Searched refs:lseg (Results 1 – 18 of 18) sorted by relevance

/fs/nfs/
Dpnfs.c62 static bool pnfs_lseg_dec_and_remove_zero(struct pnfs_layout_segment *lseg,
345 struct pnfs_layout_segment *lseg; in pnfs_clear_layoutreturn_info() local
349 list_for_each_entry(lseg, &lo->plh_segs, pls_list) { in pnfs_clear_layoutreturn_info()
350 if (!test_bit(NFS_LSEG_LAYOUTRETURN, &lseg->pls_flags)) in pnfs_clear_layoutreturn_info()
352 pnfs_set_plh_return_info(lo, lseg->pls_range.iomode, 0); in pnfs_clear_layoutreturn_info()
366 pnfs_clear_lseg_state(struct pnfs_layout_segment *lseg, in pnfs_clear_lseg_state() argument
369 clear_bit(NFS_LSEG_ROC, &lseg->pls_flags); in pnfs_clear_lseg_state()
370 clear_bit(NFS_LSEG_LAYOUTRETURN, &lseg->pls_flags); in pnfs_clear_lseg_state()
371 if (test_and_clear_bit(NFS_LSEG_VALID, &lseg->pls_flags)) in pnfs_clear_lseg_state()
372 pnfs_lseg_dec_and_remove_zero(lseg, free_me); in pnfs_clear_lseg_state()
[all …]
Dpnfs.h138 void (*free_lseg) (struct pnfs_layout_segment *lseg);
140 struct pnfs_layout_segment *lseg,
152 struct pnfs_layout_segment *lseg,
242 void pnfs_put_lseg(struct pnfs_layout_segment *lseg);
255 void pnfs_set_lo_fail(struct pnfs_layout_segment *lseg);
317 struct pnfs_layout_segment *lseg,
320 bool (*do_merge)(struct pnfs_layout_segment *lseg,
329 struct pnfs_layout_segment *lseg);
390 struct pnfs_layout_segment *lseg,
417 pnfs_get_lseg(struct pnfs_layout_segment *lseg) in pnfs_get_lseg() argument
[all …]
Dnfs42proc.c679 nfs42_alloc_layouterror_data(struct pnfs_layout_segment *lseg, gfp_t gfp_flags) in nfs42_alloc_layouterror_data() argument
682 struct inode *inode = lseg->pls_layout->plh_inode; in nfs42_alloc_layouterror_data()
688 data->lseg = pnfs_get_lseg(lseg); in nfs42_alloc_layouterror_data()
689 if (data->lseg) in nfs42_alloc_layouterror_data()
701 pnfs_put_lseg(data->lseg); in nfs42_free_layouterror_data()
712 struct pnfs_layout_hdr *lo = data->lseg->pls_layout; in nfs42_layouterror_prepare()
734 struct pnfs_layout_hdr *lo = data->lseg->pls_layout; in nfs42_layouterror_done()
801 int nfs42_proc_layouterror(struct pnfs_layout_segment *lseg, in nfs42_proc_layouterror() argument
804 struct inode *inode = lseg->pls_layout->plh_inode; in nfs42_proc_layouterror()
821 data = nfs42_alloc_layouterror_data(lseg, GFP_NOFS); in nfs42_proc_layouterror()
Dnfs4trace.h1894 struct pnfs_layout_segment *lseg,
1897 TP_ARGS(inode, pos, count, iomode, lo, lseg, reason),
1907 __field(long, lseg)
1927 __entry->lseg = (long)lseg;
1940 __entry->lseg,
1951 struct pnfs_layout_segment *lseg
1953 TP_ARGS(inode, pos, count, iomode, lo, lseg),
1963 __field(long, lseg)
1981 __entry->lseg = (long)lseg;
1994 __entry->lseg
[all …]
Dpnfs_nfs.c56 pnfs_put_lseg(data->lseg); in pnfs_generic_commit_release()
227 data->lseg = bucket->clseg; in pnfs_fetch_commit_bucket_list()
305 nfs_init_commit(data, &pages, data->lseg, cinfo); in pnfs_generic_commit_pagelist()
928 struct pnfs_layout_segment *lseg, in pnfs_layout_mark_request_commit() argument
939 if (!pnfs_is_valid_lseg(lseg)) { in pnfs_layout_mark_request_commit()
951 buckets[ds_commit_idx].wlseg = pnfs_get_lseg(lseg); in pnfs_layout_mark_request_commit()
Dwrite.c947 nfs_mark_request_commit(struct nfs_page *req, struct pnfs_layout_segment *lseg, in nfs_mark_request_commit() argument
950 if (pnfs_mark_request_commit(req, lseg, cinfo, ds_commit_idx)) in nfs_mark_request_commit()
985 return hdr->lseg == NULL; in nfs_write_need_commit()
1017 nfs_mark_request_commit(req, hdr->lseg, &cinfo, in nfs_write_completion()
1729 struct pnfs_layout_segment *lseg, in nfs_init_commit() argument
1743 data->lseg = lseg; /* reference transferred */ in nfs_init_commit()
1745 if (lseg) in nfs_init_commit()
1763 struct pnfs_layout_segment *lseg, in nfs_retry_commit() argument
1772 nfs_mark_request_commit(req, lseg, cinfo, ds_commit_idx); in nfs_retry_commit()
Dnfs42.h23 int nfs42_proc_layouterror(struct pnfs_layout_segment *lseg,
Dinternal.h482 struct pnfs_layout_segment *lseg,
490 struct pnfs_layout_segment *lseg,
498 struct pnfs_layout_segment *lseg,
Ddirect.c800 nfs_mark_request_commit(req, hdr->lseg, &cinfo, in nfs_direct_write_completion()
Dnfs4proc.c9249 struct pnfs_layout_segment *lseg = NULL; in nfs4_proc_layoutget() local
9277 lseg = pnfs_layout_process(lgp); in nfs4_proc_layoutget()
9289 return lseg; in nfs4_proc_layoutget()
/fs/nfs/filelayout/
Dfilelayout.c73 filelayout_get_dserver_offset(struct pnfs_layout_segment *lseg, loff_t offset) in filelayout_get_dserver_offset() argument
75 struct nfs4_filelayout_segment *flseg = FILELAYOUT_LSEG(lseg); in filelayout_get_dserver_offset()
125 struct pnfs_layout_segment *lseg) in filelayout_async_handle_error() argument
127 struct pnfs_layout_hdr *lo = lseg->pls_layout; in filelayout_async_handle_error()
129 struct nfs4_deviceid_node *devid = FILELAYOUT_DEVID_NODE(lseg); in filelayout_async_handle_error()
186 pnfs_error_mark_layout_for_return(inode, lseg); in filelayout_async_handle_error()
187 pnfs_set_lo_fail(lseg); in filelayout_async_handle_error()
209 hdr->ds_clp, hdr->lseg); in filelayout_read_done_cb()
233 if (FILELAYOUT_LSEG(hdr->lseg)->commit_through_mds || in filelayout_set_layoutcommit()
240 pnfs_set_layoutcommit(hdr->inode, hdr->lseg, end_offs); in filelayout_set_layoutcommit()
[all …]
Dfilelayout.h82 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,
Dfilelayoutdev.c224 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 …]
/fs/nfs/flexfilelayout/
Dflexfilelayout.h128 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)->flags & FF_FLAGS_NO_IO_THRU_MDS; in ff_layout_no_fallback_to_mds()
[all …]
Dflexfilelayout.c341 struct pnfs_layout_segment *lseg, in ff_layout_add_lseg() argument
344 pnfs_generic_layout_insert_lseg(lo, lseg, in ff_layout_add_lseg()
565 struct pnfs_layout_segment *lseg; in ff_layout_has_rw_segments() local
567 list_for_each_entry(lseg, &layout->plh_segs, pls_list) in ff_layout_has_rw_segments()
568 if (lseg->pls_range.iomode == IOMODE_RW) in ff_layout_has_rw_segments()
575 ff_layout_free_lseg(struct pnfs_layout_segment *lseg) in ff_layout_free_lseg() argument
577 struct nfs4_ff_layout_segment *fls = FF_LAYOUT_LSEG(lseg); in ff_layout_free_lseg()
581 if (lseg->pls_range.iomode == IOMODE_RW) { in ff_layout_free_lseg()
585 ffl = FF_LAYOUT_FROM_HDR(lseg->pls_layout); in ff_layout_free_lseg()
588 if (!ff_layout_has_rw_segments(lseg->pls_layout)) { in ff_layout_free_lseg()
[all …]
Dflexfilelayoutdev.c24 static bool ff_layout_has_available_ds(struct pnfs_layout_segment *lseg);
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()
412 pnfs_error_mark_layout_for_return(ino, lseg); in nfs4_ff_layout_prepare_ds()
[all …]
/fs/nfs/blocklayout/
Dblocklayout.c194 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 = kzalloc(sizeof(*lseg), gfp_mask); in bl_alloc_lseg()
[all …]
Dblocklayout.h153 BLK_LSEG2EXT(struct pnfs_layout_segment *lseg) in BLK_LSEG2EXT() argument
155 return BLK_LO2EXT(lseg->pls_layout); in BLK_LSEG2EXT()