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"
33 * scrub & repair, on the other hand, enables us to check the metadata
59 * out to the top level, lock all the AGs in order, and retry the scrub.
61 * For file data (directories, extended attributes, symlinks) scrub, we
78 * end of the scrub run. Cancelling a non-dirty transaction simply
81 * There are four pieces of data that scrub can communicate to
83 * communicate operational errors in performing the scrub. There are
84 * also three flags that can be set in the scrub context. If the data
102 * scrub ioctl. "Corruption" is defined by metadata violating the
111 * Lock -> scrub -> repair -> commit -> re-lock -> re-scrub -> unlock.
125 * Scrub probe -- userspace uses this to probe if we're willing to scrub
127 * probe the kernel's abilities to scrub (and repair) the metadata. We
129 * filesystem for a scrub (or a repair) operation, and immediately
131 * structure state to decide (in broad terms) if scrub/repair are
191 .scrub = xchk_probe,
197 .scrub = xchk_superblock,
203 .scrub = xchk_agf,
209 .scrub = xchk_agfl,
215 .scrub = xchk_agi,
221 .scrub = xchk_bnobt,
227 .scrub = xchk_cntbt,
233 .scrub = xchk_inobt,
239 .scrub = xchk_finobt,
246 .scrub = xchk_rmapbt,
253 .scrub = xchk_refcountbt,
260 .scrub = xchk_inode,
266 .scrub = xchk_bmap_data,
272 .scrub = xchk_bmap_attr,
278 .scrub = xchk_bmap_cow,
284 .scrub = xchk_directory,
290 .scrub = xchk_xattr,
296 .scrub = xchk_symlink,
302 .scrub = xchk_parent,
308 .scrub = xchk_rtbitmap,
315 .scrub = xchk_rtsummary,
322 .scrub = xchk_quota,
328 .scrub = xchk_quota,
334 .scrub = xchk_quota,
340 .scrub = xchk_fscounters,
356 "EXPERIMENTAL online scrub feature in use. Use at your own risk!");
381 if (ops->setup == NULL || ops->scrub == NULL)
410 * for ops->repair until after our scrub confirms that we need to
446 * Userspace asked us to scrub something, it's broken, and we have no
452 "Corruption detected during scrub.");
495 * If freeze runs concurrently with a scrub, the freeze can be delayed
508 error = sc.ops->scrub(&sc);
554 * back to the beginning and call the scrub function.