Home
last modified time | relevance | path

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

/linux-4.1.27/fs/nfs/flexfilelayout/
Dflexfilelayout.h79 FF_LAYOUT_LSEG(struct pnfs_layout_segment *lseg) in FF_LAYOUT_LSEG() argument
81 return container_of(lseg, in FF_LAYOUT_LSEG()
87 FF_LAYOUT_DEVID_NODE(struct pnfs_layout_segment *lseg, u32 idx) in FF_LAYOUT_DEVID_NODE() argument
89 if (idx >= FF_LAYOUT_LSEG(lseg)->mirror_array_cnt || in FF_LAYOUT_DEVID_NODE()
90 FF_LAYOUT_LSEG(lseg)->mirror_array[idx] == NULL || in FF_LAYOUT_DEVID_NODE()
91 FF_LAYOUT_LSEG(lseg)->mirror_array[idx]->mirror_ds == NULL) in FF_LAYOUT_DEVID_NODE()
93 return &FF_LAYOUT_LSEG(lseg)->mirror_array[idx]->mirror_ds->id_node; in FF_LAYOUT_DEVID_NODE()
103 FF_LAYOUT_COMP(struct pnfs_layout_segment *lseg, u32 idx) in FF_LAYOUT_COMP() argument
105 if (idx >= FF_LAYOUT_LSEG(lseg)->mirror_array_cnt) in FF_LAYOUT_COMP()
107 return FF_LAYOUT_LSEG(lseg)->mirror_array[idx]; in FF_LAYOUT_COMP()
[all …]
Dflexfilelayout.c366 struct pnfs_layout_segment *lseg; in ff_layout_has_rw_segments() local
368 list_for_each_entry(lseg, &layout->plh_segs, pls_list) in ff_layout_has_rw_segments()
369 if (lseg->pls_range.iomode == IOMODE_RW) in ff_layout_has_rw_segments()
376 ff_layout_free_lseg(struct pnfs_layout_segment *lseg) in ff_layout_free_lseg() argument
378 struct nfs4_ff_layout_segment *fls = FF_LAYOUT_LSEG(lseg); in ff_layout_free_lseg()
394 if (lseg->pls_range.iomode == IOMODE_RW) { in ff_layout_free_lseg()
398 ffl = FF_LAYOUT_FROM_HDR(lseg->pls_layout); in ff_layout_free_lseg()
401 if (!ff_layout_has_rw_segments(lseg->pls_layout)) { in ff_layout_free_lseg()
419 ff_layout_alloc_commit_info(struct pnfs_layout_segment *lseg, in ff_layout_alloc_commit_info() argument
423 struct nfs4_ff_layout_segment *fls = FF_LAYOUT_LSEG(lseg); in ff_layout_alloc_commit_info()
[all …]
Dflexfilelayoutdev.c335 nfs4_ff_layout_select_ds_fh(struct pnfs_layout_segment *lseg, u32 mirror_idx) in nfs4_ff_layout_select_ds_fh() argument
337 struct nfs4_ff_layout_mirror *mirror = FF_LAYOUT_COMP(lseg, mirror_idx); in nfs4_ff_layout_select_ds_fh()
360 nfs4_ff_layout_prepare_ds(struct pnfs_layout_segment *lseg, u32 ds_idx, in nfs4_ff_layout_prepare_ds() argument
363 struct nfs4_ff_layout_mirror *mirror = FF_LAYOUT_COMP(lseg, ds_idx); in nfs4_ff_layout_prepare_ds()
366 struct inode *ino = lseg->pls_layout->plh_inode; in nfs4_ff_layout_prepare_ds()
413 ff_layout_track_ds_error(FF_LAYOUT_FROM_HDR(lseg->pls_layout), in nfs4_ff_layout_prepare_ds()
414 mirror, lseg->pls_range.offset, in nfs4_ff_layout_prepare_ds()
415 lseg->pls_range.length, NFS4ERR_NXIO, in nfs4_ff_layout_prepare_ds()
418 pnfs_error_mark_layout_for_return(ino, lseg); in nfs4_ff_layout_prepare_ds()
419 if (ff_layout_has_available_ds(lseg)) in nfs4_ff_layout_prepare_ds()
[all …]
/linux-4.1.27/fs/nfs/
Dpnfs.c315 init_lseg(struct pnfs_layout_hdr *lo, struct pnfs_layout_segment *lseg) in init_lseg() argument
317 INIT_LIST_HEAD(&lseg->pls_list); in init_lseg()
318 INIT_LIST_HEAD(&lseg->pls_lc_list); in init_lseg()
319 atomic_set(&lseg->pls_refcount, 1); in init_lseg()
321 set_bit(NFS_LSEG_VALID, &lseg->pls_flags); in init_lseg()
322 lseg->pls_layout = lo; in init_lseg()
325 static void pnfs_free_lseg(struct pnfs_layout_segment *lseg) in pnfs_free_lseg() argument
327 struct inode *ino = lseg->pls_layout->plh_inode; in pnfs_free_lseg()
329 NFS_SERVER(ino)->pnfs_curr_ld->free_lseg(lseg); in pnfs_free_lseg()
334 struct pnfs_layout_segment *lseg) in pnfs_layout_remove_lseg() argument
[all …]
Dpnfs.h131 void (*free_lseg) (struct pnfs_layout_segment *lseg);
142 struct pnfs_layout_segment *lseg,
231 void pnfs_put_lseg(struct pnfs_layout_segment *lseg);
232 void pnfs_put_lseg_locked(struct pnfs_layout_segment *lseg);
244 void pnfs_set_lo_fail(struct pnfs_layout_segment *lseg);
292 struct pnfs_layout_segment *lseg);
354 struct pnfs_layout_segment *lseg,
391 pnfs_get_lseg(struct pnfs_layout_segment *lseg) in pnfs_get_lseg() argument
393 if (lseg) { in pnfs_get_lseg()
394 atomic_inc(&lseg->pls_refcount); in pnfs_get_lseg()
[all …]
Dpnfs_nfs.c56 pnfs_put_lseg(data->lseg); in pnfs_generic_commit_release()
220 data->lseg = bucket->clseg; in pnfs_generic_alloc_ds_commits()
246 data->lseg = NULL; in pnfs_generic_commit_pagelist()
268 if (!data->lseg) { in pnfs_generic_commit_pagelist()
279 data->lseg, in pnfs_generic_commit_pagelist()
849 struct pnfs_layout_segment *lseg, in pnfs_layout_mark_request_commit() argument
867 buckets[ds_commit_idx].wlseg = pnfs_get_lseg(lseg); in pnfs_layout_mark_request_commit()
Dwrite.c844 nfs_mark_request_commit(struct nfs_page *req, struct pnfs_layout_segment *lseg, in nfs_mark_request_commit() argument
847 if (pnfs_mark_request_commit(req, lseg, cinfo, ds_commit_idx)) in nfs_mark_request_commit()
878 return hdr->lseg == NULL; in nfs_write_need_commit()
903 nfs_mark_request_commit(req, hdr->lseg, &cinfo, in nfs_write_completion()
1597 struct pnfs_layout_segment *lseg, in nfs_init_commit() argument
1610 data->lseg = lseg; /* reference transferred */ in nfs_init_commit()
1612 if (lseg) in nfs_init_commit()
1630 struct pnfs_layout_segment *lseg, in nfs_retry_commit() argument
1639 nfs_mark_request_commit(req, lseg, cinfo, ds_commit_idx); in nfs_retry_commit()
Dinternal.h450 struct pnfs_layout_segment *lseg,
458 struct pnfs_layout_segment *lseg,
466 struct pnfs_layout_segment *lseg,
Ddirect.c816 nfs_mark_request_commit(req, hdr->lseg, &cinfo, in nfs_direct_write_completion()
Dnfs4proc.c7810 struct pnfs_layout_segment *lseg = NULL; in nfs4_proc_layoutget() local
7842 lseg = pnfs_layout_process(lgp); in nfs4_proc_layoutget()
7847 return lseg; in nfs4_proc_layoutget()
/linux-4.1.27/fs/nfs/filelayout/
Dfilelayout.h81 FILELAYOUT_LSEG(struct pnfs_layout_segment *lseg) in FILELAYOUT_LSEG() argument
83 return container_of(lseg, in FILELAYOUT_LSEG()
89 FILELAYOUT_DEVID_NODE(struct pnfs_layout_segment *lseg) in FILELAYOUT_DEVID_NODE() argument
91 return &FILELAYOUT_LSEG(lseg)->dsaddr->id_node; in FILELAYOUT_DEVID_NODE()
104 nfs4_fl_select_ds_fh(struct pnfs_layout_segment *lseg, u32 j);
106 u32 nfs4_fl_calc_j_index(struct pnfs_layout_segment *lseg, loff_t offset);
107 u32 nfs4_fl_calc_ds_index(struct pnfs_layout_segment *lseg, u32 j);
108 struct nfs4_pnfs_ds *nfs4_fl_prepare_ds(struct pnfs_layout_segment *lseg,
Dfilelayout.c72 filelayout_get_dserver_offset(struct pnfs_layout_segment *lseg, loff_t offset) in filelayout_get_dserver_offset() argument
74 struct nfs4_filelayout_segment *flseg = FILELAYOUT_LSEG(lseg); in filelayout_get_dserver_offset()
124 struct pnfs_layout_segment *lseg) in filelayout_async_handle_error() argument
126 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()
203 pnfs_error_mark_layout_for_return(inode, lseg); in filelayout_async_handle_error()
234 hdr->ds_clp, hdr->lseg); in filelayout_read_done_cb()
257 if (FILELAYOUT_LSEG(hdr->lseg)->commit_through_mds || in filelayout_set_layoutcommit()
261 pnfs_set_layoutcommit(hdr->inode, hdr->lseg, in filelayout_set_layoutcommit()
275 filelayout_reset_to_mds(struct pnfs_layout_segment *lseg) in filelayout_reset_to_mds() argument
[all …]
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 …]
/linux-4.1.27/fs/nfs/objlayout/
Dobjio_osd.c64 struct pnfs_layout_segment lseg; member
71 OBJIO_LSEG(struct pnfs_layout_segment *lseg) in OBJIO_LSEG() argument
73 return container_of(lseg, struct objio_segment, lseg); in OBJIO_LSEG()
189 struct objio_segment *lseg; in __alloc_objio_seg() local
190 size_t lseg_size = sizeof(*lseg) + in __alloc_objio_seg()
191 numdevs * sizeof(lseg->oc.ods[0]) + in __alloc_objio_seg()
192 numdevs * sizeof(*lseg->oc.comps); in __alloc_objio_seg()
194 lseg = kzalloc(lseg_size, gfp_flags); in __alloc_objio_seg()
195 if (unlikely(!lseg)) { in __alloc_objio_seg()
201 lseg->oc.numdevs = numdevs; in __alloc_objio_seg()
[all …]
Dobjlayout.c95 struct pnfs_layout_segment *lseg; in objlayout_alloc_lseg() local
106 status = objio_alloc_lseg(&lseg, pnfslay, &lgr->range, &stream, gfp_flags); in objlayout_alloc_lseg()
115 dprintk("%s: Return %p\n", __func__, lseg); in objlayout_alloc_lseg()
116 return lseg; in objlayout_alloc_lseg()
129 objlayout_free_lseg(struct pnfs_layout_segment *lseg) in objlayout_free_lseg() argument
131 dprintk("%s: freeing layout segment %p\n", __func__, lseg); in objlayout_free_lseg()
133 if (unlikely(!lseg)) in objlayout_free_lseg()
136 objio_free_lseg(lseg); in objlayout_free_lseg()
151 static void _fix_verify_io_params(struct pnfs_layout_segment *lseg, in _fix_verify_io_params() argument
157 BUG_ON(offset < lseg->pls_range.offset); in _fix_verify_io_params()
[all …]
Dobjlayout.h115 extern void objio_free_lseg(struct pnfs_layout_segment *lseg);
/linux-4.1.27/Documentation/filesystems/nfs/
Dpnfs.txt14 pnfs_layout_segment, usually referred to by the variable name lseg.
20 LAYOUTCOMMIT), and for each lseg held within.
24 the reference count, as the layout is kept around by the lseg that
33 the lifetime of each lseg referencing them.
50 lseg
52 lseg maintains an extra reference corresponding to the NFS_LSEG_VALID
53 bit which holds it in the pnfs_layout_hdr's list. When the final lseg
/linux-4.1.27/fs/nfs/blocklayout/
Dblocklayout.c195 pnfs_set_lo_fail(header->lseg); in bl_end_io_read()
225 struct pnfs_block_layout *bl = BLK_LSEG2EXT(header->lseg); in bl_read_pagelist()
328 pnfs_set_lo_fail(header->lseg); in bl_end_io_write()
346 struct pnfs_block_layout *bl = BLK_LSEG2EXT(hdr->lseg); in bl_write_cleanup()
372 struct pnfs_block_layout *bl = BLK_LSEG2EXT(header->lseg); in bl_write_pagelist()
471 static void bl_free_lseg(struct pnfs_layout_segment *lseg) in bl_free_lseg() argument
474 kfree(lseg); in bl_free_lseg()
610 struct pnfs_layout_segment *lseg; in bl_alloc_lseg() local
621 lseg = kzalloc(sizeof(*lseg), gfp_mask); in bl_alloc_lseg()
622 if (!lseg) in bl_alloc_lseg()
[all …]
Dblocklayout.h160 BLK_LSEG2EXT(struct pnfs_layout_segment *lseg) in BLK_LSEG2EXT() argument
162 return BLK_LO2EXT(lseg->pls_layout); in BLK_LSEG2EXT()
/linux-4.1.27/arch/x86/kernel/
Dmodule.c235 void *lseg = (void *)locks->sh_addr; in module_finalize() local
238 lseg, lseg + locks->sh_size, in module_finalize()
/linux-4.1.27/include/linux/
Dnfs_xdr.h1328 struct pnfs_layout_segment *lseg; member
1392 struct pnfs_layout_segment *lseg; member