Lines Matching refs:ofs
956 static int logfs_is_valid_direct(struct logfs_inode *li, u64 bix, u64 ofs) in logfs_is_valid_direct() argument
958 return pure_ofs(li->li_data[bix]) == ofs; in logfs_is_valid_direct()
962 u64 ofs, u64 bofs) in __logfs_is_valid_loop() argument
984 if (pure_ofs(bofs) == ofs) in __logfs_is_valid_loop()
990 static int logfs_is_valid_loop(struct inode *inode, u64 bix, u64 ofs) in logfs_is_valid_loop() argument
1001 if (pure_ofs(bofs) == ofs) in logfs_is_valid_loop()
1004 return __logfs_is_valid_loop(inode, bix, ofs, bofs); in logfs_is_valid_loop()
1007 static int __logfs_is_valid_block(struct inode *inode, u64 bix, u64 ofs) in __logfs_is_valid_block() argument
1015 return logfs_is_valid_direct(li, bix, ofs); in __logfs_is_valid_block()
1016 return logfs_is_valid_loop(inode, bix, ofs); in __logfs_is_valid_block()
1031 int logfs_is_valid_block(struct super_block *sb, u64 ofs, u64 ino, u64 bix, in logfs_is_valid_block() argument
1049 ret = __logfs_is_valid_block(inode, bix, ofs); in logfs_is_valid_block()
1058 if (btree_lookup64(&super->s_shadow_tree.old, ofs)) in logfs_is_valid_block()
1213 u64 ofs; member
1349 if (wc->ofs == 0) in logfs_write_i0()
1353 shadow = alloc_shadow(inode, bix, level, wc->ofs); in logfs_write_i0()
1370 wc->ofs = shadow->new_ofs; in logfs_write_i0()
1371 if (wc->ofs && full) in logfs_write_i0()
1372 wc->ofs |= LOGFS_FULLY_POPULATED; in logfs_write_i0()
1381 .ofs = li->li_data[page->index], in logfs_write_direct()
1392 li->li_data[page->index] = wc.ofs; in logfs_write_direct()
1398 static int ptr_change(u64 ofs, struct page *page) in ptr_change() argument
1403 empty0 = ofs == 0; in ptr_change()
1409 full0 = !!(ofs & LOGFS_FULLY_POPULATED); in ptr_change()
1431 if (this_wc->ofs) { in __logfs_write_rec()
1432 ret = logfs_segment_read(inode, ipage, this_wc->ofs, bix, level); in __logfs_write_rec()
1440 child_wc.ofs = block_get_pointer(ipage, child_no); in __logfs_write_rec()
1452 block_set_pointer(ipage, child_no, child_wc.ofs); in __logfs_write_rec()
1454 if (child_wc.ofs || logfs_block(ipage)->partial) in __logfs_write_rec()
1458 if (!this_wc->ofs || ptr_change(this_wc->ofs, ipage)) in __logfs_write_rec()
1472 .ofs = li->li_data[INDIRECT_INDEX], in logfs_write_rec()
1487 if (li->li_data[INDIRECT_INDEX] != wc.ofs) { in logfs_write_rec()
1488 li->li_data[INDIRECT_INDEX] = wc.ofs; in logfs_write_rec()
1532 li->li_data[INDIRECT_INDEX] = wc.ofs; in grow_inode()
1533 wc.ofs = 0; in grow_inode()
1611 int logfs_rewrite_block(struct inode *inode, u64 bix, u64 ofs, in logfs_rewrite_block() argument
1622 err = logfs_segment_read(inode, page, ofs, bix, level); in logfs_rewrite_block()
1645 u64 ofs, struct logfs_shadow *shadow, u64 size) in truncate_data_block() argument
1659 err = logfs_segment_read(inode, page, ofs, bix, level); in truncate_data_block()
1677 shadow = alloc_shadow(inode, bix, level, wc->ofs); in logfs_truncate_i0()
1679 err = truncate_data_block(inode, page, wc->ofs, shadow, size); in logfs_truncate_i0()
1688 wc->ofs = shadow->new_ofs; in logfs_truncate_i0()
1706 wc.ofs = li->li_data[e]; in logfs_truncate_direct()
1707 if (!wc.ofs) in logfs_truncate_direct()
1713 err = logfs_segment_read(inode, page, wc.ofs, e, 0); in logfs_truncate_direct()
1723 li->li_data[e] = wc.ofs; in logfs_truncate_direct()
1776 err = logfs_segment_read(inode, ipage, this_wc->ofs, bix, level); in __logfs_truncate_rec()
1786 child_wc.ofs = pure_ofs(block_get_pointer(ipage, e)); in __logfs_truncate_rec()
1787 if (!child_wc.ofs) in __logfs_truncate_rec()
1804 block_set_pointer(ipage, e, child_wc.ofs); in __logfs_truncate_rec()
1823 .ofs = li->li_data[INDIRECT_INDEX], in logfs_truncate_rec()
1830 if (!wc.ofs) in logfs_truncate_rec()
1842 if (li->li_data[INDIRECT_INDEX] != wc.ofs) in logfs_truncate_rec()
1843 li->li_data[INDIRECT_INDEX] = wc.ofs; in logfs_truncate_rec()
2083 void logfs_set_segment_used(struct super_block *sb, u64 ofs, int increment) in logfs_set_segment_used() argument
2086 u32 segno = ofs >> super->s_segshift; in logfs_set_segment_used()