Lines Matching refs:scrub

20 #include "scrub/scrub.h"
21 #include "scrub/common.h"
22 #include "scrub/trace.h"
23 #include "scrub/repair.h"
24 #include "scrub/health.h"
25 #include "scrub/stats.h"
26 #include "scrub/xfile.h"
35 * scrub & repair, on the other hand, enables us to check the metadata
61 * out to the top level, lock all the AGs in order, and retry the scrub.
63 * For file data (directories, extended attributes, symlinks) scrub, we
80 * end of the scrub run. Cancelling a non-dirty transaction simply
83 * There are four pieces of data that scrub can communicate to
85 * communicate operational errors in performing the scrub. There are
86 * also three flags that can be set in the scrub context. If the data
104 * scrub ioctl. "Corruption" is defined by metadata violating the
113 * Lock -> scrub -> repair -> commit -> re-lock -> re-scrub -> unlock.
127 * Scrub probe -- userspace uses this to probe if we're willing to scrub
129 * probe the kernel's abilities to scrub (and repair) the metadata. We
131 * filesystem for a scrub (or a repair) operation, and immediately
133 * structure state to decide (in broad terms) if scrub/repair are
211 .scrub = xchk_probe,
217 .scrub = xchk_superblock,
223 .scrub = xchk_agf,
229 .scrub = xchk_agfl,
235 .scrub = xchk_agi,
241 .scrub = xchk_bnobt,
247 .scrub = xchk_cntbt,
253 .scrub = xchk_inobt,
259 .scrub = xchk_finobt,
266 .scrub = xchk_rmapbt,
273 .scrub = xchk_refcountbt,
280 .scrub = xchk_inode,
286 .scrub = xchk_bmap_data,
292 .scrub = xchk_bmap_attr,
298 .scrub = xchk_bmap_cow,
304 .scrub = xchk_directory,
310 .scrub = xchk_xattr,
316 .scrub = xchk_symlink,
322 .scrub = xchk_parent,
328 .scrub = xchk_rtbitmap,
335 .scrub = xchk_rtsummary,
342 .scrub = xchk_quota,
348 .scrub = xchk_quota,
354 .scrub = xchk_quota,
360 .scrub = xchk_fscounters,
387 if (ops->setup == NULL || ops->scrub == NULL)
421 * for ops->repair until after our scrub confirms that we need to
457 * Userspace asked us to scrub something, it's broken, and we have no
463 "Corruption detected during scrub.");
497 "EXPERIMENTAL online scrub feature in use. Use at your own risk!");
513 * scrub is running with a real transaction.
534 error = sc->ops->scrub(sc);
575 * back to the beginning and call the scrub function.