Lines Matching refs:roc
2766 struct xfs_rmap_ownercount *roc,
2772 memset(roc, 0, sizeof(*roc));
2773 roc->results = results;
2775 roc->low.rm_startblock = bno;
2776 memset(&roc->high, 0xFF, sizeof(roc->high));
2777 roc->high.rm_startblock = bno + len - 1;
2780 roc->good.rm_startblock = bno;
2781 roc->good.rm_blockcount = len;
2782 roc->good.rm_owner = oinfo->oi_owner;
2783 roc->good.rm_offset = oinfo->oi_offset;
2785 roc->good.rm_flags |= XFS_RMAP_ATTR_FORK;
2787 roc->good.rm_flags |= XFS_RMAP_BMBT_BLOCK;
2797 struct xfs_rmap_ownercount *roc = priv;
2807 delta = (int64_t)roc->good.rm_startblock - check.rm_startblock;
2817 (roc->good.rm_startblock + roc->good.rm_blockcount);
2824 if (check.rm_startblock == roc->good.rm_startblock &&
2825 check.rm_blockcount == roc->good.rm_blockcount &&
2826 check.rm_owner == roc->good.rm_owner &&
2827 check.rm_offset == roc->good.rm_offset &&
2828 keyflags == roc->good.rm_flags) {
2829 roc->results->matches++;
2831 roc->results->non_owner_matches++;
2832 if (xfs_rmap_shareable(cur->bc_mp, &roc->good) ^
2834 roc->results->bad_non_owner_matches++;
2837 if (roc->results->non_owner_matches && roc->stop_on_nonmatch)
2852 struct xfs_rmap_ownercount roc;
2855 xfs_rmap_ownercount_init(&roc, bno, len, oinfo, results);
2856 error = xfs_rmap_query_range(cur, &roc.low, &roc.high,
2857 xfs_rmap_count_owners_helper, &roc);
2884 struct xfs_rmap_ownercount roc;
2887 xfs_rmap_ownercount_init(&roc, bno, len, oinfo, &res);
2888 roc.stop_on_nonmatch = true;
2890 error = xfs_rmap_query_range(cur, &roc.low, &roc.high,
2891 xfs_rmap_count_owners_helper, &roc);