/fs/nfs/ |
D | pnfs.c | 307 init_lseg(struct pnfs_layout_hdr *lo, struct pnfs_layout_segment *lseg) in init_lseg() argument 309 INIT_LIST_HEAD(&lseg->pls_list); in init_lseg() 310 INIT_LIST_HEAD(&lseg->pls_lc_list); in init_lseg() 311 atomic_set(&lseg->pls_refcount, 1); in init_lseg() 313 set_bit(NFS_LSEG_VALID, &lseg->pls_flags); in init_lseg() 314 lseg->pls_layout = lo; in init_lseg() 317 static void pnfs_free_lseg(struct pnfs_layout_segment *lseg) in pnfs_free_lseg() argument 319 struct inode *ino = lseg->pls_layout->plh_inode; in pnfs_free_lseg() 321 NFS_SERVER(ino)->pnfs_curr_ld->free_lseg(lseg); in pnfs_free_lseg() 326 struct pnfs_layout_segment *lseg) in pnfs_layout_remove_lseg() argument [all …]
|
D | nfs4filelayout.c | 71 filelayout_get_dserver_offset(struct pnfs_layout_segment *lseg, loff_t offset) in filelayout_get_dserver_offset() argument 73 struct nfs4_filelayout_segment *flseg = FILELAYOUT_LSEG(lseg); in filelayout_get_dserver_offset() 138 struct pnfs_layout_segment *lseg) in filelayout_async_handle_error() argument 140 struct pnfs_layout_hdr *lo = lseg->pls_layout; in filelayout_async_handle_error() 143 struct nfs4_deviceid_node *devid = FILELAYOUT_DEVID_NODE(lseg); in filelayout_async_handle_error() 251 data->ds_clp, hdr->lseg); in filelayout_read_done_cb() 275 if (FILELAYOUT_LSEG(hdr->lseg)->commit_through_mds || in filelayout_set_layoutcommit() 292 filelayout_reset_to_mds(struct pnfs_layout_segment *lseg) in filelayout_reset_to_mds() argument 294 struct nfs4_deviceid_node *node = FILELAYOUT_DEVID_NODE(lseg); in filelayout_reset_to_mds() 312 if (filelayout_reset_to_mds(rdata->header->lseg)) { in filelayout_read_prepare() [all …]
|
D | nfs4filelayout.h | 109 FILELAYOUT_LSEG(struct pnfs_layout_segment *lseg) in FILELAYOUT_LSEG() argument 111 return container_of(lseg, in FILELAYOUT_LSEG() 117 FILELAYOUT_DEVID_NODE(struct pnfs_layout_segment *lseg) in FILELAYOUT_DEVID_NODE() argument 119 return &FILELAYOUT_LSEG(lseg)->dsaddr->id_node; in FILELAYOUT_DEVID_NODE() 143 nfs4_fl_select_ds_fh(struct pnfs_layout_segment *lseg, u32 j); 146 u32 nfs4_fl_calc_j_index(struct pnfs_layout_segment *lseg, loff_t offset); 147 u32 nfs4_fl_calc_ds_index(struct pnfs_layout_segment *lseg, u32 j); 148 struct nfs4_pnfs_ds *nfs4_fl_prepare_ds(struct pnfs_layout_segment *lseg,
|
D | pnfs.h | 91 void (*free_lseg) (struct pnfs_layout_segment *lseg); 99 struct pnfs_layout_segment *lseg, 179 void pnfs_put_lseg(struct pnfs_layout_segment *lseg); 194 void pnfs_set_lo_fail(struct pnfs_layout_segment *lseg); 272 pnfs_get_lseg(struct pnfs_layout_segment *lseg) in pnfs_get_lseg() argument 274 if (lseg) { in pnfs_get_lseg() 275 atomic_inc(&lseg->pls_refcount); in pnfs_get_lseg() 278 return lseg; in pnfs_get_lseg() 307 pnfs_mark_request_commit(struct nfs_page *req, struct pnfs_layout_segment *lseg, in pnfs_mark_request_commit() argument 313 if (lseg == NULL || ld->mark_request_commit == NULL) in pnfs_mark_request_commit() [all …]
|
D | nfs4filelayoutdev.c | 742 nfs4_fl_calc_j_index(struct pnfs_layout_segment *lseg, loff_t offset) in nfs4_fl_calc_j_index() argument 744 struct nfs4_filelayout_segment *flseg = FILELAYOUT_LSEG(lseg); in nfs4_fl_calc_j_index() 754 nfs4_fl_calc_ds_index(struct pnfs_layout_segment *lseg, u32 j) in nfs4_fl_calc_ds_index() argument 756 return FILELAYOUT_LSEG(lseg)->dsaddr->stripe_indices[j]; in nfs4_fl_calc_ds_index() 760 nfs4_fl_select_ds_fh(struct pnfs_layout_segment *lseg, u32 j) in nfs4_fl_select_ds_fh() argument 762 struct nfs4_filelayout_segment *flseg = FILELAYOUT_LSEG(lseg); in nfs4_fl_select_ds_fh() 772 i = nfs4_fl_calc_ds_index(lseg, j); in nfs4_fl_select_ds_fh() 795 nfs4_fl_prepare_ds(struct pnfs_layout_segment *lseg, u32 ds_idx) in nfs4_fl_prepare_ds() argument 797 struct nfs4_file_layout_dsaddr *dsaddr = FILELAYOUT_LSEG(lseg)->dsaddr; in nfs4_fl_prepare_ds() 799 struct nfs4_deviceid_node *devid = FILELAYOUT_DEVID_NODE(lseg); in nfs4_fl_prepare_ds() [all …]
|
D | write.c | 551 nfs_mark_request_commit(struct nfs_page *req, struct pnfs_layout_segment *lseg, in nfs_mark_request_commit() argument 554 if (pnfs_mark_request_commit(req, lseg, cinfo)) in nfs_mark_request_commit() 587 return data->header->lseg == NULL; in nfs_write_need_commit() 604 nfs_mark_request_commit(struct nfs_page *req, struct pnfs_layout_segment *lseg, in nfs_mark_request_commit() argument 647 nfs_mark_request_commit(req, hdr->lseg, &cinfo); in nfs_write_completion() 1461 struct pnfs_layout_segment *lseg, in nfs_init_commit() argument 1474 data->lseg = lseg; /* reference transferred */ in nfs_init_commit() 1491 struct pnfs_layout_segment *lseg, in nfs_retry_commit() argument 1499 nfs_mark_request_commit(req, lseg, cinfo); in nfs_retry_commit()
|
D | internal.h | 410 struct pnfs_layout_segment *lseg, 417 struct pnfs_layout_segment *lseg, 422 struct pnfs_layout_segment *lseg,
|
D | direct.c | 774 nfs_mark_request_commit(req, hdr->lseg, &cinfo); in nfs_direct_write_completion()
|
D | nfs4proc.c | 6359 struct pnfs_layout_segment *lseg = NULL; in nfs4_proc_layoutget() local 6387 lseg = pnfs_layout_process(lgp); in nfs4_proc_layoutget() 6392 return lseg; in nfs4_proc_layoutget()
|
/fs/nfs/objlayout/ |
D | objio_osd.c | 110 struct pnfs_layout_segment lseg; member 117 OBJIO_LSEG(struct pnfs_layout_segment *lseg) in OBJIO_LSEG() argument 119 return container_of(lseg, struct objio_segment, lseg); in OBJIO_LSEG() 230 struct objio_segment *lseg; in __alloc_objio_seg() local 231 size_t lseg_size = sizeof(*lseg) + in __alloc_objio_seg() 232 numdevs * sizeof(lseg->oc.ods[0]) + in __alloc_objio_seg() 233 numdevs * sizeof(*lseg->oc.comps); in __alloc_objio_seg() 235 lseg = kzalloc(lseg_size, gfp_flags); in __alloc_objio_seg() 236 if (unlikely(!lseg)) { in __alloc_objio_seg() 242 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);
|
/fs/nfs/blocklayout/ |
D | blocklayout.c | 221 pnfs_set_lo_fail(header->lseg); in bl_end_io_read() 281 be = bl_find_get_extent(BLK_LSEG2EXT(header->lseg), in bl_read_pagelist() 405 pnfs_set_lo_fail(header->lseg); in bl_end_io_write_zero() 421 pnfs_set_lo_fail(header->lseg); in bl_end_io_write() 439 mark_extents_written(BLK_LSEG2EXT(wdata->header->lseg), in bl_write_cleanup() 451 bl_free_short_extents(&BLK_LSEG2EXT(wdata->header->lseg)->bl_inval, in bl_end_par_io_write() 720 be = bl_find_get_extent(BLK_LSEG2EXT(header->lseg), isect, &cow_read); in bl_write_pagelist() 778 mark_extents_written(BLK_LSEG2EXT(header->lseg), in bl_write_pagelist() 808 be = bl_find_get_extent(BLK_LSEG2EXT(header->lseg), in bl_write_pagelist() 982 static void bl_free_lseg(struct pnfs_layout_segment *lseg) in bl_free_lseg() argument [all …]
|
D | blocklayout.h | 152 BLK_LSEG2EXT(struct pnfs_layout_segment *lseg) in BLK_LSEG2EXT() argument 154 return BLK_LO2EXT(lseg->pls_layout); in BLK_LSEG2EXT()
|