/linux-6.12.1/fs/xfs/scrub/ |
D | iscan.c | 60 struct xchk_iscan *iscan, in xchk_iscan_mask_skipino() argument 65 struct xfs_scrub *sc = iscan->sc; in xchk_iscan_mask_skipino() 67 xfs_agnumber_t skip_agno = XFS_INO_TO_AGNO(mp, iscan->skip_ino); in xchk_iscan_mask_skipino() 68 xfs_agnumber_t skip_agino = XFS_INO_TO_AGINO(mp, iscan->skip_ino); in xchk_iscan_mask_skipino() 86 struct xchk_iscan *iscan, in xchk_iscan_find_next() argument 93 struct xfs_scrub *sc = iscan->sc; in xchk_iscan_find_next() 156 if (iscan->skip_ino) in xchk_iscan_find_next() 157 xchk_iscan_mask_skipino(iscan, pag, &rec, lastino); in xchk_iscan_find_next() 200 struct xchk_iscan *iscan, in xchk_iscan_move_cursor() argument 204 struct xfs_scrub *sc = iscan->sc; in xchk_iscan_move_cursor() [all …]
|
D | iscan.h | 66 xchk_iscan_aborted(const struct xchk_iscan *iscan) in xchk_iscan_aborted() argument 68 return test_bit(XCHK_ISCAN_OPSTATE_ABORTED, &iscan->__opstate); in xchk_iscan_aborted() 72 xchk_iscan_abort(struct xchk_iscan *iscan) in xchk_iscan_abort() argument 74 set_bit(XCHK_ISCAN_OPSTATE_ABORTED, &iscan->__opstate); in xchk_iscan_abort() 78 xchk_iscan_agi_needs_trylock(const struct xchk_iscan *iscan) in xchk_iscan_agi_needs_trylock() argument 80 return test_bit(XCHK_ISCAN_OPSTATE_TRYLOCK_AGI, &iscan->__opstate); in xchk_iscan_agi_needs_trylock() 84 xchk_iscan_set_agi_trylock(struct xchk_iscan *iscan) in xchk_iscan_set_agi_trylock() argument 86 set_bit(XCHK_ISCAN_OPSTATE_TRYLOCK_AGI, &iscan->__opstate); in xchk_iscan_set_agi_trylock() 90 unsigned int iget_retry_delay, struct xchk_iscan *iscan); 91 void xchk_iscan_finish_early(struct xchk_iscan *iscan); [all …]
|
D | quotacheck.c | 251 if (!xchk_iscan_want_live_update(&xqc->iscan, p->ino)) in xqcheck_mod_live_ino_dqtrx() 303 xchk_iscan_abort(&xqc->iscan); in xqcheck_mod_live_ino_dqtrx() 342 if (xchk_iscan_aborted(&xqc->iscan) || counts == NULL) in xqcheck_apply_live_dqtrx() 382 xchk_iscan_abort(&xqc->iscan); in xqcheck_apply_live_dqtrx() 406 xchk_iscan_mark_visited(&xqc->iscan, ip); in xqcheck_collect_inode() 430 if (xchk_iscan_aborted(&xqc->iscan)) { in xqcheck_collect_inode() 462 xchk_iscan_mark_visited(&xqc->iscan, ip); in xqcheck_collect_inode() 468 xchk_iscan_abort(&xqc->iscan); in xqcheck_collect_inode() 509 while ((error = xchk_iscan_iter(&xqc->iscan, &ip)) == 1) { in xqcheck_collect_counts() 518 xchk_iscan_iter_finish(&xqc->iscan); in xqcheck_collect_counts() [all …]
|
D | findparent.c | 227 xchk_iscan_want_live_update(&pscan->iscan, p->dp->i_ino)) { in xrep_findparent_live_update() 260 xchk_iscan_start(sc, 30000, 100, &pscan->iscan); in __xrep_findparent_scan_start() 278 xchk_iscan_teardown(&pscan->iscan); in __xrep_findparent_scan_start() 307 while ((ret = xchk_iscan_iter(&pscan->iscan, &fpi.dp)) == 1) { in xrep_findparent_scan() 312 xchk_iscan_mark_visited(&pscan->iscan, fpi.dp); in xrep_findparent_scan() 320 xchk_iscan_iter_finish(&pscan->iscan); in xrep_findparent_scan() 331 xchk_iscan_teardown(&pscan->iscan); in xrep_findparent_scan_teardown() 342 xchk_iscan_finish_early(&pscan->iscan); in xrep_findparent_scan_finish_early()
|
D | rmap_repair.c | 146 struct xchk_iscan iscan; member 231 if (xchk_iscan_aborted(&rr->iscan)) in xrep_rmap_stash() 253 xchk_iscan_abort(&rr->iscan); in xrep_rmap_stash() 588 xchk_iscan_mark_visited(&rr->iscan, ip); in xrep_rmap_scan_inode() 890 while ((error = xchk_iscan_iter(&rr->iscan, &ip)) == 1) { in xrep_rmap_find_rmaps() 899 xchk_iscan_iter_finish(&rr->iscan); in xrep_rmap_find_rmaps() 919 if (xchk_iscan_aborted(&rr->iscan)) in xrep_rmap_find_rmaps() 1355 xchk_iscan_abort(&rr->iscan); in xrep_rmap_build_new_tree() 1505 struct xchk_iscan *iscan, in xrep_rmapbt_want_live_update() argument 1508 if (xchk_iscan_aborted(iscan)) in xrep_rmapbt_want_live_update() [all …]
|
D | trace.h | 1274 TP_PROTO(struct xchk_iscan *iscan), 1275 TP_ARGS(iscan), 1282 __entry->dev = iscan->sc->mp->m_super->s_dev; 1283 __entry->cursor = iscan->cursor_ino; 1284 __entry->visited = iscan->__visited_ino; 1293 TP_PROTO(struct xchk_iscan *iscan), \ 1294 TP_ARGS(iscan)) 1301 TP_PROTO(struct xchk_iscan *iscan, xfs_ino_t ino), 1302 TP_ARGS(iscan, ino), 1311 __entry->dev = iscan->sc->mp->m_super->s_dev; [all …]
|
D | quotacheck.h | 48 struct xchk_iscan iscan; member
|
D | findparent.h | 13 struct xchk_iscan iscan; member
|
D | parent_repair.c | 535 xchk_iscan_mark_visited(&rp->pscan.iscan, ip); in xrep_parent_scan_file() 576 while ((error = xchk_iscan_iter(&rp->pscan.iscan, &ip)) == 1) { in xrep_parent_scan_dirtree() 608 xchk_iscan_iter_finish(&rp->pscan.iscan); in xrep_parent_scan_dirtree() 653 xchk_iscan_want_live_update(&rp->pscan.iscan, p->dp->i_ino)) { in xrep_parent_live_update() 669 xchk_iscan_abort(&rp->pscan.iscan); in xrep_parent_live_update() 1307 if (xchk_iscan_aborted(&rp->pscan.iscan)) in xrep_parent_rebuild_pptrs()
|
D | dir_repair.c | 1255 xchk_iscan_mark_visited(&rd->pscan.iscan, ip); in xrep_dir_scan_file() 1290 while ((error = xchk_iscan_iter(&rd->pscan.iscan, &ip)) == 1) { in xrep_dir_scan_dirtree() 1322 xchk_iscan_iter_finish(&rd->pscan.iscan); in xrep_dir_scan_dirtree() 1367 xchk_iscan_want_live_update(&rd->pscan.iscan, p->ip->i_ino)) { in xrep_dir_live_update() 1386 xchk_iscan_want_live_update(&rd->pscan.iscan, p->dp->i_ino)) { in xrep_dir_live_update() 1404 xchk_iscan_abort(&rd->pscan.iscan); in xrep_dir_live_update() 1740 if (xchk_iscan_aborted(&rd->pscan.iscan)) in xrep_dir_rebuild_tree()
|
D | quotacheck_repair.c | 64 if (xchk_iscan_aborted(&xqc->iscan)) { in xqcheck_commit_dquot()
|
/linux-6.12.1/fs/xfs/ |
D | Makefile | 172 iscan.o \
|
/linux-6.12.1/Documentation/filesystems/xfs/ |
D | xfs-online-fsck-design.rst | 3282 <https://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfs-linux.git/log/?h=scrub-iscan>`_ 3599 <https://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfs-linux.git/log/?h=scrub-iscan>`_ 3775 It combines a :ref:`coordinated inode scanner <iscan>`, :ref:`live update hooks 4575 Directory rebuilding uses a :ref:`coordinated inode scan <iscan>` and 5099 <https://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfsprogs-dev.git/log/?h=scrub-iscan-rebalan…
|