/linux-4.4.14/fs/nfs/flexfilelayout/ |
D | flexfilelayout.h | 112 FF_LAYOUT_LSEG(struct pnfs_layout_segment *lseg) in FF_LAYOUT_LSEG() argument 114 return container_of(lseg, in FF_LAYOUT_LSEG() 120 FF_LAYOUT_DEVID_NODE(struct pnfs_layout_segment *lseg, u32 idx) in FF_LAYOUT_DEVID_NODE() argument 122 if (idx >= FF_LAYOUT_LSEG(lseg)->mirror_array_cnt || in FF_LAYOUT_DEVID_NODE() 123 FF_LAYOUT_LSEG(lseg)->mirror_array[idx] == NULL || in FF_LAYOUT_DEVID_NODE() 124 FF_LAYOUT_LSEG(lseg)->mirror_array[idx]->mirror_ds == NULL) in FF_LAYOUT_DEVID_NODE() 126 return &FF_LAYOUT_LSEG(lseg)->mirror_array[idx]->mirror_ds->id_node; in FF_LAYOUT_DEVID_NODE() 136 FF_LAYOUT_COMP(struct pnfs_layout_segment *lseg, u32 idx) in FF_LAYOUT_COMP() argument 138 if (idx >= FF_LAYOUT_LSEG(lseg)->mirror_array_cnt) in FF_LAYOUT_COMP() 140 return FF_LAYOUT_LSEG(lseg)->mirror_array[idx]; in FF_LAYOUT_COMP() [all …]
|
D | flexfilelayoutdev.c | 175 static void ff_layout_mark_devid_invalid(struct pnfs_layout_segment *lseg, in ff_layout_mark_devid_invalid() argument 179 if (!ff_layout_has_available_ds(lseg)) in ff_layout_mark_devid_invalid() 180 pnfs_error_mark_layout_for_return(lseg->pls_layout->plh_inode, in ff_layout_mark_devid_invalid() 181 lseg); in ff_layout_mark_devid_invalid() 184 static bool ff_layout_mirror_valid(struct pnfs_layout_segment *lseg, in ff_layout_mirror_valid() argument 188 pnfs_error_mark_layout_for_return(lseg->pls_layout->plh_inode, in ff_layout_mirror_valid() 189 lseg); in ff_layout_mirror_valid() 195 ff_layout_mark_devid_invalid(lseg, devid); in ff_layout_mirror_valid() 361 nfs4_ff_layout_select_ds_fh(struct pnfs_layout_segment *lseg, u32 mirror_idx) in nfs4_ff_layout_select_ds_fh() argument 363 struct nfs4_ff_layout_mirror *mirror = FF_LAYOUT_COMP(lseg, mirror_idx); in nfs4_ff_layout_select_ds_fh() [all …]
|
D | flexfilelayout.c | 320 struct pnfs_layout_segment *lseg, in ff_layout_add_lseg() argument 323 pnfs_generic_layout_insert_lseg(lo, lseg, in ff_layout_add_lseg() 531 struct pnfs_layout_segment *lseg; in ff_layout_has_rw_segments() local 533 list_for_each_entry(lseg, &layout->plh_segs, pls_list) in ff_layout_has_rw_segments() 534 if (lseg->pls_range.iomode == IOMODE_RW) in ff_layout_has_rw_segments() 541 ff_layout_free_lseg(struct pnfs_layout_segment *lseg) in ff_layout_free_lseg() argument 543 struct nfs4_ff_layout_segment *fls = FF_LAYOUT_LSEG(lseg); in ff_layout_free_lseg() 547 if (lseg->pls_range.iomode == IOMODE_RW) { in ff_layout_free_lseg() 551 ffl = FF_LAYOUT_FROM_HDR(lseg->pls_layout); in ff_layout_free_lseg() 554 if (!ff_layout_has_rw_segments(lseg->pls_layout)) { in ff_layout_free_lseg() [all …]
|
/linux-4.4.14/fs/nfs/ |
D | pnfs.c | 316 init_lseg(struct pnfs_layout_hdr *lo, struct pnfs_layout_segment *lseg) in init_lseg() argument 318 INIT_LIST_HEAD(&lseg->pls_list); in init_lseg() 319 INIT_LIST_HEAD(&lseg->pls_lc_list); in init_lseg() 320 atomic_set(&lseg->pls_refcount, 1); in init_lseg() 322 set_bit(NFS_LSEG_VALID, &lseg->pls_flags); in init_lseg() 323 lseg->pls_layout = lo; in init_lseg() 326 static void pnfs_free_lseg(struct pnfs_layout_segment *lseg) in pnfs_free_lseg() argument 328 struct inode *ino = lseg->pls_layout->plh_inode; in pnfs_free_lseg() 330 NFS_SERVER(ino)->pnfs_curr_ld->free_lseg(lseg); in pnfs_free_lseg() 335 struct pnfs_layout_segment *lseg) in pnfs_layout_remove_lseg() argument [all …]
|
D | pnfs.h | 130 void (*free_lseg) (struct pnfs_layout_segment *lseg); 132 struct pnfs_layout_segment *lseg, 144 struct pnfs_layout_segment *lseg, 235 void pnfs_put_lseg(struct pnfs_layout_segment *lseg); 236 void pnfs_put_lseg_locked(struct pnfs_layout_segment *lseg); 248 void pnfs_set_lo_fail(struct pnfs_layout_segment *lseg); 293 struct pnfs_layout_segment *lseg, 296 bool (*do_merge)(struct pnfs_layout_segment *lseg, 305 struct pnfs_layout_segment *lseg); 366 struct pnfs_layout_segment *lseg, [all …]
|
D | pnfs_nfs.c | 56 pnfs_put_lseg(data->lseg); in pnfs_generic_commit_release() 243 data->lseg = bucket->clseg; in pnfs_fetch_commit_bucket_list() 294 nfs_init_commit(data, &pages, data->lseg, cinfo); in pnfs_generic_commit_pagelist() 863 struct pnfs_layout_segment *lseg, in pnfs_layout_mark_request_commit() argument 881 buckets[ds_commit_idx].wlseg = pnfs_get_lseg(lseg); in pnfs_layout_mark_request_commit()
|
D | write.c | 863 nfs_mark_request_commit(struct nfs_page *req, struct pnfs_layout_segment *lseg, in nfs_mark_request_commit() argument 866 if (pnfs_mark_request_commit(req, lseg, cinfo, ds_commit_idx)) in nfs_mark_request_commit() 898 return hdr->lseg == NULL; in nfs_write_need_commit() 923 nfs_mark_request_commit(req, hdr->lseg, &cinfo, in nfs_write_completion() 1619 struct pnfs_layout_segment *lseg, in nfs_init_commit() argument 1632 data->lseg = lseg; /* reference transferred */ in nfs_init_commit() 1634 if (lseg) in nfs_init_commit() 1652 struct pnfs_layout_segment *lseg, in nfs_retry_commit() argument 1661 nfs_mark_request_commit(req, lseg, cinfo, ds_commit_idx); in nfs_retry_commit()
|
D | internal.h | 466 struct pnfs_layout_segment *lseg, 474 struct pnfs_layout_segment *lseg, 482 struct pnfs_layout_segment *lseg,
|
D | direct.c | 819 nfs_mark_request_commit(req, hdr->lseg, &cinfo, in nfs_direct_write_completion()
|
D | nfs4proc.c | 7968 struct pnfs_layout_segment *lseg = NULL; in nfs4_proc_layoutget() local 8000 lseg = pnfs_layout_process(lgp); in nfs4_proc_layoutget() 8005 return lseg; in nfs4_proc_layoutget()
|
/linux-4.4.14/fs/nfs/filelayout/ |
D | filelayout.h | 81 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,
|
D | filelayout.c | 73 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() 130 struct nfs4_deviceid_node *devid = FILELAYOUT_DEVID_NODE(lseg); in filelayout_async_handle_error() 204 pnfs_error_mark_layout_for_return(inode, lseg); in filelayout_async_handle_error() 235 hdr->ds_clp, hdr->lseg); in filelayout_read_done_cb() 258 if (FILELAYOUT_LSEG(hdr->lseg)->commit_through_mds || in filelayout_set_layoutcommit() 262 pnfs_set_layoutcommit(hdr->inode, hdr->lseg, in filelayout_set_layoutcommit() 276 filelayout_reset_to_mds(struct pnfs_layout_segment *lseg) in filelayout_reset_to_mds() argument [all …]
|
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 …]
|
/linux-4.4.14/fs/nfs/objlayout/ |
D | objio_osd.c | 64 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 …]
|
D | objlayout.c | 95 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 …]
|
D | objlayout.h | 115 extern void objio_free_lseg(struct pnfs_layout_segment *lseg);
|
/linux-4.4.14/Documentation/filesystems/nfs/ |
D | pnfs.txt | 14 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.4.14/fs/nfs/blocklayout/ |
D | blocklayout.c | 194 pnfs_set_lo_fail(header->lseg); in bl_end_io_read() 224 struct pnfs_block_layout *bl = BLK_LSEG2EXT(header->lseg); in bl_read_pagelist() 323 pnfs_set_lo_fail(header->lseg); in bl_end_io_write() 341 struct pnfs_block_layout *bl = BLK_LSEG2EXT(hdr->lseg); in bl_write_cleanup() 367 struct pnfs_block_layout *bl = BLK_LSEG2EXT(header->lseg); in bl_write_pagelist() 466 static void bl_free_lseg(struct pnfs_layout_segment *lseg) in bl_free_lseg() argument 469 kfree(lseg); in bl_free_lseg() 605 struct pnfs_layout_segment *lseg; in bl_alloc_lseg() local 616 lseg = kzalloc(sizeof(*lseg), gfp_mask); in bl_alloc_lseg() 617 if (!lseg) in bl_alloc_lseg() [all …]
|
D | blocklayout.h | 143 BLK_LSEG2EXT(struct pnfs_layout_segment *lseg) in BLK_LSEG2EXT() argument 145 return BLK_LO2EXT(lseg->pls_layout); in BLK_LSEG2EXT()
|
/linux-4.4.14/arch/x86/kernel/ |
D | module.c | 235 void *lseg = (void *)locks->sh_addr; in module_finalize() local 238 lseg, lseg + locks->sh_size, in module_finalize()
|
/linux-4.4.14/include/linux/ |
D | nfs_xdr.h | 1386 struct pnfs_layout_segment *lseg; member 1450 struct pnfs_layout_segment *lseg; member
|