Lines Matching full:sc
26 struct xfs_scrub *sc) in xchk_quota_to_dqtype() argument
28 switch (sc->sm->sm_type) { in xchk_quota_to_dqtype()
43 struct xfs_scrub *sc) in xchk_setup_quota() argument
48 if (!XFS_IS_QUOTA_ON(sc->mp)) in xchk_setup_quota()
51 dqtype = xchk_quota_to_dqtype(sc); in xchk_setup_quota()
55 if (!xfs_this_quota_on(sc->mp, dqtype)) in xchk_setup_quota()
58 if (xchk_need_intent_drain(sc)) in xchk_setup_quota()
59 xchk_fsgates_enable(sc, XCHK_FSGATES_DRAIN); in xchk_setup_quota()
61 error = xchk_setup_fs(sc); in xchk_setup_quota()
65 error = xchk_install_live_inode(sc, xfs_quota_inode(sc->mp, dqtype)); in xchk_setup_quota()
69 xchk_ilock(sc, XFS_ILOCK_EXCL); in xchk_setup_quota()
76 struct xfs_scrub *sc; member
83 struct xfs_scrub *sc, in xchk_quota_item_bmap() argument
88 struct xfs_mount *mp = sc->mp; in xchk_quota_item_bmap()
93 xchk_fblock_set_corrupt(sc, XFS_DATA_FORK, offset); in xchk_quota_item_bmap()
98 xchk_fblock_set_corrupt(sc, XFS_DATA_FORK, offset); in xchk_quota_item_bmap()
102 error = xfs_bmapi_read(sc->ip, offset, 1, &irec, &nmaps, 0); in xchk_quota_item_bmap()
107 xchk_fblock_set_corrupt(sc, XFS_DATA_FORK, offset); in xchk_quota_item_bmap()
112 xchk_fblock_set_corrupt(sc, XFS_DATA_FORK, offset); in xchk_quota_item_bmap()
114 xchk_fblock_set_corrupt(sc, XFS_DATA_FORK, offset); in xchk_quota_item_bmap()
116 xchk_fblock_set_corrupt(sc, XFS_DATA_FORK, offset); in xchk_quota_item_bmap()
124 struct xfs_scrub *sc, in xchk_quota_item_timer() argument
131 xchk_fblock_set_corrupt(sc, XFS_DATA_FORK, offset); in xchk_quota_item_timer()
134 xchk_fblock_set_corrupt(sc, XFS_DATA_FORK, offset); in xchk_quota_item_timer()
144 struct xfs_scrub *sc = sqi->sc; in xchk_quota_item() local
145 struct xfs_mount *mp = sc->mp; in xchk_quota_item()
151 if (xchk_should_terminate(sc, &error)) in xchk_quota_item()
162 xchk_ilock(sc, XFS_ILOCK_SHARED); in xchk_quota_item()
171 xchk_fblock_set_corrupt(sc, XFS_DATA_FORK, offset); in xchk_quota_item()
175 error = xchk_quota_item_bmap(sc, dq, offset); in xchk_quota_item()
176 xchk_iunlock(sc, XFS_ILOCK_SHARED); in xchk_quota_item()
177 if (!xchk_fblock_process_error(sc, XFS_DATA_FORK, offset, &error)) in xchk_quota_item()
189 xchk_fblock_set_warning(sc, XFS_DATA_FORK, offset); in xchk_quota_item()
191 xchk_fblock_set_corrupt(sc, XFS_DATA_FORK, offset); in xchk_quota_item()
194 xchk_fblock_set_warning(sc, XFS_DATA_FORK, offset); in xchk_quota_item()
196 xchk_fblock_set_corrupt(sc, XFS_DATA_FORK, offset); in xchk_quota_item()
199 xchk_fblock_set_warning(sc, XFS_DATA_FORK, offset); in xchk_quota_item()
201 xchk_fblock_set_corrupt(sc, XFS_DATA_FORK, offset); in xchk_quota_item()
213 xchk_fblock_set_warning(sc, XFS_DATA_FORK, in xchk_quota_item()
217 xchk_fblock_set_corrupt(sc, XFS_DATA_FORK, in xchk_quota_item()
221 xchk_fblock_set_corrupt(sc, XFS_DATA_FORK, offset); in xchk_quota_item()
233 xchk_fblock_set_warning(sc, XFS_DATA_FORK, offset); in xchk_quota_item()
237 xchk_fblock_set_warning(sc, XFS_DATA_FORK, offset); in xchk_quota_item()
241 xchk_fblock_set_warning(sc, XFS_DATA_FORK, offset); in xchk_quota_item()
243 xchk_quota_item_timer(sc, offset, &dq->q_blk); in xchk_quota_item()
244 xchk_quota_item_timer(sc, offset, &dq->q_ino); in xchk_quota_item()
245 xchk_quota_item_timer(sc, offset, &dq->q_rtb); in xchk_quota_item()
248 if (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_quota_item()
257 struct xfs_scrub *sc) in xchk_quota_data_fork() argument
261 struct xfs_quotainfo *qi = sc->mp->m_quotainfo; in xchk_quota_data_fork()
267 error = xchk_metadata_inode_forks(sc); in xchk_quota_data_fork()
268 if (error || (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT)) in xchk_quota_data_fork()
273 ifp = xfs_ifork_ptr(sc->ip, XFS_DATA_FORK); in xchk_quota_data_fork()
275 if (xchk_should_terminate(sc, &error)) in xchk_quota_data_fork()
285 xchk_fblock_set_corrupt(sc, XFS_DATA_FORK, in xchk_quota_data_fork()
297 struct xfs_scrub *sc) in xchk_quota() argument
300 struct xchk_quota_info sqi = { .sc = sc }; in xchk_quota()
301 struct xfs_mount *mp = sc->mp; in xchk_quota()
307 dqtype = xchk_quota_to_dqtype(sc); in xchk_quota()
310 error = xchk_quota_data_fork(sc); in xchk_quota()
313 if (sc->sm->sm_flags & XFS_SCRUB_OFLAG_CORRUPT) in xchk_quota()
321 xchk_iunlock(sc, sc->ilock_flags); in xchk_quota()
324 xchk_dqiter_init(&cursor, sc, dqtype); in xchk_quota()
333 if (!xchk_fblock_process_error(sc, XFS_DATA_FORK, in xchk_quota()