• Home
  • Raw
  • Download

Lines Matching refs:be

52 static bool is_hole(struct pnfs_block_extent *be)  in is_hole()  argument
54 switch (be->be_state) { in is_hole()
58 return be->be_tag ? false : true; in is_hole()
148 struct pnfs_block_extent *be, bio_end_io_t end_io, in do_add_page_to_bio() argument
152 container_of(be->be_device, struct pnfs_block_dev, node); in do_add_page_to_bio()
159 isect += be->be_v_offset; in do_add_page_to_bio()
160 isect -= be->be_f_offset; in do_add_page_to_bio()
197 struct pnfs_block_extent be; in bl_mark_devices_unavailable() local
203 if (!ext_tree_lookup(bl, isect, &be, rw)) in bl_mark_devices_unavailable()
205 extent_length = be.be_length - (isect - be.be_f_offset); in bl_mark_devices_unavailable()
206 nfs4_mark_deviceid_unavailable(be.be_device); in bl_mark_devices_unavailable()
258 struct pnfs_block_extent be; in bl_read_pagelist() local
289 if (!ext_tree_lookup(bl, isect, &be, false)) { in bl_read_pagelist()
293 extent_length = be.be_length - (isect - be.be_f_offset); in bl_read_pagelist()
306 if (is_hole(&be)) { in bl_read_pagelist()
318 isect, pages[i], &map, &be, in bl_read_pagelist()
403 struct pnfs_block_extent be; in bl_write_pagelist() local
436 if (!ext_tree_lookup(bl, isect, &be, true)) { in bl_write_pagelist()
441 extent_length = be.be_length - (isect - be.be_f_offset); in bl_write_pagelist()
446 WRITE, isect, pages[i], &map, &be, in bl_write_pagelist()
529 static int verify_extent(struct pnfs_block_extent *be, in verify_extent() argument
533 if (be->be_state == PNFS_BLOCK_READWRITE_DATA || in verify_extent()
534 be->be_state == PNFS_BLOCK_INVALID_DATA) in verify_extent()
536 if (be->be_f_offset != lv->start) in verify_extent()
538 lv->start += be->be_length; in verify_extent()
542 if (be->be_state == PNFS_BLOCK_READWRITE_DATA) { in verify_extent()
543 if (be->be_f_offset != lv->start) in verify_extent()
547 lv->start += be->be_length; in verify_extent()
550 } else if (be->be_state == PNFS_BLOCK_INVALID_DATA) { in verify_extent()
551 if (be->be_f_offset != lv->start) in verify_extent()
553 lv->start += be->be_length; in verify_extent()
555 } else if (be->be_state == PNFS_BLOCK_READ_DATA) { in verify_extent()
556 if (be->be_f_offset > lv->start) in verify_extent()
558 if (be->be_f_offset < lv->inval) in verify_extent()
560 if (be->be_f_offset < lv->cowread) in verify_extent()
565 lv->inval = lv->inval + be->be_length; in verify_extent()
566 lv->cowread = be->be_f_offset + be->be_length; in verify_extent()
615 struct pnfs_block_extent *be; in bl_alloc_extent() local
624 be = kzalloc(sizeof(*be), GFP_NOFS); in bl_alloc_extent()
625 if (!be) in bl_alloc_extent()
631 be->be_device = bl_find_get_deviceid(NFS_SERVER(lo->plh_inode), &id, in bl_alloc_extent()
633 if (IS_ERR(be->be_device)) { in bl_alloc_extent()
634 error = PTR_ERR(be->be_device); in bl_alloc_extent()
643 if (decode_sector_number(&p, &be->be_f_offset) < 0) in bl_alloc_extent()
645 if (decode_sector_number(&p, &be->be_length) < 0) in bl_alloc_extent()
647 if (decode_sector_number(&p, &be->be_v_offset) < 0) in bl_alloc_extent()
649 be->be_state = be32_to_cpup(p++); in bl_alloc_extent()
651 error = verify_extent(be, lv); in bl_alloc_extent()
657 list_add_tail(&be->be_list, extents); in bl_alloc_extent()
661 nfs4_put_deviceid_node(be->be_device); in bl_alloc_extent()
663 kfree(be); in bl_alloc_extent()
734 struct pnfs_block_extent *be = in bl_alloc_lseg() local
737 list_del(&be->be_list); in bl_alloc_lseg()
740 status = ext_tree_insert(bl, be); in bl_alloc_lseg()
743 nfs4_put_deviceid_node(be->be_device); in bl_alloc_lseg()
744 kfree(be); in bl_alloc_lseg()