Lines Matching refs:refchk
114 struct xchk_refcnt_check *refchk = priv; in xchk_refcountbt_rmap_check() local
120 if (xchk_should_terminate(refchk->sc, &error)) in xchk_refcountbt_rmap_check()
124 rc_last = refchk->bno + refchk->len - 1; in xchk_refcountbt_rmap_check()
127 if (refchk->refcount == 1 && rec->rm_owner != XFS_RMAP_OWN_COW) { in xchk_refcountbt_rmap_check()
128 xchk_btree_xref_set_corrupt(refchk->sc, cur, 0); in xchk_refcountbt_rmap_check()
132 if (rec->rm_startblock <= refchk->bno && rm_last >= rc_last) { in xchk_refcountbt_rmap_check()
137 refchk->seen++; in xchk_refcountbt_rmap_check()
150 list_add_tail(&frag->list, &refchk->fragments); in xchk_refcountbt_rmap_check()
165 struct xchk_refcnt_check *refchk) in xchk_refcountbt_process_rmap_fragments() argument
176 target_nr = refchk->refcount - refchk->seen; in xchk_refcountbt_process_rmap_fragments()
193 list_for_each_entry(frag, &refchk->fragments, list) { in xchk_refcountbt_process_rmap_fragments()
204 list_for_each_entry_safe(frag, n, &refchk->fragments, list) { in xchk_refcountbt_process_rmap_fragments()
205 if (frag->rm.rm_startblock > refchk->bno || nr > target_nr) in xchk_refcountbt_process_rmap_fragments()
221 while (!list_empty(&refchk->fragments)) { in xchk_refcountbt_process_rmap_fragments()
238 list_for_each_entry_safe(frag, n, &refchk->fragments, list) { in xchk_refcountbt_process_rmap_fragments()
266 if (rbno < refchk->bno + refchk->len) in xchk_refcountbt_process_rmap_fragments()
270 refchk->seen = refchk->refcount; in xchk_refcountbt_process_rmap_fragments()
277 list_for_each_entry_safe(frag, n, &refchk->fragments, list) { in xchk_refcountbt_process_rmap_fragments()
289 struct xchk_refcnt_check refchk = { in xchk_refcountbt_xref_rmap() local
311 INIT_LIST_HEAD(&refchk.fragments); in xchk_refcountbt_xref_rmap()
313 &xchk_refcountbt_rmap_check, &refchk); in xchk_refcountbt_xref_rmap()
317 xchk_refcountbt_process_rmap_fragments(&refchk); in xchk_refcountbt_xref_rmap()
318 if (irec->rc_refcount != refchk.seen) { in xchk_refcountbt_xref_rmap()
319 trace_xchk_refcount_incorrect(sc->sa.pag, irec, refchk.seen); in xchk_refcountbt_xref_rmap()
324 list_for_each_entry_safe(frag, n, &refchk.fragments, list) { in xchk_refcountbt_xref_rmap()