Linux XFS filesystem development
 help / color / mirror / Atom feed
From: "Darrick J. Wong" <djwong@kernel.org>
To: djwong@kernel.org, zlang@redhat.com
Cc: fstests@vger.kernel.org, linux-xfs@vger.kernel.org, guan@eryu.me
Subject: [PATCH 2/4] xfs: offline fuzz test known output
Date: Sun, 31 Dec 2023 16:44:09 +9900	[thread overview]
Message-ID: <170405026255.1823639.16865136362993557074.stgit@frogsfrogsfrogs> (raw)
In-Reply-To: <170405026226.1823639.16368830178504929409.stgit@frogsfrogsfrogs>

From: Darrick J. Wong <djwong@kernel.org>

Record all the currently known failures of the xfs_repair check and
repair code.

Signed-off-by: Darrick J. Wong <djwong@kernel.org>
---
 tests/xfs/350.out |   91 +++++++++
 tests/xfs/354.out |   87 +++++++++
 tests/xfs/356.out |   13 +
 tests/xfs/358.out |    5 
 tests/xfs/360.out |   30 +++
 tests/xfs/362.out |    5 
 tests/xfs/364.out |    6 +
 tests/xfs/366.out |    6 +
 tests/xfs/368.out |    8 +
 tests/xfs/370.out |  417 +++++++++++++++++++++++++++++++++++++++++
 tests/xfs/372.out |    5 
 tests/xfs/374.out |   35 +++
 tests/xfs/376.out |   22 ++
 tests/xfs/378.out |   22 ++
 tests/xfs/382.out |    4 
 tests/xfs/384.out |   38 ++++
 tests/xfs/386.out |   28 +++
 tests/xfs/388.out |  535 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 tests/xfs/392.out |    7 +
 tests/xfs/394.out |   12 +
 tests/xfs/398.out |   38 ++++
 tests/xfs/400.out |   26 +++
 tests/xfs/402.out |    7 +
 tests/xfs/404.out |   33 +++
 tests/xfs/410.out |    6 +
 tests/xfs/412.out |   21 ++
 tests/xfs/414.out |   23 ++
 tests/xfs/416.out |   22 ++
 tests/xfs/418.out |   90 +++++++++
 tests/xfs/425.out |  258 ++++++++++++++++++++++++++
 tests/xfs/427.out |  258 ++++++++++++++++++++++++++
 tests/xfs/429.out |  258 ++++++++++++++++++++++++++
 tests/xfs/496.out |   24 ++
 tests/xfs/734.out |    9 +
 tests/xfs/737.out |   14 +
 tests/xfs/754.out |   23 ++
 tests/xfs/785.out |   23 ++
 37 files changed, 2509 insertions(+)


diff --git a/tests/xfs/350.out b/tests/xfs/350.out
index 3bb9762b30..a0b70cf907 100644
--- a/tests/xfs/350.out
+++ b/tests/xfs/350.out
@@ -1,4 +1,95 @@
 QA output created by 350
 Format and populate
 Fuzz superblock
+rgblocks = middlebit: offline scrub didn't fail.
+rgblocks = lastbit: offline scrub didn't fail.
+rgblocks = add: offline scrub didn't fail.
+rgblocks = sub: offline scrub didn't fail.
+fname = ones: offline scrub didn't fail.
+fname = firstbit: offline scrub didn't fail.
+fname = middlebit: offline scrub didn't fail.
+fname = lastbit: offline scrub didn't fail.
+imax_pct = zeroes: offline scrub didn't fail.
+imax_pct = middlebit: offline scrub didn't fail.
+imax_pct = lastbit: offline scrub didn't fail.
+qflags = zeroes: offline scrub didn't fail.
+qflags = ones: offline scrub didn't fail.
+qflags = firstbit: offline scrub didn't fail.
+qflags = middlebit: offline scrub didn't fail.
+qflags = lastbit: offline scrub didn't fail.
+qflags = add: offline scrub didn't fail.
+qflags = sub: offline scrub didn't fail.
+dirblklog = lastbit: online post-mod scrub failed (1).
+logsunit = zeroes: offline scrub didn't fail.
+logsunit = zeroes: online post-mod scrub failed (1).
+logsunit = lastbit: offline scrub didn't fail.
+logsunit = lastbit: online post-mod scrub failed (1).
+bad_features2 = zeroes: offline scrub didn't fail.
+features_compat = ones: offline repair failed (1).
+features_compat = ones: offline re-scrub failed (1).
+features_compat = ones: pre-mod mount failed (32).
+features_compat = firstbit: offline repair failed (1).
+features_compat = firstbit: offline re-scrub failed (1).
+features_compat = firstbit: pre-mod mount failed (32).
+features_compat = middlebit: offline repair failed (1).
+features_compat = middlebit: offline re-scrub failed (1).
+features_compat = middlebit: pre-mod mount failed (32).
+features_compat = lastbit: offline repair failed (1).
+features_compat = lastbit: offline re-scrub failed (1).
+features_compat = lastbit: pre-mod mount failed (32).
+features_compat = add: offline repair failed (1).
+features_compat = add: offline re-scrub failed (1).
+features_compat = add: pre-mod mount failed (32).
+features_compat = sub: offline repair failed (1).
+features_compat = sub: offline re-scrub failed (1).
+features_compat = sub: pre-mod mount failed (32).
+features_ro_compat = zeroes: offline re-scrub failed (1).
+features_ro_compat = zeroes: offline post-mod scrub failed (1).
+features_ro_compat = ones: offline repair failed (1).
+features_ro_compat = ones: offline re-scrub failed (1).
+features_ro_compat = ones: pre-mod mount failed (32).
+features_ro_compat = firstbit: offline repair failed (1).
+features_ro_compat = firstbit: offline re-scrub failed (1).
+features_ro_compat = firstbit: pre-mod mount failed (32).
+features_ro_compat = middlebit: offline repair failed (1).
+features_ro_compat = middlebit: offline re-scrub failed (1).
+features_ro_compat = middlebit: pre-mod mount failed (32).
+features_ro_compat = lastbit: offline re-scrub failed (1).
+features_ro_compat = lastbit: offline post-mod scrub failed (1).
+features_ro_compat = add: offline repair failed (1).
+features_ro_compat = add: offline re-scrub failed (1).
+features_ro_compat = add: pre-mod mount failed (32).
+features_ro_compat = sub: offline repair failed (1).
+features_ro_compat = sub: offline re-scrub failed (1).
+features_ro_compat = sub: pre-mod mount failed (32).
+features_incompat = ones: offline repair failed (1).
+features_incompat = ones: offline re-scrub failed (1).
+features_incompat = ones: pre-mod mount failed (32).
+features_incompat = middlebit: offline repair failed (1).
+features_incompat = middlebit: offline re-scrub failed (1).
+features_incompat = middlebit: pre-mod mount failed (32).
+features_incompat = lastbit: offline repair failed (1).
+features_incompat = lastbit: offline re-scrub failed (1).
+features_incompat = lastbit: pre-mod mount failed (32).
+features_incompat = sub: offline repair failed (1).
+features_incompat = sub: offline re-scrub failed (1).
+features_incompat = sub: pre-mod mount failed (32).
+features_log_incompat = ones: offline scrub didn't fail.
+features_log_incompat = ones: offline repair failed (1).
+features_log_incompat = ones: offline re-scrub failed (1).
+features_log_incompat = ones: pre-mod mount failed (32).
+features_log_incompat = firstbit: offline scrub didn't fail.
+features_log_incompat = middlebit: offline scrub didn't fail.
+features_log_incompat = middlebit: offline repair failed (1).
+features_log_incompat = middlebit: offline re-scrub failed (1).
+features_log_incompat = middlebit: pre-mod mount failed (32).
+features_log_incompat = lastbit: offline scrub didn't fail.
+features_log_incompat = add: offline scrub didn't fail.
+features_log_incompat = add: offline repair failed (1).
+features_log_incompat = add: offline re-scrub failed (1).
+features_log_incompat = add: pre-mod mount failed (32).
+features_log_incompat = sub: offline scrub didn't fail.
+features_log_incompat = sub: offline repair failed (1).
+features_log_incompat = sub: offline re-scrub failed (1).
+features_log_incompat = sub: pre-mod mount failed (32).
 Done fuzzing superblock
diff --git a/tests/xfs/354.out b/tests/xfs/354.out
index d8b33f64ea..0e53e4909f 100644
--- a/tests/xfs/354.out
+++ b/tests/xfs/354.out
@@ -1,6 +1,93 @@
 QA output created by 354
 Format and populate
 Fuzz AGFL
+magicnum = zeroes: offline scrub didn't fail.
+magicnum = ones: offline scrub didn't fail.
+magicnum = firstbit: offline scrub didn't fail.
+magicnum = middlebit: offline scrub didn't fail.
+magicnum = lastbit: offline scrub didn't fail.
+magicnum = add: offline scrub didn't fail.
+magicnum = sub: offline scrub didn't fail.
+seqno = ones: offline scrub didn't fail.
+seqno = firstbit: offline scrub didn't fail.
+seqno = middlebit: offline scrub didn't fail.
+seqno = lastbit: offline scrub didn't fail.
+seqno = add: offline scrub didn't fail.
+seqno = sub: offline scrub didn't fail.
+uuid = zeroes: offline scrub didn't fail.
+uuid = ones: offline scrub didn't fail.
+uuid = firstbit: offline scrub didn't fail.
+uuid = middlebit: offline scrub didn't fail.
+uuid = lastbit: offline scrub didn't fail.
+bno[0] = zeroes: offline scrub didn't fail.
+bno[0] = firstbit: offline scrub didn't fail.
+bno[0] = middlebit: offline scrub didn't fail.
+bno[0] = lastbit: offline scrub didn't fail.
+bno[0] = add: offline scrub didn't fail.
+bno[0] = sub: offline scrub didn't fail.
+bno[1] = zeroes: offline scrub didn't fail.
+bno[1] = ones: offline scrub didn't fail.
+bno[1] = firstbit: offline scrub didn't fail.
+bno[1] = middlebit: offline scrub didn't fail.
+bno[1] = lastbit: offline scrub didn't fail.
+bno[1] = add: offline scrub didn't fail.
+bno[1] = sub: offline scrub didn't fail.
+bno[2] = zeroes: offline scrub didn't fail.
+bno[2] = ones: offline scrub didn't fail.
+bno[2] = firstbit: offline scrub didn't fail.
+bno[2] = middlebit: offline scrub didn't fail.
+bno[2] = lastbit: offline scrub didn't fail.
+bno[2] = add: offline scrub didn't fail.
+bno[2] = sub: offline scrub didn't fail.
+bno[3] = zeroes: offline scrub didn't fail.
+bno[3] = ones: offline scrub didn't fail.
+bno[3] = firstbit: offline scrub didn't fail.
+bno[3] = middlebit: offline scrub didn't fail.
+bno[3] = lastbit: offline scrub didn't fail.
+bno[3] = add: offline scrub didn't fail.
+bno[3] = sub: offline scrub didn't fail.
+bno[4] = zeroes: offline scrub didn't fail.
+bno[4] = ones: offline scrub didn't fail.
+bno[4] = firstbit: offline scrub didn't fail.
+bno[4] = middlebit: offline scrub didn't fail.
+bno[4] = lastbit: offline scrub didn't fail.
+bno[4] = add: offline scrub didn't fail.
+bno[4] = sub: offline scrub didn't fail.
+bno[5] = zeroes: offline scrub didn't fail.
+bno[5] = ones: offline scrub didn't fail.
+bno[5] = firstbit: offline scrub didn't fail.
+bno[5] = middlebit: offline scrub didn't fail.
+bno[5] = lastbit: offline scrub didn't fail.
+bno[5] = add: offline scrub didn't fail.
+bno[5] = sub: offline scrub didn't fail.
+bno[6] = zeroes: offline scrub didn't fail.
+bno[6] = ones: offline scrub didn't fail.
+bno[6] = firstbit: offline scrub didn't fail.
+bno[6] = middlebit: offline scrub didn't fail.
+bno[6] = lastbit: offline scrub didn't fail.
+bno[6] = add: offline scrub didn't fail.
+bno[6] = sub: offline scrub didn't fail.
+bno[7] = zeroes: offline scrub didn't fail.
+bno[7] = ones: offline scrub didn't fail.
+bno[7] = firstbit: offline scrub didn't fail.
+bno[7] = middlebit: offline scrub didn't fail.
+bno[7] = lastbit: offline scrub didn't fail.
+bno[7] = add: offline scrub didn't fail.
+bno[7] = sub: offline scrub didn't fail.
+bno[8] = zeroes: offline scrub didn't fail.
+bno[8] = ones: offline scrub didn't fail.
+bno[8] = firstbit: offline scrub didn't fail.
+bno[8] = middlebit: offline scrub didn't fail.
+bno[8] = lastbit: offline scrub didn't fail.
+bno[8] = add: offline scrub didn't fail.
+bno[8] = sub: offline scrub didn't fail.
+bno[9] = zeroes: offline scrub didn't fail.
+bno[9] = ones: offline scrub didn't fail.
+bno[9] = firstbit: offline scrub didn't fail.
+bno[9] = middlebit: offline scrub didn't fail.
+bno[9] = lastbit: offline scrub didn't fail.
+bno[9] = add: offline scrub didn't fail.
+bno[9] = sub: offline scrub didn't fail.
 Done fuzzing AGFL
 Fuzz AGFL flfirst
 Done fuzzing AGFL flfirst
diff --git a/tests/xfs/356.out b/tests/xfs/356.out
index ca7834467a..aa40e3e1a3 100644
--- a/tests/xfs/356.out
+++ b/tests/xfs/356.out
@@ -1,4 +1,17 @@
 QA output created by 356
 Format and populate
 Fuzz AGI
+newino = zeroes: offline scrub didn't fail.
+newino = ones: offline scrub didn't fail.
+newino = firstbit: offline scrub didn't fail.
+newino = middlebit: offline scrub didn't fail.
+newino = lastbit: offline scrub didn't fail.
+newino = add: offline scrub didn't fail.
+newino = sub: offline scrub didn't fail.
+dirino = zeroes: offline scrub didn't fail.
+dirino = firstbit: offline scrub didn't fail.
+dirino = middlebit: offline scrub didn't fail.
+dirino = lastbit: offline scrub didn't fail.
+dirino = add: offline scrub didn't fail.
+dirino = sub: offline scrub didn't fail.
 Done fuzzing AGI
diff --git a/tests/xfs/358.out b/tests/xfs/358.out
index e1ec8623ad..0e04f3a81c 100644
--- a/tests/xfs/358.out
+++ b/tests/xfs/358.out
@@ -1,4 +1,9 @@
 QA output created by 358
 Format and populate
 Fuzz bnobt recs
+leftsib = add: offline scrub didn't fail.
+rightsib = ones: offline scrub didn't fail.
+rightsib = middlebit: offline scrub didn't fail.
+rightsib = lastbit: offline scrub didn't fail.
+rightsib = add: offline scrub didn't fail.
 Done fuzzing bnobt recs
diff --git a/tests/xfs/360.out b/tests/xfs/360.out
index fd7ce6cdb3..30011ce698 100644
--- a/tests/xfs/360.out
+++ b/tests/xfs/360.out
@@ -1,4 +1,34 @@
 QA output created by 360
 Format and populate
 Fuzz bnobt keyptr
+leftsib = add: offline scrub didn't fail.
+rightsib = add: offline scrub didn't fail.
+keys[1].startblock = zeroes: offline scrub didn't fail.
+keys[1].startblock = ones: offline scrub didn't fail.
+keys[1].startblock = firstbit: offline scrub didn't fail.
+keys[1].startblock = middlebit: offline scrub didn't fail.
+keys[1].startblock = lastbit: offline scrub didn't fail.
+keys[1].startblock = add: offline scrub didn't fail.
+keys[1].startblock = sub: offline scrub didn't fail.
+keys[1].blockcount = zeroes: offline scrub didn't fail.
+keys[1].blockcount = ones: offline scrub didn't fail.
+keys[1].blockcount = firstbit: offline scrub didn't fail.
+keys[1].blockcount = middlebit: offline scrub didn't fail.
+keys[1].blockcount = lastbit: offline scrub didn't fail.
+keys[1].blockcount = add: offline scrub didn't fail.
+keys[1].blockcount = sub: offline scrub didn't fail.
+keys[2].startblock = zeroes: offline scrub didn't fail.
+keys[2].startblock = ones: offline scrub didn't fail.
+keys[2].startblock = firstbit: offline scrub didn't fail.
+keys[2].startblock = middlebit: offline scrub didn't fail.
+keys[2].startblock = lastbit: offline scrub didn't fail.
+keys[2].startblock = add: offline scrub didn't fail.
+keys[2].startblock = sub: offline scrub didn't fail.
+keys[2].blockcount = zeroes: offline scrub didn't fail.
+keys[2].blockcount = ones: offline scrub didn't fail.
+keys[2].blockcount = firstbit: offline scrub didn't fail.
+keys[2].blockcount = middlebit: offline scrub didn't fail.
+keys[2].blockcount = lastbit: offline scrub didn't fail.
+keys[2].blockcount = add: offline scrub didn't fail.
+keys[2].blockcount = sub: offline scrub didn't fail.
 Done fuzzing bnobt keyptr
diff --git a/tests/xfs/362.out b/tests/xfs/362.out
index d39175e590..9c5fb8064d 100644
--- a/tests/xfs/362.out
+++ b/tests/xfs/362.out
@@ -1,4 +1,9 @@
 QA output created by 362
 Format and populate
 Fuzz cntbt
+leftsib = add: offline scrub didn't fail.
+rightsib = ones: offline scrub didn't fail.
+rightsib = middlebit: offline scrub didn't fail.
+rightsib = lastbit: offline scrub didn't fail.
+rightsib = add: offline scrub didn't fail.
 Done fuzzing cntbt
diff --git a/tests/xfs/364.out b/tests/xfs/364.out
index 2d6fad24e4..2df69904ed 100644
--- a/tests/xfs/364.out
+++ b/tests/xfs/364.out
@@ -1,4 +1,10 @@
 QA output created by 364
 Format and populate
 Fuzz inobt
+leftsib = add: offline scrub didn't fail.
+rightsib = ones: offline scrub didn't fail.
+rightsib = middlebit: offline scrub didn't fail.
+rightsib = lastbit: offline scrub didn't fail.
+rightsib = add: offline scrub didn't fail.
+rightsib = sub: offline scrub didn't fail.
 Done fuzzing inobt
diff --git a/tests/xfs/366.out b/tests/xfs/366.out
index 14906508ea..0970587bc9 100644
--- a/tests/xfs/366.out
+++ b/tests/xfs/366.out
@@ -1,4 +1,10 @@
 QA output created by 366
 Format and populate
 Fuzz finobt
+leftsib = add: offline scrub didn't fail.
+rightsib = ones: offline scrub didn't fail.
+rightsib = middlebit: offline scrub didn't fail.
+rightsib = lastbit: offline scrub didn't fail.
+rightsib = add: offline scrub didn't fail.
+rightsib = sub: offline scrub didn't fail.
 Done fuzzing finobt
diff --git a/tests/xfs/368.out b/tests/xfs/368.out
index 370ea0ef9a..213e1dab3d 100644
--- a/tests/xfs/368.out
+++ b/tests/xfs/368.out
@@ -1,4 +1,12 @@
 QA output created by 368
 Format and populate
 Fuzz rmapbt recs
+leftsib = add: offline scrub didn't fail.
+rightsib = ones: offline scrub didn't fail.
+rightsib = middlebit: offline scrub didn't fail.
+rightsib = lastbit: offline scrub didn't fail.
+rightsib = add: offline scrub didn't fail.
+recs[3].startblock = lastbit: offline scrub didn't fail.
+recs[3].blockcount = lastbit: offline scrub didn't fail.
+recs[6].owner = lastbit: offline scrub didn't fail.
 Done fuzzing rmapbt recs
diff --git a/tests/xfs/370.out b/tests/xfs/370.out
index 6858e135ad..84b9ded9b5 100644
--- a/tests/xfs/370.out
+++ b/tests/xfs/370.out
@@ -1,4 +1,421 @@
 QA output created by 370
 Format and populate
 Fuzz rmapbt keyptr
+leftsib = add: offline scrub didn't fail.
+rightsib = add: offline scrub didn't fail.
+keys[1].startblock = lastbit: offline scrub didn't fail.
+keys[1].owner = zeroes: offline scrub didn't fail.
+keys[1].owner = ones: offline scrub didn't fail.
+keys[1].owner = firstbit: offline scrub didn't fail.
+keys[1].owner = middlebit: offline scrub didn't fail.
+keys[1].owner = lastbit: offline scrub didn't fail.
+keys[1].owner = add: offline scrub didn't fail.
+keys[1].owner = sub: offline scrub didn't fail.
+keys[1].offset = ones: offline scrub didn't fail.
+keys[1].offset = firstbit: offline scrub didn't fail.
+keys[1].offset = middlebit: offline scrub didn't fail.
+keys[1].offset = lastbit: offline scrub didn't fail.
+keys[1].offset = add: offline scrub didn't fail.
+keys[1].offset = sub: offline scrub didn't fail.
+keys[1].extentflag = ones: offline scrub didn't fail.
+keys[1].extentflag = firstbit: offline scrub didn't fail.
+keys[1].extentflag = middlebit: offline scrub didn't fail.
+keys[1].extentflag = lastbit: offline scrub didn't fail.
+keys[1].extentflag = add: offline scrub didn't fail.
+keys[1].extentflag = sub: offline scrub didn't fail.
+keys[1].attrfork = ones: offline scrub didn't fail.
+keys[1].attrfork = firstbit: offline scrub didn't fail.
+keys[1].attrfork = middlebit: offline scrub didn't fail.
+keys[1].attrfork = lastbit: offline scrub didn't fail.
+keys[1].attrfork = add: offline scrub didn't fail.
+keys[1].attrfork = sub: offline scrub didn't fail.
+keys[1].bmbtblock = ones: offline scrub didn't fail.
+keys[1].bmbtblock = firstbit: offline scrub didn't fail.
+keys[1].bmbtblock = middlebit: offline scrub didn't fail.
+keys[1].bmbtblock = lastbit: offline scrub didn't fail.
+keys[1].bmbtblock = add: offline scrub didn't fail.
+keys[1].bmbtblock = sub: offline scrub didn't fail.
+keys[1].startblock_hi = ones: offline scrub didn't fail.
+keys[1].startblock_hi = firstbit: offline scrub didn't fail.
+keys[1].startblock_hi = middlebit: offline scrub didn't fail.
+keys[1].startblock_hi = lastbit: offline scrub didn't fail.
+keys[1].startblock_hi = add: offline scrub didn't fail.
+keys[1].startblock_hi = sub: offline scrub didn't fail.
+keys[1].owner_hi = ones: offline scrub didn't fail.
+keys[1].owner_hi = firstbit: offline scrub didn't fail.
+keys[1].owner_hi = middlebit: offline scrub didn't fail.
+keys[1].owner_hi = lastbit: offline scrub didn't fail.
+keys[1].owner_hi = add: offline scrub didn't fail.
+keys[1].owner_hi = sub: offline scrub didn't fail.
+keys[1].offset_hi = ones: offline scrub didn't fail.
+keys[1].offset_hi = firstbit: offline scrub didn't fail.
+keys[1].offset_hi = middlebit: offline scrub didn't fail.
+keys[1].offset_hi = add: offline scrub didn't fail.
+keys[1].offset_hi = sub: offline scrub didn't fail.
+keys[1].extentflag_hi = ones: offline scrub didn't fail.
+keys[1].extentflag_hi = firstbit: offline scrub didn't fail.
+keys[1].extentflag_hi = middlebit: offline scrub didn't fail.
+keys[1].extentflag_hi = lastbit: offline scrub didn't fail.
+keys[1].extentflag_hi = add: offline scrub didn't fail.
+keys[1].extentflag_hi = sub: offline scrub didn't fail.
+keys[1].attrfork_hi = ones: offline scrub didn't fail.
+keys[1].attrfork_hi = firstbit: offline scrub didn't fail.
+keys[1].attrfork_hi = middlebit: offline scrub didn't fail.
+keys[1].attrfork_hi = lastbit: offline scrub didn't fail.
+keys[1].attrfork_hi = add: offline scrub didn't fail.
+keys[1].attrfork_hi = sub: offline scrub didn't fail.
+keys[1].bmbtblock_hi = ones: offline scrub didn't fail.
+keys[1].bmbtblock_hi = firstbit: offline scrub didn't fail.
+keys[1].bmbtblock_hi = middlebit: offline scrub didn't fail.
+keys[1].bmbtblock_hi = lastbit: offline scrub didn't fail.
+keys[1].bmbtblock_hi = add: offline scrub didn't fail.
+keys[1].bmbtblock_hi = sub: offline scrub didn't fail.
+keys[2].owner = zeroes: offline scrub didn't fail.
+keys[2].offset = zeroes: offline scrub didn't fail.
+keys[2].offset = lastbit: offline scrub didn't fail.
+keys[2].extentflag = ones: offline scrub didn't fail.
+keys[2].extentflag = firstbit: offline scrub didn't fail.
+keys[2].extentflag = middlebit: offline scrub didn't fail.
+keys[2].extentflag = lastbit: offline scrub didn't fail.
+keys[2].extentflag = add: offline scrub didn't fail.
+keys[2].extentflag = sub: offline scrub didn't fail.
+keys[2].startblock_hi = ones: offline scrub didn't fail.
+keys[2].startblock_hi = firstbit: offline scrub didn't fail.
+keys[2].startblock_hi = middlebit: offline scrub didn't fail.
+keys[2].startblock_hi = lastbit: offline scrub didn't fail.
+keys[2].startblock_hi = add: offline scrub didn't fail.
+keys[2].startblock_hi = sub: offline scrub didn't fail.
+keys[2].owner_hi = ones: offline scrub didn't fail.
+keys[2].owner_hi = firstbit: offline scrub didn't fail.
+keys[2].owner_hi = middlebit: offline scrub didn't fail.
+keys[2].owner_hi = lastbit: offline scrub didn't fail.
+keys[2].owner_hi = add: offline scrub didn't fail.
+keys[2].owner_hi = sub: offline scrub didn't fail.
+keys[2].offset_hi = ones: offline scrub didn't fail.
+keys[2].offset_hi = firstbit: offline scrub didn't fail.
+keys[2].offset_hi = middlebit: offline scrub didn't fail.
+keys[2].offset_hi = add: offline scrub didn't fail.
+keys[2].offset_hi = sub: offline scrub didn't fail.
+keys[2].extentflag_hi = ones: offline scrub didn't fail.
+keys[2].extentflag_hi = firstbit: offline scrub didn't fail.
+keys[2].extentflag_hi = middlebit: offline scrub didn't fail.
+keys[2].extentflag_hi = lastbit: offline scrub didn't fail.
+keys[2].extentflag_hi = add: offline scrub didn't fail.
+keys[2].extentflag_hi = sub: offline scrub didn't fail.
+keys[2].attrfork_hi = ones: offline scrub didn't fail.
+keys[2].attrfork_hi = firstbit: offline scrub didn't fail.
+keys[2].attrfork_hi = middlebit: offline scrub didn't fail.
+keys[2].attrfork_hi = lastbit: offline scrub didn't fail.
+keys[2].attrfork_hi = add: offline scrub didn't fail.
+keys[2].attrfork_hi = sub: offline scrub didn't fail.
+keys[2].bmbtblock_hi = ones: offline scrub didn't fail.
+keys[2].bmbtblock_hi = firstbit: offline scrub didn't fail.
+keys[2].bmbtblock_hi = middlebit: offline scrub didn't fail.
+keys[2].bmbtblock_hi = lastbit: offline scrub didn't fail.
+keys[2].bmbtblock_hi = add: offline scrub didn't fail.
+keys[2].bmbtblock_hi = sub: offline scrub didn't fail.
+keys[3].owner = zeroes: offline scrub didn't fail.
+keys[3].offset = zeroes: offline scrub didn't fail.
+keys[3].offset = lastbit: offline scrub didn't fail.
+keys[3].extentflag = ones: offline scrub didn't fail.
+keys[3].extentflag = firstbit: offline scrub didn't fail.
+keys[3].extentflag = middlebit: offline scrub didn't fail.
+keys[3].extentflag = lastbit: offline scrub didn't fail.
+keys[3].extentflag = add: offline scrub didn't fail.
+keys[3].extentflag = sub: offline scrub didn't fail.
+keys[3].startblock_hi = ones: offline scrub didn't fail.
+keys[3].startblock_hi = firstbit: offline scrub didn't fail.
+keys[3].startblock_hi = middlebit: offline scrub didn't fail.
+keys[3].startblock_hi = lastbit: offline scrub didn't fail.
+keys[3].startblock_hi = add: offline scrub didn't fail.
+keys[3].startblock_hi = sub: offline scrub didn't fail.
+keys[3].owner_hi = ones: offline scrub didn't fail.
+keys[3].owner_hi = firstbit: offline scrub didn't fail.
+keys[3].owner_hi = middlebit: offline scrub didn't fail.
+keys[3].owner_hi = lastbit: offline scrub didn't fail.
+keys[3].owner_hi = add: offline scrub didn't fail.
+keys[3].offset_hi = ones: offline scrub didn't fail.
+keys[3].offset_hi = firstbit: offline scrub didn't fail.
+keys[3].offset_hi = middlebit: offline scrub didn't fail.
+keys[3].offset_hi = add: offline scrub didn't fail.
+keys[3].offset_hi = sub: offline scrub didn't fail.
+keys[3].extentflag_hi = ones: offline scrub didn't fail.
+keys[3].extentflag_hi = firstbit: offline scrub didn't fail.
+keys[3].extentflag_hi = middlebit: offline scrub didn't fail.
+keys[3].extentflag_hi = lastbit: offline scrub didn't fail.
+keys[3].extentflag_hi = add: offline scrub didn't fail.
+keys[3].extentflag_hi = sub: offline scrub didn't fail.
+keys[3].attrfork_hi = ones: offline scrub didn't fail.
+keys[3].attrfork_hi = firstbit: offline scrub didn't fail.
+keys[3].attrfork_hi = middlebit: offline scrub didn't fail.
+keys[3].attrfork_hi = lastbit: offline scrub didn't fail.
+keys[3].attrfork_hi = add: offline scrub didn't fail.
+keys[3].attrfork_hi = sub: offline scrub didn't fail.
+keys[3].bmbtblock_hi = ones: offline scrub didn't fail.
+keys[3].bmbtblock_hi = firstbit: offline scrub didn't fail.
+keys[3].bmbtblock_hi = middlebit: offline scrub didn't fail.
+keys[3].bmbtblock_hi = lastbit: offline scrub didn't fail.
+keys[3].bmbtblock_hi = add: offline scrub didn't fail.
+keys[3].bmbtblock_hi = sub: offline scrub didn't fail.
+keys[4].owner = zeroes: offline scrub didn't fail.
+keys[4].owner = sub: offline scrub didn't fail.
+keys[4].offset = zeroes: offline scrub didn't fail.
+keys[4].offset = lastbit: offline scrub didn't fail.
+keys[4].extentflag = ones: offline scrub didn't fail.
+keys[4].extentflag = firstbit: offline scrub didn't fail.
+keys[4].extentflag = middlebit: offline scrub didn't fail.
+keys[4].extentflag = lastbit: offline scrub didn't fail.
+keys[4].extentflag = add: offline scrub didn't fail.
+keys[4].extentflag = sub: offline scrub didn't fail.
+keys[4].startblock_hi = ones: offline scrub didn't fail.
+keys[4].startblock_hi = firstbit: offline scrub didn't fail.
+keys[4].startblock_hi = middlebit: offline scrub didn't fail.
+keys[4].startblock_hi = lastbit: offline scrub didn't fail.
+keys[4].startblock_hi = add: offline scrub didn't fail.
+keys[4].startblock_hi = sub: offline scrub didn't fail.
+keys[4].owner_hi = ones: offline scrub didn't fail.
+keys[4].owner_hi = firstbit: offline scrub didn't fail.
+keys[4].owner_hi = middlebit: offline scrub didn't fail.
+keys[4].owner_hi = lastbit: offline scrub didn't fail.
+keys[4].owner_hi = add: offline scrub didn't fail.
+keys[4].offset_hi = ones: offline scrub didn't fail.
+keys[4].offset_hi = firstbit: offline scrub didn't fail.
+keys[4].offset_hi = middlebit: offline scrub didn't fail.
+keys[4].offset_hi = add: offline scrub didn't fail.
+keys[4].offset_hi = sub: offline scrub didn't fail.
+keys[4].extentflag_hi = ones: offline scrub didn't fail.
+keys[4].extentflag_hi = firstbit: offline scrub didn't fail.
+keys[4].extentflag_hi = middlebit: offline scrub didn't fail.
+keys[4].extentflag_hi = lastbit: offline scrub didn't fail.
+keys[4].extentflag_hi = add: offline scrub didn't fail.
+keys[4].extentflag_hi = sub: offline scrub didn't fail.
+keys[4].attrfork_hi = ones: offline scrub didn't fail.
+keys[4].attrfork_hi = firstbit: offline scrub didn't fail.
+keys[4].attrfork_hi = middlebit: offline scrub didn't fail.
+keys[4].attrfork_hi = lastbit: offline scrub didn't fail.
+keys[4].attrfork_hi = add: offline scrub didn't fail.
+keys[4].attrfork_hi = sub: offline scrub didn't fail.
+keys[4].bmbtblock_hi = ones: offline scrub didn't fail.
+keys[4].bmbtblock_hi = firstbit: offline scrub didn't fail.
+keys[4].bmbtblock_hi = middlebit: offline scrub didn't fail.
+keys[4].bmbtblock_hi = lastbit: offline scrub didn't fail.
+keys[4].bmbtblock_hi = add: offline scrub didn't fail.
+keys[4].bmbtblock_hi = sub: offline scrub didn't fail.
+keys[5].owner = zeroes: offline scrub didn't fail.
+keys[5].owner = sub: offline scrub didn't fail.
+keys[5].offset = zeroes: offline scrub didn't fail.
+keys[5].offset = lastbit: offline scrub didn't fail.
+keys[5].extentflag = ones: offline scrub didn't fail.
+keys[5].extentflag = firstbit: offline scrub didn't fail.
+keys[5].extentflag = middlebit: offline scrub didn't fail.
+keys[5].extentflag = lastbit: offline scrub didn't fail.
+keys[5].extentflag = add: offline scrub didn't fail.
+keys[5].extentflag = sub: offline scrub didn't fail.
+keys[5].startblock_hi = ones: offline scrub didn't fail.
+keys[5].startblock_hi = firstbit: offline scrub didn't fail.
+keys[5].startblock_hi = middlebit: offline scrub didn't fail.
+keys[5].startblock_hi = lastbit: offline scrub didn't fail.
+keys[5].startblock_hi = add: offline scrub didn't fail.
+keys[5].startblock_hi = sub: offline scrub didn't fail.
+keys[5].owner_hi = ones: offline scrub didn't fail.
+keys[5].owner_hi = firstbit: offline scrub didn't fail.
+keys[5].owner_hi = middlebit: offline scrub didn't fail.
+keys[5].owner_hi = lastbit: offline scrub didn't fail.
+keys[5].owner_hi = add: offline scrub didn't fail.
+keys[5].offset_hi = ones: offline scrub didn't fail.
+keys[5].offset_hi = firstbit: offline scrub didn't fail.
+keys[5].offset_hi = middlebit: offline scrub didn't fail.
+keys[5].offset_hi = add: offline scrub didn't fail.
+keys[5].offset_hi = sub: offline scrub didn't fail.
+keys[5].extentflag_hi = ones: offline scrub didn't fail.
+keys[5].extentflag_hi = firstbit: offline scrub didn't fail.
+keys[5].extentflag_hi = middlebit: offline scrub didn't fail.
+keys[5].extentflag_hi = lastbit: offline scrub didn't fail.
+keys[5].extentflag_hi = add: offline scrub didn't fail.
+keys[5].extentflag_hi = sub: offline scrub didn't fail.
+keys[5].attrfork_hi = ones: offline scrub didn't fail.
+keys[5].attrfork_hi = firstbit: offline scrub didn't fail.
+keys[5].attrfork_hi = middlebit: offline scrub didn't fail.
+keys[5].attrfork_hi = lastbit: offline scrub didn't fail.
+keys[5].attrfork_hi = add: offline scrub didn't fail.
+keys[5].attrfork_hi = sub: offline scrub didn't fail.
+keys[5].bmbtblock_hi = ones: offline scrub didn't fail.
+keys[5].bmbtblock_hi = firstbit: offline scrub didn't fail.
+keys[5].bmbtblock_hi = middlebit: offline scrub didn't fail.
+keys[5].bmbtblock_hi = lastbit: offline scrub didn't fail.
+keys[5].bmbtblock_hi = add: offline scrub didn't fail.
+keys[5].bmbtblock_hi = sub: offline scrub didn't fail.
+keys[6].owner = zeroes: offline scrub didn't fail.
+keys[6].owner = sub: offline scrub didn't fail.
+keys[6].offset = zeroes: offline scrub didn't fail.
+keys[6].offset = lastbit: offline scrub didn't fail.
+keys[6].extentflag = ones: offline scrub didn't fail.
+keys[6].extentflag = firstbit: offline scrub didn't fail.
+keys[6].extentflag = middlebit: offline scrub didn't fail.
+keys[6].extentflag = lastbit: offline scrub didn't fail.
+keys[6].extentflag = add: offline scrub didn't fail.
+keys[6].extentflag = sub: offline scrub didn't fail.
+keys[6].startblock_hi = ones: offline scrub didn't fail.
+keys[6].startblock_hi = firstbit: offline scrub didn't fail.
+keys[6].startblock_hi = middlebit: offline scrub didn't fail.
+keys[6].startblock_hi = lastbit: offline scrub didn't fail.
+keys[6].startblock_hi = add: offline scrub didn't fail.
+keys[6].owner_hi = ones: offline scrub didn't fail.
+keys[6].owner_hi = firstbit: offline scrub didn't fail.
+keys[6].owner_hi = middlebit: offline scrub didn't fail.
+keys[6].owner_hi = lastbit: offline scrub didn't fail.
+keys[6].owner_hi = add: offline scrub didn't fail.
+keys[6].offset_hi = ones: offline scrub didn't fail.
+keys[6].offset_hi = firstbit: offline scrub didn't fail.
+keys[6].offset_hi = middlebit: offline scrub didn't fail.
+keys[6].offset_hi = add: offline scrub didn't fail.
+keys[6].offset_hi = sub: offline scrub didn't fail.
+keys[6].extentflag_hi = ones: offline scrub didn't fail.
+keys[6].extentflag_hi = firstbit: offline scrub didn't fail.
+keys[6].extentflag_hi = middlebit: offline scrub didn't fail.
+keys[6].extentflag_hi = lastbit: offline scrub didn't fail.
+keys[6].extentflag_hi = add: offline scrub didn't fail.
+keys[6].extentflag_hi = sub: offline scrub didn't fail.
+keys[6].attrfork_hi = ones: offline scrub didn't fail.
+keys[6].attrfork_hi = firstbit: offline scrub didn't fail.
+keys[6].attrfork_hi = middlebit: offline scrub didn't fail.
+keys[6].attrfork_hi = lastbit: offline scrub didn't fail.
+keys[6].attrfork_hi = add: offline scrub didn't fail.
+keys[6].attrfork_hi = sub: offline scrub didn't fail.
+keys[6].bmbtblock_hi = ones: offline scrub didn't fail.
+keys[6].bmbtblock_hi = firstbit: offline scrub didn't fail.
+keys[6].bmbtblock_hi = middlebit: offline scrub didn't fail.
+keys[6].bmbtblock_hi = lastbit: offline scrub didn't fail.
+keys[6].bmbtblock_hi = add: offline scrub didn't fail.
+keys[6].bmbtblock_hi = sub: offline scrub didn't fail.
+keys[7].owner = zeroes: offline scrub didn't fail.
+keys[7].owner = lastbit: offline scrub didn't fail.
+keys[7].owner = sub: offline scrub didn't fail.
+keys[7].offset = zeroes: offline scrub didn't fail.
+keys[7].offset = lastbit: offline scrub didn't fail.
+keys[7].extentflag = ones: offline scrub didn't fail.
+keys[7].extentflag = firstbit: offline scrub didn't fail.
+keys[7].extentflag = middlebit: offline scrub didn't fail.
+keys[7].extentflag = lastbit: offline scrub didn't fail.
+keys[7].extentflag = add: offline scrub didn't fail.
+keys[7].extentflag = sub: offline scrub didn't fail.
+keys[7].startblock_hi = ones: offline scrub didn't fail.
+keys[7].startblock_hi = firstbit: offline scrub didn't fail.
+keys[7].startblock_hi = middlebit: offline scrub didn't fail.
+keys[7].startblock_hi = lastbit: offline scrub didn't fail.
+keys[7].startblock_hi = add: offline scrub didn't fail.
+keys[7].owner_hi = ones: offline scrub didn't fail.
+keys[7].owner_hi = firstbit: offline scrub didn't fail.
+keys[7].owner_hi = middlebit: offline scrub didn't fail.
+keys[7].owner_hi = add: offline scrub didn't fail.
+keys[7].offset_hi = ones: offline scrub didn't fail.
+keys[7].offset_hi = firstbit: offline scrub didn't fail.
+keys[7].offset_hi = middlebit: offline scrub didn't fail.
+keys[7].offset_hi = add: offline scrub didn't fail.
+keys[7].offset_hi = sub: offline scrub didn't fail.
+keys[7].extentflag_hi = ones: offline scrub didn't fail.
+keys[7].extentflag_hi = firstbit: offline scrub didn't fail.
+keys[7].extentflag_hi = middlebit: offline scrub didn't fail.
+keys[7].extentflag_hi = lastbit: offline scrub didn't fail.
+keys[7].extentflag_hi = add: offline scrub didn't fail.
+keys[7].extentflag_hi = sub: offline scrub didn't fail.
+keys[7].attrfork_hi = ones: offline scrub didn't fail.
+keys[7].attrfork_hi = firstbit: offline scrub didn't fail.
+keys[7].attrfork_hi = middlebit: offline scrub didn't fail.
+keys[7].attrfork_hi = lastbit: offline scrub didn't fail.
+keys[7].attrfork_hi = add: offline scrub didn't fail.
+keys[7].attrfork_hi = sub: offline scrub didn't fail.
+keys[7].bmbtblock_hi = ones: offline scrub didn't fail.
+keys[7].bmbtblock_hi = firstbit: offline scrub didn't fail.
+keys[7].bmbtblock_hi = middlebit: offline scrub didn't fail.
+keys[7].bmbtblock_hi = lastbit: offline scrub didn't fail.
+keys[7].bmbtblock_hi = add: offline scrub didn't fail.
+keys[7].bmbtblock_hi = sub: offline scrub didn't fail.
+keys[8].owner = zeroes: offline scrub didn't fail.
+keys[8].owner = lastbit: offline scrub didn't fail.
+keys[8].owner = sub: offline scrub didn't fail.
+keys[8].offset = zeroes: offline scrub didn't fail.
+keys[8].offset = lastbit: offline scrub didn't fail.
+keys[8].extentflag = ones: offline scrub didn't fail.
+keys[8].extentflag = firstbit: offline scrub didn't fail.
+keys[8].extentflag = middlebit: offline scrub didn't fail.
+keys[8].extentflag = lastbit: offline scrub didn't fail.
+keys[8].extentflag = add: offline scrub didn't fail.
+keys[8].extentflag = sub: offline scrub didn't fail.
+keys[8].startblock_hi = ones: offline scrub didn't fail.
+keys[8].startblock_hi = firstbit: offline scrub didn't fail.
+keys[8].startblock_hi = middlebit: offline scrub didn't fail.
+keys[8].startblock_hi = lastbit: offline scrub didn't fail.
+keys[8].startblock_hi = add: offline scrub didn't fail.
+keys[8].owner_hi = ones: offline scrub didn't fail.
+keys[8].owner_hi = firstbit: offline scrub didn't fail.
+keys[8].owner_hi = middlebit: offline scrub didn't fail.
+keys[8].owner_hi = lastbit: offline scrub didn't fail.
+keys[8].owner_hi = add: offline scrub didn't fail.
+keys[8].offset_hi = ones: offline scrub didn't fail.
+keys[8].offset_hi = firstbit: offline scrub didn't fail.
+keys[8].offset_hi = middlebit: offline scrub didn't fail.
+keys[8].offset_hi = add: offline scrub didn't fail.
+keys[8].offset_hi = sub: offline scrub didn't fail.
+keys[8].extentflag_hi = ones: offline scrub didn't fail.
+keys[8].extentflag_hi = firstbit: offline scrub didn't fail.
+keys[8].extentflag_hi = middlebit: offline scrub didn't fail.
+keys[8].extentflag_hi = lastbit: offline scrub didn't fail.
+keys[8].extentflag_hi = add: offline scrub didn't fail.
+keys[8].extentflag_hi = sub: offline scrub didn't fail.
+keys[8].attrfork_hi = ones: offline scrub didn't fail.
+keys[8].attrfork_hi = firstbit: offline scrub didn't fail.
+keys[8].attrfork_hi = middlebit: offline scrub didn't fail.
+keys[8].attrfork_hi = lastbit: offline scrub didn't fail.
+keys[8].attrfork_hi = add: offline scrub didn't fail.
+keys[8].attrfork_hi = sub: offline scrub didn't fail.
+keys[8].bmbtblock_hi = ones: offline scrub didn't fail.
+keys[8].bmbtblock_hi = firstbit: offline scrub didn't fail.
+keys[8].bmbtblock_hi = middlebit: offline scrub didn't fail.
+keys[8].bmbtblock_hi = lastbit: offline scrub didn't fail.
+keys[8].bmbtblock_hi = add: offline scrub didn't fail.
+keys[8].bmbtblock_hi = sub: offline scrub didn't fail.
+keys[9].owner = zeroes: offline scrub didn't fail.
+keys[9].owner = sub: offline scrub didn't fail.
+keys[9].offset = zeroes: offline scrub didn't fail.
+keys[9].offset = lastbit: offline scrub didn't fail.
+keys[9].extentflag = ones: offline scrub didn't fail.
+keys[9].extentflag = firstbit: offline scrub didn't fail.
+keys[9].extentflag = middlebit: offline scrub didn't fail.
+keys[9].extentflag = lastbit: offline scrub didn't fail.
+keys[9].extentflag = add: offline scrub didn't fail.
+keys[9].extentflag = sub: offline scrub didn't fail.
+keys[9].startblock_hi = ones: offline scrub didn't fail.
+keys[9].startblock_hi = firstbit: offline scrub didn't fail.
+keys[9].startblock_hi = middlebit: offline scrub didn't fail.
+keys[9].startblock_hi = lastbit: offline scrub didn't fail.
+keys[9].startblock_hi = add: offline scrub didn't fail.
+keys[9].owner_hi = ones: offline scrub didn't fail.
+keys[9].owner_hi = firstbit: offline scrub didn't fail.
+keys[9].owner_hi = middlebit: offline scrub didn't fail.
+keys[9].owner_hi = lastbit: offline scrub didn't fail.
+keys[9].owner_hi = add: offline scrub didn't fail.
+keys[9].offset_hi = ones: offline scrub didn't fail.
+keys[9].offset_hi = firstbit: offline scrub didn't fail.
+keys[9].offset_hi = middlebit: offline scrub didn't fail.
+keys[9].offset_hi = add: offline scrub didn't fail.
+keys[9].offset_hi = sub: offline scrub didn't fail.
+keys[9].extentflag_hi = ones: offline scrub didn't fail.
+keys[9].extentflag_hi = firstbit: offline scrub didn't fail.
+keys[9].extentflag_hi = middlebit: offline scrub didn't fail.
+keys[9].extentflag_hi = lastbit: offline scrub didn't fail.
+keys[9].extentflag_hi = add: offline scrub didn't fail.
+keys[9].extentflag_hi = sub: offline scrub didn't fail.
+keys[9].attrfork_hi = ones: offline scrub didn't fail.
+keys[9].attrfork_hi = firstbit: offline scrub didn't fail.
+keys[9].attrfork_hi = middlebit: offline scrub didn't fail.
+keys[9].attrfork_hi = lastbit: offline scrub didn't fail.
+keys[9].attrfork_hi = add: offline scrub didn't fail.
+keys[9].attrfork_hi = sub: offline scrub didn't fail.
+keys[9].bmbtblock_hi = ones: offline scrub didn't fail.
+keys[9].bmbtblock_hi = firstbit: offline scrub didn't fail.
+keys[9].bmbtblock_hi = middlebit: offline scrub didn't fail.
+keys[9].bmbtblock_hi = lastbit: offline scrub didn't fail.
+keys[9].bmbtblock_hi = add: offline scrub didn't fail.
+keys[9].bmbtblock_hi = sub: offline scrub didn't fail.
 Done fuzzing rmapbt keyptr
diff --git a/tests/xfs/372.out b/tests/xfs/372.out
index da95f3d5eb..45fcdfc61f 100644
--- a/tests/xfs/372.out
+++ b/tests/xfs/372.out
@@ -1,4 +1,9 @@
 QA output created by 372
 Format and populate
 Fuzz refcountbt
+leftsib = add: offline scrub didn't fail.
+rightsib = add: offline scrub didn't fail.
+keys[1].startblock = zeroes: offline scrub didn't fail.
+keys[1].startblock = lastbit: offline scrub didn't fail.
+keys[1].startblock = sub: offline scrub didn't fail.
 Done fuzzing refcountbt
diff --git a/tests/xfs/374.out b/tests/xfs/374.out
index 853d07a90b..116a4c17ec 100644
--- a/tests/xfs/374.out
+++ b/tests/xfs/374.out
@@ -2,4 +2,39 @@ QA output created by 374
 Format and populate
 Find btree-format dir inode
 Fuzz inode
+core.mode = middlebit: offline scrub didn't fail.
+core.mode = lastbit: offline scrub didn't fail.
+core.mode = add: offline scrub didn't fail.
+core.size = middlebit: offline scrub didn't fail.
+core.size = middlebit: online post-mod scrub failed (4).
+core.size = lastbit: offline scrub didn't fail.
+core.size = add: offline scrub didn't fail.
+core.size = sub: offline scrub didn't fail.
+core.rtinherit = ones: offline scrub didn't fail.
+core.rtinherit = firstbit: offline scrub didn't fail.
+core.rtinherit = middlebit: offline scrub didn't fail.
+core.rtinherit = lastbit: offline scrub didn't fail.
+core.rtinherit = add: offline scrub didn't fail.
+core.rtinherit = sub: offline scrub didn't fail.
+core.projinherit = ones: offline scrub didn't fail.
+core.projinherit = firstbit: offline scrub didn't fail.
+core.projinherit = middlebit: offline scrub didn't fail.
+core.projinherit = lastbit: offline scrub didn't fail.
+core.projinherit = add: offline scrub didn't fail.
+core.projinherit = sub: offline scrub didn't fail.
+core.nosymlinks = ones: offline scrub didn't fail.
+core.nosymlinks = firstbit: offline scrub didn't fail.
+core.nosymlinks = middlebit: offline scrub didn't fail.
+core.nosymlinks = lastbit: offline scrub didn't fail.
+core.nosymlinks = add: offline scrub didn't fail.
+core.nosymlinks = sub: offline scrub didn't fail.
+v3.change_count = zeroes: offline scrub didn't fail.
+v3.change_count = ones: offline scrub didn't fail.
+v3.change_count = firstbit: offline scrub didn't fail.
+v3.change_count = middlebit: offline scrub didn't fail.
+v3.change_count = lastbit: offline scrub didn't fail.
+v3.change_count = add: offline scrub didn't fail.
+v3.change_count = sub: offline scrub didn't fail.
+v3.flags2 = lastbit: offline scrub didn't fail.
+u3.bmbt.ptrs[1] = firstbit: offline scrub didn't fail.
 Done fuzzing inode
diff --git a/tests/xfs/376.out b/tests/xfs/376.out
index 40f360e97f..de52138584 100644
--- a/tests/xfs/376.out
+++ b/tests/xfs/376.out
@@ -2,4 +2,26 @@ QA output created by 376
 Format and populate
 Find extents-format file inode
 Fuzz inode
+core.mode = middlebit: offline scrub didn't fail.
+core.mode = lastbit: offline scrub didn't fail.
+core.mode = add: offline scrub didn't fail.
+core.size = zeroes: offline scrub didn't fail.
+core.size = middlebit: offline scrub didn't fail.
+core.size = lastbit: offline scrub didn't fail.
+core.size = add: offline scrub didn't fail.
+core.size = sub: offline scrub didn't fail.
+v3.change_count = zeroes: offline scrub didn't fail.
+v3.change_count = ones: offline scrub didn't fail.
+v3.change_count = firstbit: offline scrub didn't fail.
+v3.change_count = middlebit: offline scrub didn't fail.
+v3.change_count = lastbit: offline scrub didn't fail.
+v3.change_count = add: offline scrub didn't fail.
+v3.change_count = sub: offline scrub didn't fail.
+v3.flags2 = lastbit: offline scrub didn't fail.
+v3.reflink = ones: offline scrub didn't fail.
+v3.reflink = firstbit: offline scrub didn't fail.
+v3.reflink = middlebit: offline scrub didn't fail.
+v3.reflink = lastbit: offline scrub didn't fail.
+v3.reflink = add: offline scrub didn't fail.
+v3.reflink = sub: offline scrub didn't fail.
 Done fuzzing inode
diff --git a/tests/xfs/378.out b/tests/xfs/378.out
index f0b1c640d8..04a10ba1c4 100644
--- a/tests/xfs/378.out
+++ b/tests/xfs/378.out
@@ -2,4 +2,26 @@ QA output created by 378
 Format and populate
 Find btree-format file inode
 Fuzz inode
+core.mode = middlebit: offline scrub didn't fail.
+core.mode = lastbit: offline scrub didn't fail.
+core.mode = add: offline scrub didn't fail.
+core.size = zeroes: offline scrub didn't fail.
+core.size = middlebit: offline scrub didn't fail.
+core.size = lastbit: offline scrub didn't fail.
+core.size = add: offline scrub didn't fail.
+core.size = sub: offline scrub didn't fail.
+v3.change_count = zeroes: offline scrub didn't fail.
+v3.change_count = ones: offline scrub didn't fail.
+v3.change_count = firstbit: offline scrub didn't fail.
+v3.change_count = middlebit: offline scrub didn't fail.
+v3.change_count = lastbit: offline scrub didn't fail.
+v3.change_count = add: offline scrub didn't fail.
+v3.change_count = sub: offline scrub didn't fail.
+v3.flags2 = lastbit: offline scrub didn't fail.
+v3.reflink = ones: offline scrub didn't fail.
+v3.reflink = firstbit: offline scrub didn't fail.
+v3.reflink = middlebit: offline scrub didn't fail.
+v3.reflink = lastbit: offline scrub didn't fail.
+v3.reflink = add: offline scrub didn't fail.
+v3.reflink = sub: offline scrub didn't fail.
 Done fuzzing inode
diff --git a/tests/xfs/382.out b/tests/xfs/382.out
index 255bd382db..a20d560f74 100644
--- a/tests/xfs/382.out
+++ b/tests/xfs/382.out
@@ -2,4 +2,8 @@ QA output created by 382
 Format and populate
 Find symlink remote block
 Fuzz symlink remote block
+data = ones: offline scrub didn't fail.
+data = firstbit: offline scrub didn't fail.
+data = middlebit: offline scrub didn't fail.
+data = lastbit: offline scrub didn't fail.
 Done fuzzing symlink remote block
diff --git a/tests/xfs/384.out b/tests/xfs/384.out
index 6d0a6ae14a..3b11cb3f7d 100644
--- a/tests/xfs/384.out
+++ b/tests/xfs/384.out
@@ -2,4 +2,42 @@ QA output created by 384
 Format and populate
 Find inline-format dir inode
 Fuzz inline-format dir inode
+core.mode = middlebit: offline scrub didn't fail.
+core.mode = lastbit: offline scrub didn't fail.
+core.mode = add: offline scrub didn't fail.
+core.rtinherit = ones: offline scrub didn't fail.
+core.rtinherit = firstbit: offline scrub didn't fail.
+core.rtinherit = middlebit: offline scrub didn't fail.
+core.rtinherit = lastbit: offline scrub didn't fail.
+core.rtinherit = add: offline scrub didn't fail.
+core.rtinherit = sub: offline scrub didn't fail.
+core.projinherit = ones: offline scrub didn't fail.
+core.projinherit = firstbit: offline scrub didn't fail.
+core.projinherit = middlebit: offline scrub didn't fail.
+core.projinherit = lastbit: offline scrub didn't fail.
+core.projinherit = add: offline scrub didn't fail.
+core.projinherit = sub: offline scrub didn't fail.
+core.nosymlinks = ones: offline scrub didn't fail.
+core.nosymlinks = firstbit: offline scrub didn't fail.
+core.nosymlinks = middlebit: offline scrub didn't fail.
+core.nosymlinks = lastbit: offline scrub didn't fail.
+core.nosymlinks = add: offline scrub didn't fail.
+core.nosymlinks = sub: offline scrub didn't fail.
+v3.change_count = zeroes: offline scrub didn't fail.
+v3.change_count = ones: offline scrub didn't fail.
+v3.change_count = firstbit: offline scrub didn't fail.
+v3.change_count = middlebit: offline scrub didn't fail.
+v3.change_count = lastbit: offline scrub didn't fail.
+v3.change_count = add: offline scrub didn't fail.
+v3.change_count = sub: offline scrub didn't fail.
+v3.flags2 = lastbit: offline scrub didn't fail.
+v3.nrext64 = zeroes: offline scrub didn't fail.
+v3.nrext64 = firstbit: offline scrub didn't fail.
+v3.nrext64 = middlebit: offline scrub didn't fail.
+v3.nrext64 = lastbit: offline scrub didn't fail.
+v3.nrext64 = add: offline scrub didn't fail.
+v3.nrext64 = sub: offline scrub didn't fail.
+u3.sfdir3.list[1].offset = middlebit: offline scrub didn't fail.
+u3.sfdir3.list[1].offset = lastbit: offline scrub didn't fail.
+u3.sfdir3.list[1].offset = add: offline scrub didn't fail.
 Done fuzzing inline-format dir inode
diff --git a/tests/xfs/386.out b/tests/xfs/386.out
index a1f1afc8a6..9d9f9c6818 100644
--- a/tests/xfs/386.out
+++ b/tests/xfs/386.out
@@ -2,4 +2,32 @@ QA output created by 386
 Format and populate
 Find data-format dir block
 Fuzz data-format dir block
+bhdr.hdr.crc = zeroes: offline scrub didn't fail.
+bhdr.hdr.crc = ones: offline scrub didn't fail.
+bhdr.hdr.crc = firstbit: offline scrub didn't fail.
+bhdr.hdr.crc = middlebit: offline scrub didn't fail.
+bhdr.hdr.crc = lastbit: offline scrub didn't fail.
+bhdr.hdr.crc = add: offline scrub didn't fail.
+bhdr.hdr.crc = sub: offline scrub didn't fail.
+bhdr.hdr.owner = zeroes: offline re-scrub failed (1).
+bhdr.hdr.owner = zeroes: online post-mod scrub failed (1).
+bhdr.hdr.owner = zeroes: offline post-mod scrub failed (1).
+bhdr.hdr.owner = ones: offline re-scrub failed (1).
+bhdr.hdr.owner = ones: online post-mod scrub failed (1).
+bhdr.hdr.owner = ones: offline post-mod scrub failed (1).
+bhdr.hdr.owner = firstbit: offline re-scrub failed (1).
+bhdr.hdr.owner = firstbit: online post-mod scrub failed (1).
+bhdr.hdr.owner = firstbit: offline post-mod scrub failed (1).
+bhdr.hdr.owner = middlebit: offline re-scrub failed (1).
+bhdr.hdr.owner = middlebit: online post-mod scrub failed (1).
+bhdr.hdr.owner = middlebit: offline post-mod scrub failed (1).
+bhdr.hdr.owner = lastbit: offline re-scrub failed (1).
+bhdr.hdr.owner = lastbit: online post-mod scrub failed (1).
+bhdr.hdr.owner = lastbit: offline post-mod scrub failed (1).
+bhdr.hdr.owner = add: offline re-scrub failed (1).
+bhdr.hdr.owner = add: online post-mod scrub failed (1).
+bhdr.hdr.owner = add: offline post-mod scrub failed (1).
+bhdr.hdr.owner = sub: offline re-scrub failed (1).
+bhdr.hdr.owner = sub: online post-mod scrub failed (1).
+bhdr.hdr.owner = sub: offline post-mod scrub failed (1).
 Done fuzzing data-format dir block
diff --git a/tests/xfs/388.out b/tests/xfs/388.out
index 175d3b46f2..4848c6c9de 100644
--- a/tests/xfs/388.out
+++ b/tests/xfs/388.out
@@ -2,4 +2,539 @@ QA output created by 388
 Format and populate
 Find data-format dir block
 Fuzz data-format dir block
+dhdr.hdr.crc = zeroes: offline scrub didn't fail.
+dhdr.hdr.crc = ones: offline scrub didn't fail.
+dhdr.hdr.crc = firstbit: offline scrub didn't fail.
+dhdr.hdr.crc = middlebit: offline scrub didn't fail.
+dhdr.hdr.crc = lastbit: offline scrub didn't fail.
+dhdr.hdr.crc = add: offline scrub didn't fail.
+dhdr.hdr.crc = sub: offline scrub didn't fail.
+dhdr.hdr.bno = zeroes: offline re-scrub failed (1).
+dhdr.hdr.bno = zeroes: online post-mod scrub failed (1).
+dhdr.hdr.bno = zeroes: offline post-mod scrub failed (1).
+dhdr.hdr.bno = ones: offline re-scrub failed (1).
+dhdr.hdr.bno = ones: online post-mod scrub failed (1).
+dhdr.hdr.bno = ones: offline post-mod scrub failed (1).
+dhdr.hdr.bno = firstbit: offline re-scrub failed (1).
+dhdr.hdr.bno = firstbit: online post-mod scrub failed (1).
+dhdr.hdr.bno = firstbit: offline post-mod scrub failed (1).
+dhdr.hdr.bno = middlebit: offline re-scrub failed (1).
+dhdr.hdr.bno = middlebit: online post-mod scrub failed (1).
+dhdr.hdr.bno = middlebit: offline post-mod scrub failed (1).
+dhdr.hdr.bno = lastbit: offline re-scrub failed (1).
+dhdr.hdr.bno = lastbit: online post-mod scrub failed (1).
+dhdr.hdr.bno = lastbit: offline post-mod scrub failed (1).
+dhdr.hdr.bno = add: offline re-scrub failed (1).
+dhdr.hdr.bno = add: online post-mod scrub failed (1).
+dhdr.hdr.bno = add: offline post-mod scrub failed (1).
+dhdr.hdr.bno = sub: offline re-scrub failed (1).
+dhdr.hdr.bno = sub: online post-mod scrub failed (1).
+dhdr.hdr.bno = sub: offline post-mod scrub failed (1).
+dhdr.hdr.uuid = zeroes: offline re-scrub failed (1).
+dhdr.hdr.uuid = zeroes: online post-mod scrub failed (1).
+dhdr.hdr.uuid = zeroes: offline post-mod scrub failed (1).
+dhdr.hdr.uuid = ones: offline re-scrub failed (1).
+dhdr.hdr.uuid = ones: online post-mod scrub failed (1).
+dhdr.hdr.uuid = ones: offline post-mod scrub failed (1).
+dhdr.hdr.uuid = firstbit: offline re-scrub failed (1).
+dhdr.hdr.uuid = firstbit: online post-mod scrub failed (1).
+dhdr.hdr.uuid = firstbit: offline post-mod scrub failed (1).
+dhdr.hdr.uuid = middlebit: offline re-scrub failed (1).
+dhdr.hdr.uuid = middlebit: online post-mod scrub failed (1).
+dhdr.hdr.uuid = middlebit: offline post-mod scrub failed (1).
+dhdr.hdr.uuid = lastbit: offline re-scrub failed (1).
+dhdr.hdr.uuid = lastbit: online post-mod scrub failed (1).
+dhdr.hdr.uuid = lastbit: offline post-mod scrub failed (1).
+dhdr.hdr.owner = zeroes: offline re-scrub failed (1).
+dhdr.hdr.owner = zeroes: online post-mod scrub failed (1).
+dhdr.hdr.owner = zeroes: offline post-mod scrub failed (1).
+dhdr.hdr.owner = ones: offline re-scrub failed (1).
+dhdr.hdr.owner = ones: online post-mod scrub failed (1).
+dhdr.hdr.owner = ones: offline post-mod scrub failed (1).
+dhdr.hdr.owner = firstbit: offline re-scrub failed (1).
+dhdr.hdr.owner = firstbit: online post-mod scrub failed (1).
+dhdr.hdr.owner = firstbit: offline post-mod scrub failed (1).
+dhdr.hdr.owner = middlebit: offline re-scrub failed (1).
+dhdr.hdr.owner = middlebit: online post-mod scrub failed (1).
+dhdr.hdr.owner = middlebit: offline post-mod scrub failed (1).
+dhdr.hdr.owner = lastbit: offline re-scrub failed (1).
+dhdr.hdr.owner = lastbit: online post-mod scrub failed (1).
+dhdr.hdr.owner = lastbit: offline post-mod scrub failed (1).
+dhdr.hdr.owner = add: offline re-scrub failed (1).
+dhdr.hdr.owner = add: online post-mod scrub failed (1).
+dhdr.hdr.owner = add: offline post-mod scrub failed (1).
+dhdr.hdr.owner = sub: offline re-scrub failed (1).
+dhdr.hdr.owner = sub: online post-mod scrub failed (1).
+dhdr.hdr.owner = sub: offline post-mod scrub failed (1).
+du[0].inumber = ones: offline re-scrub failed (1).
+du[0].inumber = ones: online post-mod scrub failed (1).
+du[0].inumber = ones: offline post-mod scrub failed (1).
+du[0].inumber = sub: offline re-scrub failed (1).
+du[0].inumber = sub: online post-mod scrub failed (1).
+du[0].inumber = sub: offline post-mod scrub failed (1).
+du[0].namelen = zeroes: offline re-scrub failed (1).
+du[0].namelen = zeroes: online post-mod scrub failed (1).
+du[0].namelen = zeroes: offline post-mod scrub failed (1).
+du[0].namelen = ones: offline re-scrub failed (1).
+du[0].namelen = ones: online post-mod scrub failed (1).
+du[0].namelen = ones: offline post-mod scrub failed (1).
+du[0].namelen = firstbit: offline re-scrub failed (1).
+du[0].namelen = firstbit: online post-mod scrub failed (1).
+du[0].namelen = firstbit: offline post-mod scrub failed (1).
+du[0].namelen = middlebit: offline re-scrub failed (1).
+du[0].namelen = middlebit: online post-mod scrub failed (1).
+du[0].namelen = middlebit: offline post-mod scrub failed (1).
+du[0].namelen = lastbit: offline re-scrub failed (1).
+du[0].namelen = lastbit: online post-mod scrub failed (1).
+du[0].namelen = lastbit: offline post-mod scrub failed (1).
+du[0].namelen = add: offline re-scrub failed (1).
+du[0].namelen = add: online post-mod scrub failed (1).
+du[0].namelen = add: offline post-mod scrub failed (1).
+du[0].namelen = sub: offline re-scrub failed (1).
+du[0].namelen = sub: online post-mod scrub failed (1).
+du[0].namelen = sub: offline post-mod scrub failed (1).
+du[0].name = zeroes: offline re-scrub failed (1).
+du[0].name = zeroes: online post-mod scrub failed (1).
+du[0].name = zeroes: offline post-mod scrub failed (1).
+du[0].name = ones: offline re-scrub failed (1).
+du[0].name = ones: online post-mod scrub failed (1).
+du[0].name = ones: offline post-mod scrub failed (1).
+du[0].name = firstbit: offline re-scrub failed (1).
+du[0].name = firstbit: online post-mod scrub failed (1).
+du[0].name = firstbit: offline post-mod scrub failed (1).
+du[0].name = middlebit: offline re-scrub failed (1).
+du[0].name = middlebit: online post-mod scrub failed (1).
+du[0].name = middlebit: offline post-mod scrub failed (1).
+du[0].name = lastbit: offline re-scrub failed (1).
+du[0].name = lastbit: online post-mod scrub failed (1).
+du[0].name = lastbit: offline post-mod scrub failed (1).
+du[0].name = add: offline re-scrub failed (1).
+du[0].name = add: online post-mod scrub failed (1).
+du[0].name = add: offline post-mod scrub failed (1).
+du[0].name = sub: offline re-scrub failed (1).
+du[0].name = sub: online post-mod scrub failed (1).
+du[0].name = sub: offline post-mod scrub failed (1).
+du[0].tag = zeroes: offline re-scrub failed (1).
+du[0].tag = zeroes: online post-mod scrub failed (1).
+du[0].tag = zeroes: offline post-mod scrub failed (1).
+du[0].tag = ones: offline re-scrub failed (1).
+du[0].tag = ones: online post-mod scrub failed (1).
+du[0].tag = ones: offline post-mod scrub failed (1).
+du[0].tag = firstbit: offline re-scrub failed (1).
+du[0].tag = firstbit: online post-mod scrub failed (1).
+du[0].tag = firstbit: offline post-mod scrub failed (1).
+du[0].tag = middlebit: offline re-scrub failed (1).
+du[0].tag = middlebit: online post-mod scrub failed (1).
+du[0].tag = middlebit: offline post-mod scrub failed (1).
+du[0].tag = lastbit: offline re-scrub failed (1).
+du[0].tag = lastbit: online post-mod scrub failed (1).
+du[0].tag = lastbit: offline post-mod scrub failed (1).
+du[0].tag = add: offline re-scrub failed (1).
+du[0].tag = add: online post-mod scrub failed (1).
+du[0].tag = add: offline post-mod scrub failed (1).
+du[0].tag = sub: offline re-scrub failed (1).
+du[0].tag = sub: online post-mod scrub failed (1).
+du[0].tag = sub: offline post-mod scrub failed (1).
+du[1].inumber = ones: offline re-scrub failed (1).
+du[1].inumber = ones: online post-mod scrub failed (1).
+du[1].inumber = ones: offline post-mod scrub failed (1).
+du[1].inumber = sub: offline re-scrub failed (1).
+du[1].inumber = sub: online post-mod scrub failed (1).
+du[1].inumber = sub: offline post-mod scrub failed (1).
+du[1].namelen = ones: offline re-scrub failed (1).
+du[1].namelen = ones: online post-mod scrub failed (1).
+du[1].namelen = ones: offline post-mod scrub failed (1).
+du[1].namelen = firstbit: offline re-scrub failed (1).
+du[1].namelen = firstbit: online post-mod scrub failed (1).
+du[1].namelen = firstbit: offline post-mod scrub failed (1).
+du[1].namelen = middlebit: offline re-scrub failed (1).
+du[1].namelen = middlebit: online post-mod scrub failed (1).
+du[1].namelen = middlebit: offline post-mod scrub failed (1).
+du[1].namelen = add: offline re-scrub failed (1).
+du[1].namelen = add: online post-mod scrub failed (1).
+du[1].namelen = add: offline post-mod scrub failed (1).
+du[1].namelen = sub: offline re-scrub failed (1).
+du[1].namelen = sub: online post-mod scrub failed (1).
+du[1].namelen = sub: offline post-mod scrub failed (1).
+du[1].tag = zeroes: offline re-scrub failed (1).
+du[1].tag = zeroes: online post-mod scrub failed (1).
+du[1].tag = zeroes: offline post-mod scrub failed (1).
+du[1].tag = ones: offline re-scrub failed (1).
+du[1].tag = ones: online post-mod scrub failed (1).
+du[1].tag = ones: offline post-mod scrub failed (1).
+du[1].tag = firstbit: offline re-scrub failed (1).
+du[1].tag = firstbit: online post-mod scrub failed (1).
+du[1].tag = firstbit: offline post-mod scrub failed (1).
+du[1].tag = middlebit: offline re-scrub failed (1).
+du[1].tag = middlebit: online post-mod scrub failed (1).
+du[1].tag = middlebit: offline post-mod scrub failed (1).
+du[1].tag = lastbit: offline re-scrub failed (1).
+du[1].tag = lastbit: online post-mod scrub failed (1).
+du[1].tag = lastbit: offline post-mod scrub failed (1).
+du[1].tag = add: offline re-scrub failed (1).
+du[1].tag = add: online post-mod scrub failed (1).
+du[1].tag = add: offline post-mod scrub failed (1).
+du[1].tag = sub: offline re-scrub failed (1).
+du[1].tag = sub: online post-mod scrub failed (1).
+du[1].tag = sub: offline post-mod scrub failed (1).
+du[2].inumber = ones: offline re-scrub failed (1).
+du[2].inumber = ones: online post-mod scrub failed (1).
+du[2].inumber = ones: offline post-mod scrub failed (1).
+du[2].inumber = sub: offline re-scrub failed (1).
+du[2].inumber = sub: online post-mod scrub failed (1).
+du[2].inumber = sub: offline post-mod scrub failed (1).
+du[2].namelen = zeroes: offline re-scrub failed (1).
+du[2].namelen = zeroes: online post-mod scrub failed (1).
+du[2].namelen = zeroes: offline post-mod scrub failed (1).
+du[2].namelen = ones: offline re-scrub failed (1).
+du[2].namelen = ones: online post-mod scrub failed (1).
+du[2].namelen = ones: offline post-mod scrub failed (1).
+du[2].namelen = firstbit: offline re-scrub failed (1).
+du[2].namelen = firstbit: online post-mod scrub failed (1).
+du[2].namelen = firstbit: offline post-mod scrub failed (1).
+du[2].namelen = middlebit: offline re-scrub failed (1).
+du[2].namelen = middlebit: online post-mod scrub failed (1).
+du[2].namelen = middlebit: offline post-mod scrub failed (1).
+du[2].namelen = add: offline re-scrub failed (1).
+du[2].namelen = add: online post-mod scrub failed (1).
+du[2].namelen = add: offline post-mod scrub failed (1).
+du[2].namelen = sub: offline re-scrub failed (1).
+du[2].namelen = sub: online post-mod scrub failed (1).
+du[2].namelen = sub: offline post-mod scrub failed (1).
+du[2].tag = zeroes: offline re-scrub failed (1).
+du[2].tag = zeroes: online post-mod scrub failed (1).
+du[2].tag = zeroes: offline post-mod scrub failed (1).
+du[2].tag = ones: offline re-scrub failed (1).
+du[2].tag = ones: online post-mod scrub failed (1).
+du[2].tag = ones: offline post-mod scrub failed (1).
+du[2].tag = firstbit: offline re-scrub failed (1).
+du[2].tag = firstbit: online post-mod scrub failed (1).
+du[2].tag = firstbit: offline post-mod scrub failed (1).
+du[2].tag = middlebit: offline re-scrub failed (1).
+du[2].tag = middlebit: online post-mod scrub failed (1).
+du[2].tag = middlebit: offline post-mod scrub failed (1).
+du[2].tag = lastbit: offline re-scrub failed (1).
+du[2].tag = lastbit: online post-mod scrub failed (1).
+du[2].tag = lastbit: offline post-mod scrub failed (1).
+du[2].tag = add: offline re-scrub failed (1).
+du[2].tag = add: online post-mod scrub failed (1).
+du[2].tag = add: offline post-mod scrub failed (1).
+du[2].tag = sub: offline re-scrub failed (1).
+du[2].tag = sub: online post-mod scrub failed (1).
+du[2].tag = sub: offline post-mod scrub failed (1).
+du[3].inumber = ones: offline re-scrub failed (1).
+du[3].inumber = ones: online post-mod scrub failed (1).
+du[3].inumber = ones: offline post-mod scrub failed (1).
+du[3].inumber = sub: offline re-scrub failed (1).
+du[3].inumber = sub: online post-mod scrub failed (1).
+du[3].inumber = sub: offline post-mod scrub failed (1).
+du[3].namelen = zeroes: offline re-scrub failed (1).
+du[3].namelen = zeroes: online post-mod scrub failed (1).
+du[3].namelen = zeroes: offline post-mod scrub failed (1).
+du[3].namelen = ones: offline re-scrub failed (1).
+du[3].namelen = ones: online post-mod scrub failed (1).
+du[3].namelen = ones: offline post-mod scrub failed (1).
+du[3].namelen = firstbit: offline re-scrub failed (1).
+du[3].namelen = firstbit: online post-mod scrub failed (1).
+du[3].namelen = firstbit: offline post-mod scrub failed (1).
+du[3].namelen = middlebit: offline re-scrub failed (1).
+du[3].namelen = middlebit: online post-mod scrub failed (1).
+du[3].namelen = middlebit: offline post-mod scrub failed (1).
+du[3].namelen = add: offline re-scrub failed (1).
+du[3].namelen = add: online post-mod scrub failed (1).
+du[3].namelen = add: offline post-mod scrub failed (1).
+du[3].namelen = sub: offline re-scrub failed (1).
+du[3].namelen = sub: online post-mod scrub failed (1).
+du[3].namelen = sub: offline post-mod scrub failed (1).
+du[3].tag = zeroes: offline re-scrub failed (1).
+du[3].tag = zeroes: online post-mod scrub failed (1).
+du[3].tag = zeroes: offline post-mod scrub failed (1).
+du[3].tag = ones: offline re-scrub failed (1).
+du[3].tag = ones: online post-mod scrub failed (1).
+du[3].tag = ones: offline post-mod scrub failed (1).
+du[3].tag = firstbit: offline re-scrub failed (1).
+du[3].tag = firstbit: online post-mod scrub failed (1).
+du[3].tag = firstbit: offline post-mod scrub failed (1).
+du[3].tag = middlebit: offline re-scrub failed (1).
+du[3].tag = middlebit: online post-mod scrub failed (1).
+du[3].tag = middlebit: offline post-mod scrub failed (1).
+du[3].tag = lastbit: offline re-scrub failed (1).
+du[3].tag = lastbit: online post-mod scrub failed (1).
+du[3].tag = lastbit: offline post-mod scrub failed (1).
+du[3].tag = add: offline re-scrub failed (1).
+du[3].tag = add: online post-mod scrub failed (1).
+du[3].tag = add: offline post-mod scrub failed (1).
+du[3].tag = sub: offline re-scrub failed (1).
+du[3].tag = sub: online post-mod scrub failed (1).
+du[3].tag = sub: offline post-mod scrub failed (1).
+du[4].inumber = ones: offline re-scrub failed (1).
+du[4].inumber = ones: online post-mod scrub failed (1).
+du[4].inumber = ones: offline post-mod scrub failed (1).
+du[4].inumber = sub: offline re-scrub failed (1).
+du[4].inumber = sub: online post-mod scrub failed (1).
+du[4].inumber = sub: offline post-mod scrub failed (1).
+du[4].namelen = zeroes: offline re-scrub failed (1).
+du[4].namelen = zeroes: online post-mod scrub failed (1).
+du[4].namelen = zeroes: offline post-mod scrub failed (1).
+du[4].namelen = ones: offline re-scrub failed (1).
+du[4].namelen = ones: online post-mod scrub failed (1).
+du[4].namelen = ones: offline post-mod scrub failed (1).
+du[4].namelen = firstbit: offline re-scrub failed (1).
+du[4].namelen = firstbit: online post-mod scrub failed (1).
+du[4].namelen = firstbit: offline post-mod scrub failed (1).
+du[4].namelen = middlebit: offline re-scrub failed (1).
+du[4].namelen = middlebit: online post-mod scrub failed (1).
+du[4].namelen = middlebit: offline post-mod scrub failed (1).
+du[4].namelen = add: offline re-scrub failed (1).
+du[4].namelen = add: online post-mod scrub failed (1).
+du[4].namelen = add: offline post-mod scrub failed (1).
+du[4].namelen = sub: offline re-scrub failed (1).
+du[4].namelen = sub: online post-mod scrub failed (1).
+du[4].namelen = sub: offline post-mod scrub failed (1).
+du[4].tag = zeroes: offline re-scrub failed (1).
+du[4].tag = zeroes: online post-mod scrub failed (1).
+du[4].tag = zeroes: offline post-mod scrub failed (1).
+du[4].tag = ones: offline re-scrub failed (1).
+du[4].tag = ones: online post-mod scrub failed (1).
+du[4].tag = ones: offline post-mod scrub failed (1).
+du[4].tag = firstbit: offline re-scrub failed (1).
+du[4].tag = firstbit: online post-mod scrub failed (1).
+du[4].tag = firstbit: offline post-mod scrub failed (1).
+du[4].tag = middlebit: offline re-scrub failed (1).
+du[4].tag = middlebit: online post-mod scrub failed (1).
+du[4].tag = middlebit: offline post-mod scrub failed (1).
+du[4].tag = lastbit: offline re-scrub failed (1).
+du[4].tag = lastbit: online post-mod scrub failed (1).
+du[4].tag = lastbit: offline post-mod scrub failed (1).
+du[4].tag = add: offline re-scrub failed (1).
+du[4].tag = add: online post-mod scrub failed (1).
+du[4].tag = add: offline post-mod scrub failed (1).
+du[4].tag = sub: offline re-scrub failed (1).
+du[4].tag = sub: online post-mod scrub failed (1).
+du[4].tag = sub: offline post-mod scrub failed (1).
+du[5].inumber = ones: offline re-scrub failed (1).
+du[5].inumber = ones: online post-mod scrub failed (1).
+du[5].inumber = ones: offline post-mod scrub failed (1).
+du[5].inumber = sub: offline re-scrub failed (1).
+du[5].inumber = sub: online post-mod scrub failed (1).
+du[5].inumber = sub: offline post-mod scrub failed (1).
+du[5].namelen = zeroes: offline re-scrub failed (1).
+du[5].namelen = zeroes: online post-mod scrub failed (1).
+du[5].namelen = zeroes: offline post-mod scrub failed (1).
+du[5].namelen = ones: offline re-scrub failed (1).
+du[5].namelen = ones: online post-mod scrub failed (1).
+du[5].namelen = ones: offline post-mod scrub failed (1).
+du[5].namelen = firstbit: offline re-scrub failed (1).
+du[5].namelen = firstbit: online post-mod scrub failed (1).
+du[5].namelen = firstbit: offline post-mod scrub failed (1).
+du[5].namelen = middlebit: offline re-scrub failed (1).
+du[5].namelen = middlebit: online post-mod scrub failed (1).
+du[5].namelen = middlebit: offline post-mod scrub failed (1).
+du[5].namelen = add: offline re-scrub failed (1).
+du[5].namelen = add: online post-mod scrub failed (1).
+du[5].namelen = add: offline post-mod scrub failed (1).
+du[5].namelen = sub: offline re-scrub failed (1).
+du[5].namelen = sub: online post-mod scrub failed (1).
+du[5].namelen = sub: offline post-mod scrub failed (1).
+du[5].tag = zeroes: offline re-scrub failed (1).
+du[5].tag = zeroes: online post-mod scrub failed (1).
+du[5].tag = zeroes: offline post-mod scrub failed (1).
+du[5].tag = ones: offline re-scrub failed (1).
+du[5].tag = ones: online post-mod scrub failed (1).
+du[5].tag = ones: offline post-mod scrub failed (1).
+du[5].tag = firstbit: offline re-scrub failed (1).
+du[5].tag = firstbit: online post-mod scrub failed (1).
+du[5].tag = firstbit: offline post-mod scrub failed (1).
+du[5].tag = middlebit: offline re-scrub failed (1).
+du[5].tag = middlebit: online post-mod scrub failed (1).
+du[5].tag = middlebit: offline post-mod scrub failed (1).
+du[5].tag = lastbit: offline re-scrub failed (1).
+du[5].tag = lastbit: online post-mod scrub failed (1).
+du[5].tag = lastbit: offline post-mod scrub failed (1).
+du[5].tag = add: offline re-scrub failed (1).
+du[5].tag = add: online post-mod scrub failed (1).
+du[5].tag = add: offline post-mod scrub failed (1).
+du[5].tag = sub: offline re-scrub failed (1).
+du[5].tag = sub: online post-mod scrub failed (1).
+du[5].tag = sub: offline post-mod scrub failed (1).
+du[6].inumber = ones: offline re-scrub failed (1).
+du[6].inumber = ones: online post-mod scrub failed (1).
+du[6].inumber = ones: offline post-mod scrub failed (1).
+du[6].inumber = sub: offline re-scrub failed (1).
+du[6].inumber = sub: online post-mod scrub failed (1).
+du[6].inumber = sub: offline post-mod scrub failed (1).
+du[6].namelen = zeroes: offline re-scrub failed (1).
+du[6].namelen = zeroes: online post-mod scrub failed (1).
+du[6].namelen = zeroes: offline post-mod scrub failed (1).
+du[6].namelen = ones: offline re-scrub failed (1).
+du[6].namelen = ones: online post-mod scrub failed (1).
+du[6].namelen = ones: offline post-mod scrub failed (1).
+du[6].namelen = firstbit: offline re-scrub failed (1).
+du[6].namelen = firstbit: online post-mod scrub failed (1).
+du[6].namelen = firstbit: offline post-mod scrub failed (1).
+du[6].namelen = middlebit: offline re-scrub failed (1).
+du[6].namelen = middlebit: online post-mod scrub failed (1).
+du[6].namelen = middlebit: offline post-mod scrub failed (1).
+du[6].namelen = add: offline re-scrub failed (1).
+du[6].namelen = add: online post-mod scrub failed (1).
+du[6].namelen = add: offline post-mod scrub failed (1).
+du[6].namelen = sub: offline re-scrub failed (1).
+du[6].namelen = sub: online post-mod scrub failed (1).
+du[6].namelen = sub: offline post-mod scrub failed (1).
+du[6].tag = zeroes: offline re-scrub failed (1).
+du[6].tag = zeroes: online post-mod scrub failed (1).
+du[6].tag = zeroes: offline post-mod scrub failed (1).
+du[6].tag = ones: offline re-scrub failed (1).
+du[6].tag = ones: online post-mod scrub failed (1).
+du[6].tag = ones: offline post-mod scrub failed (1).
+du[6].tag = firstbit: offline re-scrub failed (1).
+du[6].tag = firstbit: online post-mod scrub failed (1).
+du[6].tag = firstbit: offline post-mod scrub failed (1).
+du[6].tag = middlebit: offline re-scrub failed (1).
+du[6].tag = middlebit: online post-mod scrub failed (1).
+du[6].tag = middlebit: offline post-mod scrub failed (1).
+du[6].tag = lastbit: offline re-scrub failed (1).
+du[6].tag = lastbit: online post-mod scrub failed (1).
+du[6].tag = lastbit: offline post-mod scrub failed (1).
+du[6].tag = add: offline re-scrub failed (1).
+du[6].tag = add: online post-mod scrub failed (1).
+du[6].tag = add: offline post-mod scrub failed (1).
+du[6].tag = sub: offline re-scrub failed (1).
+du[6].tag = sub: online post-mod scrub failed (1).
+du[6].tag = sub: offline post-mod scrub failed (1).
+du[7].inumber = ones: offline re-scrub failed (1).
+du[7].inumber = ones: online post-mod scrub failed (1).
+du[7].inumber = ones: offline post-mod scrub failed (1).
+du[7].inumber = sub: offline re-scrub failed (1).
+du[7].inumber = sub: online post-mod scrub failed (1).
+du[7].inumber = sub: offline post-mod scrub failed (1).
+du[7].namelen = zeroes: offline re-scrub failed (1).
+du[7].namelen = zeroes: online post-mod scrub failed (1).
+du[7].namelen = zeroes: offline post-mod scrub failed (1).
+du[7].namelen = ones: offline re-scrub failed (1).
+du[7].namelen = ones: online post-mod scrub failed (1).
+du[7].namelen = ones: offline post-mod scrub failed (1).
+du[7].namelen = firstbit: offline re-scrub failed (1).
+du[7].namelen = firstbit: online post-mod scrub failed (1).
+du[7].namelen = firstbit: offline post-mod scrub failed (1).
+du[7].namelen = middlebit: offline re-scrub failed (1).
+du[7].namelen = middlebit: online post-mod scrub failed (1).
+du[7].namelen = middlebit: offline post-mod scrub failed (1).
+du[7].namelen = add: offline re-scrub failed (1).
+du[7].namelen = add: online post-mod scrub failed (1).
+du[7].namelen = add: offline post-mod scrub failed (1).
+du[7].namelen = sub: offline re-scrub failed (1).
+du[7].namelen = sub: online post-mod scrub failed (1).
+du[7].namelen = sub: offline post-mod scrub failed (1).
+du[7].tag = zeroes: offline re-scrub failed (1).
+du[7].tag = zeroes: online post-mod scrub failed (1).
+du[7].tag = zeroes: offline post-mod scrub failed (1).
+du[7].tag = ones: offline re-scrub failed (1).
+du[7].tag = ones: online post-mod scrub failed (1).
+du[7].tag = ones: offline post-mod scrub failed (1).
+du[7].tag = firstbit: offline re-scrub failed (1).
+du[7].tag = firstbit: online post-mod scrub failed (1).
+du[7].tag = firstbit: offline post-mod scrub failed (1).
+du[7].tag = middlebit: offline re-scrub failed (1).
+du[7].tag = middlebit: online post-mod scrub failed (1).
+du[7].tag = middlebit: offline post-mod scrub failed (1).
+du[7].tag = lastbit: offline re-scrub failed (1).
+du[7].tag = lastbit: online post-mod scrub failed (1).
+du[7].tag = lastbit: offline post-mod scrub failed (1).
+du[7].tag = add: offline re-scrub failed (1).
+du[7].tag = add: online post-mod scrub failed (1).
+du[7].tag = add: offline post-mod scrub failed (1).
+du[7].tag = sub: offline re-scrub failed (1).
+du[7].tag = sub: online post-mod scrub failed (1).
+du[7].tag = sub: offline post-mod scrub failed (1).
+du[8].inumber = ones: offline re-scrub failed (1).
+du[8].inumber = ones: online post-mod scrub failed (1).
+du[8].inumber = ones: offline post-mod scrub failed (1).
+du[8].inumber = sub: offline re-scrub failed (1).
+du[8].inumber = sub: online post-mod scrub failed (1).
+du[8].inumber = sub: offline post-mod scrub failed (1).
+du[8].namelen = zeroes: offline re-scrub failed (1).
+du[8].namelen = zeroes: online post-mod scrub failed (1).
+du[8].namelen = zeroes: offline post-mod scrub failed (1).
+du[8].namelen = ones: offline re-scrub failed (1).
+du[8].namelen = ones: online post-mod scrub failed (1).
+du[8].namelen = ones: offline post-mod scrub failed (1).
+du[8].namelen = firstbit: offline re-scrub failed (1).
+du[8].namelen = firstbit: online post-mod scrub failed (1).
+du[8].namelen = firstbit: offline post-mod scrub failed (1).
+du[8].namelen = middlebit: offline re-scrub failed (1).
+du[8].namelen = middlebit: online post-mod scrub failed (1).
+du[8].namelen = middlebit: offline post-mod scrub failed (1).
+du[8].namelen = add: offline re-scrub failed (1).
+du[8].namelen = add: online post-mod scrub failed (1).
+du[8].namelen = add: offline post-mod scrub failed (1).
+du[8].namelen = sub: offline re-scrub failed (1).
+du[8].namelen = sub: online post-mod scrub failed (1).
+du[8].namelen = sub: offline post-mod scrub failed (1).
+du[8].tag = zeroes: offline re-scrub failed (1).
+du[8].tag = zeroes: online post-mod scrub failed (1).
+du[8].tag = zeroes: offline post-mod scrub failed (1).
+du[8].tag = ones: offline re-scrub failed (1).
+du[8].tag = ones: online post-mod scrub failed (1).
+du[8].tag = ones: offline post-mod scrub failed (1).
+du[8].tag = firstbit: offline re-scrub failed (1).
+du[8].tag = firstbit: online post-mod scrub failed (1).
+du[8].tag = firstbit: offline post-mod scrub failed (1).
+du[8].tag = middlebit: offline re-scrub failed (1).
+du[8].tag = middlebit: online post-mod scrub failed (1).
+du[8].tag = middlebit: offline post-mod scrub failed (1).
+du[8].tag = lastbit: offline re-scrub failed (1).
+du[8].tag = lastbit: online post-mod scrub failed (1).
+du[8].tag = lastbit: offline post-mod scrub failed (1).
+du[8].tag = add: offline re-scrub failed (1).
+du[8].tag = add: online post-mod scrub failed (1).
+du[8].tag = add: offline post-mod scrub failed (1).
+du[8].tag = sub: offline re-scrub failed (1).
+du[8].tag = sub: online post-mod scrub failed (1).
+du[8].tag = sub: offline post-mod scrub failed (1).
+du[9].inumber = ones: offline re-scrub failed (1).
+du[9].inumber = ones: online post-mod scrub failed (1).
+du[9].inumber = ones: offline post-mod scrub failed (1).
+du[9].inumber = sub: offline re-scrub failed (1).
+du[9].inumber = sub: online post-mod scrub failed (1).
+du[9].inumber = sub: offline post-mod scrub failed (1).
+du[9].namelen = zeroes: offline re-scrub failed (1).
+du[9].namelen = zeroes: online post-mod scrub failed (1).
+du[9].namelen = zeroes: offline post-mod scrub failed (1).
+du[9].namelen = ones: offline re-scrub failed (1).
+du[9].namelen = ones: online post-mod scrub failed (1).
+du[9].namelen = ones: offline post-mod scrub failed (1).
+du[9].namelen = firstbit: offline re-scrub failed (1).
+du[9].namelen = firstbit: online post-mod scrub failed (1).
+du[9].namelen = firstbit: offline post-mod scrub failed (1).
+du[9].namelen = middlebit: offline re-scrub failed (1).
+du[9].namelen = middlebit: online post-mod scrub failed (1).
+du[9].namelen = middlebit: offline post-mod scrub failed (1).
+du[9].namelen = add: offline re-scrub failed (1).
+du[9].namelen = add: online post-mod scrub failed (1).
+du[9].namelen = add: offline post-mod scrub failed (1).
+du[9].namelen = sub: offline re-scrub failed (1).
+du[9].namelen = sub: online post-mod scrub failed (1).
+du[9].namelen = sub: offline post-mod scrub failed (1).
+du[9].tag = zeroes: offline re-scrub failed (1).
+du[9].tag = zeroes: online post-mod scrub failed (1).
+du[9].tag = zeroes: offline post-mod scrub failed (1).
+du[9].tag = ones: offline re-scrub failed (1).
+du[9].tag = ones: online post-mod scrub failed (1).
+du[9].tag = ones: offline post-mod scrub failed (1).
+du[9].tag = firstbit: offline re-scrub failed (1).
+du[9].tag = firstbit: online post-mod scrub failed (1).
+du[9].tag = firstbit: offline post-mod scrub failed (1).
+du[9].tag = middlebit: offline re-scrub failed (1).
+du[9].tag = middlebit: online post-mod scrub failed (1).
+du[9].tag = middlebit: offline post-mod scrub failed (1).
+du[9].tag = lastbit: offline re-scrub failed (1).
+du[9].tag = lastbit: online post-mod scrub failed (1).
+du[9].tag = lastbit: offline post-mod scrub failed (1).
+du[9].tag = add: offline re-scrub failed (1).
+du[9].tag = add: online post-mod scrub failed (1).
+du[9].tag = add: offline post-mod scrub failed (1).
+du[9].tag = sub: offline re-scrub failed (1).
+du[9].tag = sub: online post-mod scrub failed (1).
+du[9].tag = sub: offline post-mod scrub failed (1).
 Done fuzzing data-format dir block
diff --git a/tests/xfs/392.out b/tests/xfs/392.out
index 9ff34805a8..8bc5d14cd2 100644
--- a/tests/xfs/392.out
+++ b/tests/xfs/392.out
@@ -2,4 +2,11 @@ QA output created by 392
 Format and populate
 Find leafn-format dir block
 Fuzz leafn-format dir block
+lhdr.info.crc = zeroes: offline scrub didn't fail.
+lhdr.info.crc = ones: offline scrub didn't fail.
+lhdr.info.crc = firstbit: offline scrub didn't fail.
+lhdr.info.crc = middlebit: offline scrub didn't fail.
+lhdr.info.crc = lastbit: offline scrub didn't fail.
+lhdr.info.crc = add: offline scrub didn't fail.
+lhdr.info.crc = sub: offline scrub didn't fail.
 Done fuzzing leafn-format dir block
diff --git a/tests/xfs/394.out b/tests/xfs/394.out
index bc50b85217..5c26f64289 100644
--- a/tests/xfs/394.out
+++ b/tests/xfs/394.out
@@ -2,4 +2,16 @@ QA output created by 394
 Format and populate
 Find node-format dir block
 Fuzz node-format dir block
+nhdr.info.hdr.back = ones: offline scrub didn't fail.
+nhdr.info.hdr.back = ones: online post-mod scrub failed (1).
+nhdr.info.hdr.back = firstbit: offline scrub didn't fail.
+nhdr.info.hdr.back = firstbit: online post-mod scrub failed (1).
+nhdr.info.hdr.back = middlebit: offline scrub didn't fail.
+nhdr.info.hdr.back = middlebit: online post-mod scrub failed (1).
+nhdr.info.hdr.back = lastbit: offline scrub didn't fail.
+nhdr.info.hdr.back = lastbit: online post-mod scrub failed (1).
+nhdr.info.hdr.back = add: offline scrub didn't fail.
+nhdr.info.hdr.back = add: online post-mod scrub failed (1).
+nhdr.info.hdr.back = sub: offline scrub didn't fail.
+nhdr.info.hdr.back = sub: online post-mod scrub failed (1).
 Done fuzzing node-format dir block
diff --git a/tests/xfs/398.out b/tests/xfs/398.out
index 63c899d2e5..11bac3af85 100644
--- a/tests/xfs/398.out
+++ b/tests/xfs/398.out
@@ -2,4 +2,42 @@ QA output created by 398
 Format and populate
 Find inline-format attr inode
 Fuzz inline-format attr inode
+core.mode = middlebit: offline scrub didn't fail.
+core.mode = lastbit: offline scrub didn't fail.
+core.mode = add: offline scrub didn't fail.
+core.size = middlebit: offline scrub didn't fail.
+core.size = lastbit: offline scrub didn't fail.
+core.size = add: offline scrub didn't fail.
+v3.change_count = zeroes: offline scrub didn't fail.
+v3.change_count = ones: offline scrub didn't fail.
+v3.change_count = firstbit: offline scrub didn't fail.
+v3.change_count = middlebit: offline scrub didn't fail.
+v3.change_count = lastbit: offline scrub didn't fail.
+v3.change_count = add: offline scrub didn't fail.
+v3.change_count = sub: offline scrub didn't fail.
+v3.flags2 = lastbit: offline scrub didn't fail.
+v3.reflink = ones: offline scrub didn't fail.
+v3.reflink = firstbit: offline scrub didn't fail.
+v3.reflink = middlebit: offline scrub didn't fail.
+v3.reflink = lastbit: offline scrub didn't fail.
+v3.reflink = add: offline scrub didn't fail.
+v3.reflink = sub: offline scrub didn't fail.
+v3.nrext64 = zeroes: offline scrub didn't fail.
+v3.nrext64 = firstbit: offline scrub didn't fail.
+v3.nrext64 = middlebit: offline scrub didn't fail.
+v3.nrext64 = lastbit: offline scrub didn't fail.
+v3.nrext64 = add: offline scrub didn't fail.
+v3.nrext64 = sub: offline scrub didn't fail.
+a.sfattr.list[1].name = ones: offline scrub didn't fail.
+a.sfattr.list[1].name = firstbit: offline scrub didn't fail.
+a.sfattr.list[1].name = middlebit: offline scrub didn't fail.
+a.sfattr.list[1].name = lastbit: offline scrub didn't fail.
+a.sfattr.list[1].name = add: offline scrub didn't fail.
+a.sfattr.list[1].name = sub: offline scrub didn't fail.
+a.sfattr.list[2].name = ones: offline scrub didn't fail.
+a.sfattr.list[2].name = firstbit: offline scrub didn't fail.
+a.sfattr.list[2].name = middlebit: offline scrub didn't fail.
+a.sfattr.list[2].name = lastbit: offline scrub didn't fail.
+a.sfattr.list[2].name = add: offline scrub didn't fail.
+a.sfattr.list[2].name = sub: offline scrub didn't fail.
 Done fuzzing inline-format attr inode
diff --git a/tests/xfs/400.out b/tests/xfs/400.out
index 6ac33ef2c5..9a0555448e 100644
--- a/tests/xfs/400.out
+++ b/tests/xfs/400.out
@@ -2,4 +2,30 @@ QA output created by 400
 Format and populate
 Find leaf-format attr block
 Fuzz leaf-format attr block
+hdr.info.crc = zeroes: offline scrub didn't fail.
+hdr.info.crc = ones: offline scrub didn't fail.
+hdr.info.crc = firstbit: offline scrub didn't fail.
+hdr.info.crc = middlebit: offline scrub didn't fail.
+hdr.info.crc = lastbit: offline scrub didn't fail.
+hdr.info.crc = add: offline scrub didn't fail.
+hdr.info.crc = sub: offline scrub didn't fail.
+hdr.holes = ones: offline scrub didn't fail.
+hdr.holes = firstbit: offline scrub didn't fail.
+hdr.holes = middlebit: offline scrub didn't fail.
+hdr.holes = lastbit: offline scrub didn't fail.
+hdr.holes = add: offline scrub didn't fail.
+hdr.holes = sub: offline scrub didn't fail.
+hdr.freemap[0].base = zeroes: offline scrub didn't fail.
+hdr.freemap[0].base = zeroes: online post-mod scrub failed (1).
+hdr.freemap[0].base = middlebit: offline scrub didn't fail.
+hdr.freemap[0].base = middlebit: online post-mod scrub failed (1).
+hdr.freemap[0].size = zeroes: offline scrub didn't fail.
+hdr.freemap[0].size = middlebit: offline scrub didn't fail.
+hdr.freemap[0].size = middlebit: online post-mod scrub failed (1).
+hdr.freemap[1].base = middlebit: offline scrub didn't fail.
+hdr.freemap[1].size = middlebit: offline scrub didn't fail.
+hdr.freemap[1].size = middlebit: online post-mod scrub failed (1).
+hdr.freemap[2].base = middlebit: offline scrub didn't fail.
+hdr.freemap[2].size = middlebit: offline scrub didn't fail.
+hdr.freemap[2].size = middlebit: online post-mod scrub failed (1).
 Done fuzzing leaf-format attr block
diff --git a/tests/xfs/402.out b/tests/xfs/402.out
index 94e89f4c87..b7e36901d1 100644
--- a/tests/xfs/402.out
+++ b/tests/xfs/402.out
@@ -2,4 +2,11 @@ QA output created by 402
 Format and populate
 Find node-format attr block
 Fuzz node-format attr block
+hdr.info.crc = zeroes: offline scrub didn't fail.
+hdr.info.crc = ones: offline scrub didn't fail.
+hdr.info.crc = firstbit: offline scrub didn't fail.
+hdr.info.crc = middlebit: offline scrub didn't fail.
+hdr.info.crc = lastbit: offline scrub didn't fail.
+hdr.info.crc = add: offline scrub didn't fail.
+hdr.info.crc = sub: offline scrub didn't fail.
 Done fuzzing node-format attr block
diff --git a/tests/xfs/404.out b/tests/xfs/404.out
index 30ddbd87c8..45d47248e9 100644
--- a/tests/xfs/404.out
+++ b/tests/xfs/404.out
@@ -2,4 +2,37 @@ QA output created by 404
 Format and populate
 Find external attr block
 Fuzz external attr block
+hdr.offset = ones: offline scrub didn't fail.
+hdr.offset = ones: online post-mod scrub failed (1).
+hdr.offset = middlebit: offline scrub didn't fail.
+hdr.offset = middlebit: online post-mod scrub failed (1).
+hdr.offset = lastbit: offline scrub didn't fail.
+hdr.offset = lastbit: online post-mod scrub failed (1).
+hdr.offset = add: offline scrub didn't fail.
+hdr.offset = add: online post-mod scrub failed (1).
+hdr.offset = sub: offline scrub didn't fail.
+hdr.offset = sub: online post-mod scrub failed (1).
+hdr.bytes = zeroes: offline scrub didn't fail.
+hdr.bytes = zeroes: online post-mod scrub failed (1).
+hdr.bytes = lastbit: offline scrub didn't fail.
+hdr.bytes = lastbit: online post-mod scrub failed (1).
+hdr.bytes = sub: offline scrub didn't fail.
+hdr.bytes = sub: online post-mod scrub failed (1).
+hdr.owner = ones: offline scrub didn't fail.
+hdr.owner = ones: online post-mod scrub failed (1).
+hdr.owner = firstbit: offline scrub didn't fail.
+hdr.owner = firstbit: online post-mod scrub failed (1).
+hdr.owner = middlebit: offline scrub didn't fail.
+hdr.owner = middlebit: online post-mod scrub failed (1).
+hdr.owner = lastbit: offline scrub didn't fail.
+hdr.owner = lastbit: online post-mod scrub failed (1).
+hdr.owner = add: offline scrub didn't fail.
+hdr.owner = add: online post-mod scrub failed (1).
+hdr.owner = sub: offline scrub didn't fail.
+hdr.owner = sub: online post-mod scrub failed (1).
+data = zeroes: offline scrub didn't fail.
+data = ones: offline scrub didn't fail.
+data = firstbit: offline scrub didn't fail.
+data = middlebit: offline scrub didn't fail.
+data = lastbit: offline scrub didn't fail.
 Done fuzzing external attr block
diff --git a/tests/xfs/410.out b/tests/xfs/410.out
index c43ae75efd..47a9eab8f9 100644
--- a/tests/xfs/410.out
+++ b/tests/xfs/410.out
@@ -1,4 +1,10 @@
 QA output created by 410
 Format and populate
 Fuzz refcountbt
+numrecs = lastbit: offline scrub didn't fail.
+leftsib = add: offline scrub didn't fail.
+rightsib = ones: offline scrub didn't fail.
+rightsib = middlebit: offline scrub didn't fail.
+rightsib = lastbit: offline scrub didn't fail.
+rightsib = add: offline scrub didn't fail.
 Done fuzzing refcountbt
diff --git a/tests/xfs/412.out b/tests/xfs/412.out
index b93eec2262..550ca4e85c 100644
--- a/tests/xfs/412.out
+++ b/tests/xfs/412.out
@@ -2,4 +2,25 @@ QA output created by 412
 Format and populate
 Find btree-format attr inode
 Fuzz inode
+core.mode = middlebit: offline scrub didn't fail.
+core.mode = lastbit: offline scrub didn't fail.
+core.mode = add: offline scrub didn't fail.
+core.size = middlebit: offline scrub didn't fail.
+core.size = lastbit: offline scrub didn't fail.
+core.size = add: offline scrub didn't fail.
+v3.change_count = zeroes: offline scrub didn't fail.
+v3.change_count = ones: offline scrub didn't fail.
+v3.change_count = firstbit: offline scrub didn't fail.
+v3.change_count = middlebit: offline scrub didn't fail.
+v3.change_count = lastbit: offline scrub didn't fail.
+v3.change_count = add: offline scrub didn't fail.
+v3.change_count = sub: offline scrub didn't fail.
+v3.flags2 = lastbit: offline scrub didn't fail.
+v3.reflink = ones: offline scrub didn't fail.
+v3.reflink = firstbit: offline scrub didn't fail.
+v3.reflink = middlebit: offline scrub didn't fail.
+v3.reflink = lastbit: offline scrub didn't fail.
+v3.reflink = add: offline scrub didn't fail.
+v3.reflink = sub: offline scrub didn't fail.
+a.bmbt.ptrs[1] = firstbit: offline scrub didn't fail.
 Done fuzzing inode
diff --git a/tests/xfs/414.out b/tests/xfs/414.out
index 3d6e4d2f5e..107c625114 100644
--- a/tests/xfs/414.out
+++ b/tests/xfs/414.out
@@ -2,4 +2,27 @@ QA output created by 414
 Format and populate
 Find blockdev inode
 Fuzz inode
+core.mode = middlebit: offline scrub didn't fail.
+core.mode = lastbit: offline scrub didn't fail.
+core.mode = add: offline scrub didn't fail.
+v3.change_count = zeroes: offline scrub didn't fail.
+v3.change_count = ones: offline scrub didn't fail.
+v3.change_count = firstbit: offline scrub didn't fail.
+v3.change_count = middlebit: offline scrub didn't fail.
+v3.change_count = lastbit: offline scrub didn't fail.
+v3.change_count = add: offline scrub didn't fail.
+v3.change_count = sub: offline scrub didn't fail.
+v3.nrext64 = zeroes: offline scrub didn't fail.
+v3.nrext64 = firstbit: offline scrub didn't fail.
+v3.nrext64 = middlebit: offline scrub didn't fail.
+v3.nrext64 = lastbit: offline scrub didn't fail.
+v3.nrext64 = add: offline scrub didn't fail.
+v3.nrext64 = sub: offline scrub didn't fail.
+u3.dev = zeroes: offline scrub didn't fail.
+u3.dev = ones: offline scrub didn't fail.
+u3.dev = firstbit: offline scrub didn't fail.
+u3.dev = middlebit: offline scrub didn't fail.
+u3.dev = lastbit: offline scrub didn't fail.
+u3.dev = add: offline scrub didn't fail.
+u3.dev = sub: offline scrub didn't fail.
 Done fuzzing inode
diff --git a/tests/xfs/416.out b/tests/xfs/416.out
index d17d2f73a1..9abc7867da 100644
--- a/tests/xfs/416.out
+++ b/tests/xfs/416.out
@@ -2,4 +2,26 @@ QA output created by 416
 Format and populate
 Find local-format symlink inode
 Fuzz inode
+core.mode = middlebit: offline scrub didn't fail.
+core.mode = lastbit: offline scrub didn't fail.
+core.mode = add: offline scrub didn't fail.
+v3.change_count = zeroes: offline scrub didn't fail.
+v3.change_count = ones: offline scrub didn't fail.
+v3.change_count = firstbit: offline scrub didn't fail.
+v3.change_count = middlebit: offline scrub didn't fail.
+v3.change_count = lastbit: offline scrub didn't fail.
+v3.change_count = add: offline scrub didn't fail.
+v3.change_count = sub: offline scrub didn't fail.
+v3.nrext64 = zeroes: offline scrub didn't fail.
+v3.nrext64 = firstbit: offline scrub didn't fail.
+v3.nrext64 = middlebit: offline scrub didn't fail.
+v3.nrext64 = lastbit: offline scrub didn't fail.
+v3.nrext64 = add: offline scrub didn't fail.
+v3.nrext64 = sub: offline scrub didn't fail.
+u3.symlink = ones: offline scrub didn't fail.
+u3.symlink = firstbit: offline scrub didn't fail.
+u3.symlink = middlebit: offline scrub didn't fail.
+u3.symlink = lastbit: offline scrub didn't fail.
+u3.symlink = add: offline scrub didn't fail.
+u3.symlink = sub: offline scrub didn't fail.
 Done fuzzing inode
diff --git a/tests/xfs/418.out b/tests/xfs/418.out
index 9051605b9c..ae181693a1 100644
--- a/tests/xfs/418.out
+++ b/tests/xfs/418.out
@@ -1,4 +1,94 @@
 QA output created by 418
 Format and populate
 Fuzz superblock
+uuid = zeroes: offline scrub didn't fail.
+uuid = ones: offline scrub didn't fail.
+uuid = firstbit: offline scrub didn't fail.
+uuid = middlebit: offline scrub didn't fail.
+uuid = lastbit: offline scrub didn't fail.
+rootino = zeroes: offline scrub didn't fail.
+rootino = ones: offline scrub didn't fail.
+rootino = firstbit: offline scrub didn't fail.
+rootino = middlebit: offline scrub didn't fail.
+rootino = lastbit: offline scrub didn't fail.
+rootino = add: offline scrub didn't fail.
+rootino = sub: offline scrub didn't fail.
+metadirino = zeroes: offline scrub didn't fail.
+metadirino = firstbit: offline scrub didn't fail.
+metadirino = middlebit: offline scrub didn't fail.
+metadirino = lastbit: offline scrub didn't fail.
+metadirino = add: offline scrub didn't fail.
+metadirino = sub: offline scrub didn't fail.
+rgblocks = middlebit: offline scrub didn't fail.
+rgblocks = lastbit: offline scrub didn't fail.
+rgblocks = add: offline scrub didn't fail.
+rgblocks = sub: offline scrub didn't fail.
+fname = ones: offline scrub didn't fail.
+fname = firstbit: offline scrub didn't fail.
+fname = middlebit: offline scrub didn't fail.
+fname = lastbit: offline scrub didn't fail.
+inprogress = zeroes: offline scrub didn't fail.
+inprogress = ones: offline scrub didn't fail.
+inprogress = firstbit: offline scrub didn't fail.
+inprogress = middlebit: offline scrub didn't fail.
+inprogress = lastbit: offline scrub didn't fail.
+inprogress = add: offline scrub didn't fail.
+inprogress = sub: offline scrub didn't fail.
+imax_pct = zeroes: offline scrub didn't fail.
+imax_pct = middlebit: offline scrub didn't fail.
+imax_pct = lastbit: offline scrub didn't fail.
+icount = ones: offline scrub didn't fail.
+icount = firstbit: offline scrub didn't fail.
+icount = middlebit: offline scrub didn't fail.
+icount = lastbit: offline scrub didn't fail.
+icount = add: offline scrub didn't fail.
+icount = sub: offline scrub didn't fail.
+ifree = ones: offline scrub didn't fail.
+ifree = firstbit: offline scrub didn't fail.
+ifree = middlebit: offline scrub didn't fail.
+ifree = lastbit: offline scrub didn't fail.
+ifree = add: offline scrub didn't fail.
+ifree = sub: offline scrub didn't fail.
+fdblocks = zeroes: offline scrub didn't fail.
+fdblocks = ones: offline scrub didn't fail.
+fdblocks = firstbit: offline scrub didn't fail.
+fdblocks = middlebit: offline scrub didn't fail.
+fdblocks = lastbit: offline scrub didn't fail.
+fdblocks = add: offline scrub didn't fail.
+fdblocks = sub: offline scrub didn't fail.
+shared_vn = ones: offline scrub didn't fail.
+shared_vn = ones: online post-mod scrub failed (1).
+shared_vn = firstbit: offline scrub didn't fail.
+shared_vn = firstbit: online post-mod scrub failed (1).
+shared_vn = middlebit: offline scrub didn't fail.
+shared_vn = middlebit: online post-mod scrub failed (1).
+shared_vn = lastbit: offline scrub didn't fail.
+shared_vn = lastbit: online post-mod scrub failed (1).
+shared_vn = add: offline scrub didn't fail.
+shared_vn = add: online post-mod scrub failed (1).
+shared_vn = sub: offline scrub didn't fail.
+shared_vn = sub: online post-mod scrub failed (1).
+dirblklog = lastbit: offline scrub didn't fail.
+dirblklog = lastbit: online post-mod scrub failed (1).
+logsunit = zeroes: offline scrub didn't fail.
+logsunit = zeroes: online post-mod scrub failed (1).
+logsunit = lastbit: offline scrub didn't fail.
+logsunit = lastbit: online post-mod scrub failed (1).
+bad_features2 = zeroes: offline scrub didn't fail.
+bad_features2 = ones: offline scrub didn't fail.
+bad_features2 = firstbit: offline scrub didn't fail.
+bad_features2 = middlebit: offline scrub didn't fail.
+bad_features2 = lastbit: offline scrub didn't fail.
+bad_features2 = add: offline scrub didn't fail.
+bad_features2 = sub: offline scrub didn't fail.
+features_incompat = sub: offline repair failed (1).
+features_incompat = sub: offline re-scrub failed (1).
+features_incompat = sub: online post-mod scrub failed (1).
+features_incompat = sub: offline post-mod scrub failed (1).
+features_log_incompat = ones: offline scrub didn't fail.
+features_log_incompat = firstbit: offline scrub didn't fail.
+features_log_incompat = middlebit: offline scrub didn't fail.
+features_log_incompat = lastbit: offline scrub didn't fail.
+features_log_incompat = add: offline scrub didn't fail.
+features_log_incompat = sub: offline scrub didn't fail.
 Done fuzzing superblock
diff --git a/tests/xfs/425.out b/tests/xfs/425.out
index 14445b44c0..ddeb2ba6bb 100644
--- a/tests/xfs/425.out
+++ b/tests/xfs/425.out
@@ -1,4 +1,262 @@
 QA output created by 425
 Format and populate
 Fuzz user 0 dquot
+diskdq.blk_hardlimit = ones: offline scrub didn't fail.
+diskdq.blk_hardlimit = firstbit: offline scrub didn't fail.
+diskdq.blk_hardlimit = middlebit: offline scrub didn't fail.
+diskdq.blk_hardlimit = lastbit: offline scrub didn't fail.
+diskdq.blk_hardlimit = add: offline scrub didn't fail.
+diskdq.blk_hardlimit = sub: offline scrub didn't fail.
+diskdq.blk_softlimit = ones: offline scrub didn't fail.
+diskdq.blk_softlimit = ones: online post-mod scrub failed (1).
+diskdq.blk_softlimit = firstbit: offline scrub didn't fail.
+diskdq.blk_softlimit = firstbit: online post-mod scrub failed (1).
+diskdq.blk_softlimit = middlebit: offline scrub didn't fail.
+diskdq.blk_softlimit = middlebit: online post-mod scrub failed (1).
+diskdq.blk_softlimit = lastbit: offline scrub didn't fail.
+diskdq.blk_softlimit = lastbit: online post-mod scrub failed (1).
+diskdq.blk_softlimit = add: offline scrub didn't fail.
+diskdq.blk_softlimit = add: online post-mod scrub failed (1).
+diskdq.blk_softlimit = sub: offline scrub didn't fail.
+diskdq.blk_softlimit = sub: online post-mod scrub failed (1).
+diskdq.ino_hardlimit = ones: offline scrub didn't fail.
+diskdq.ino_hardlimit = firstbit: offline scrub didn't fail.
+diskdq.ino_hardlimit = middlebit: offline scrub didn't fail.
+diskdq.ino_hardlimit = lastbit: offline scrub didn't fail.
+diskdq.ino_hardlimit = add: offline scrub didn't fail.
+diskdq.ino_hardlimit = sub: offline scrub didn't fail.
+diskdq.ino_softlimit = ones: offline scrub didn't fail.
+diskdq.ino_softlimit = ones: online post-mod scrub failed (1).
+diskdq.ino_softlimit = firstbit: offline scrub didn't fail.
+diskdq.ino_softlimit = firstbit: online post-mod scrub failed (1).
+diskdq.ino_softlimit = middlebit: offline scrub didn't fail.
+diskdq.ino_softlimit = middlebit: online post-mod scrub failed (1).
+diskdq.ino_softlimit = lastbit: offline scrub didn't fail.
+diskdq.ino_softlimit = lastbit: online post-mod scrub failed (1).
+diskdq.ino_softlimit = add: offline scrub didn't fail.
+diskdq.ino_softlimit = add: online post-mod scrub failed (1).
+diskdq.ino_softlimit = sub: offline scrub didn't fail.
+diskdq.ino_softlimit = sub: online post-mod scrub failed (1).
+diskdq.itimer = ones: offline scrub didn't fail.
+diskdq.itimer = firstbit: offline scrub didn't fail.
+diskdq.itimer = middlebit: offline scrub didn't fail.
+diskdq.itimer = lastbit: offline scrub didn't fail.
+diskdq.itimer = add: offline scrub didn't fail.
+diskdq.itimer = sub: offline scrub didn't fail.
+diskdq.btimer = ones: offline scrub didn't fail.
+diskdq.btimer = firstbit: offline scrub didn't fail.
+diskdq.btimer = middlebit: offline scrub didn't fail.
+diskdq.btimer = lastbit: offline scrub didn't fail.
+diskdq.btimer = add: offline scrub didn't fail.
+diskdq.btimer = sub: offline scrub didn't fail.
+diskdq.rtb_hardlimit = ones: offline scrub didn't fail.
+diskdq.rtb_hardlimit = firstbit: offline scrub didn't fail.
+diskdq.rtb_hardlimit = middlebit: offline scrub didn't fail.
+diskdq.rtb_hardlimit = lastbit: offline scrub didn't fail.
+diskdq.rtb_hardlimit = add: offline scrub didn't fail.
+diskdq.rtb_hardlimit = sub: offline scrub didn't fail.
+diskdq.rtb_softlimit = ones: offline scrub didn't fail.
+diskdq.rtb_softlimit = ones: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = firstbit: offline scrub didn't fail.
+diskdq.rtb_softlimit = firstbit: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = middlebit: offline scrub didn't fail.
+diskdq.rtb_softlimit = middlebit: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = lastbit: offline scrub didn't fail.
+diskdq.rtb_softlimit = lastbit: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = add: offline scrub didn't fail.
+diskdq.rtb_softlimit = add: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = sub: offline scrub didn't fail.
+diskdq.rtb_softlimit = sub: online post-mod scrub failed (1).
+diskdq.rtbtimer = ones: offline scrub didn't fail.
+diskdq.rtbtimer = firstbit: offline scrub didn't fail.
+diskdq.rtbtimer = middlebit: offline scrub didn't fail.
+diskdq.rtbtimer = lastbit: offline scrub didn't fail.
+diskdq.rtbtimer = add: offline scrub didn't fail.
+diskdq.rtbtimer = sub: offline scrub didn't fail.
+Done fuzzing dquot
+Fuzz user 4242 dquot
+diskdq.type = firstbit: offline scrub didn't fail.
+diskdq.blk_hardlimit = ones: offline scrub didn't fail.
+diskdq.blk_hardlimit = firstbit: offline scrub didn't fail.
+diskdq.blk_hardlimit = middlebit: offline scrub didn't fail.
+diskdq.blk_hardlimit = lastbit: offline scrub didn't fail.
+diskdq.blk_hardlimit = add: offline scrub didn't fail.
+diskdq.blk_hardlimit = sub: offline scrub didn't fail.
+diskdq.blk_softlimit = ones: offline scrub didn't fail.
+diskdq.blk_softlimit = ones: online post-mod scrub failed (1).
+diskdq.blk_softlimit = firstbit: offline scrub didn't fail.
+diskdq.blk_softlimit = firstbit: online post-mod scrub failed (1).
+diskdq.blk_softlimit = middlebit: offline scrub didn't fail.
+diskdq.blk_softlimit = middlebit: online post-mod scrub failed (1).
+diskdq.blk_softlimit = lastbit: offline scrub didn't fail.
+diskdq.blk_softlimit = lastbit: online post-mod scrub failed (1).
+diskdq.blk_softlimit = add: offline scrub didn't fail.
+diskdq.blk_softlimit = add: online post-mod scrub failed (1).
+diskdq.blk_softlimit = sub: offline scrub didn't fail.
+diskdq.blk_softlimit = sub: online post-mod scrub failed (1).
+diskdq.ino_hardlimit = ones: offline scrub didn't fail.
+diskdq.ino_hardlimit = firstbit: offline scrub didn't fail.
+diskdq.ino_hardlimit = middlebit: offline scrub didn't fail.
+diskdq.ino_hardlimit = lastbit: offline scrub didn't fail.
+diskdq.ino_hardlimit = add: offline scrub didn't fail.
+diskdq.ino_hardlimit = sub: offline scrub didn't fail.
+diskdq.ino_softlimit = ones: offline scrub didn't fail.
+diskdq.ino_softlimit = ones: online post-mod scrub failed (1).
+diskdq.ino_softlimit = firstbit: offline scrub didn't fail.
+diskdq.ino_softlimit = firstbit: online post-mod scrub failed (1).
+diskdq.ino_softlimit = middlebit: offline scrub didn't fail.
+diskdq.ino_softlimit = middlebit: online post-mod scrub failed (1).
+diskdq.ino_softlimit = lastbit: offline scrub didn't fail.
+diskdq.ino_softlimit = lastbit: online post-mod scrub failed (1).
+diskdq.ino_softlimit = add: offline scrub didn't fail.
+diskdq.ino_softlimit = add: online post-mod scrub failed (1).
+diskdq.ino_softlimit = sub: offline scrub didn't fail.
+diskdq.ino_softlimit = sub: online post-mod scrub failed (1).
+diskdq.itimer = ones: offline scrub didn't fail.
+diskdq.itimer = ones: online post-mod scrub failed (1).
+diskdq.itimer = firstbit: offline scrub didn't fail.
+diskdq.itimer = firstbit: online post-mod scrub failed (1).
+diskdq.itimer = middlebit: offline scrub didn't fail.
+diskdq.itimer = middlebit: online post-mod scrub failed (1).
+diskdq.itimer = lastbit: offline scrub didn't fail.
+diskdq.itimer = lastbit: online post-mod scrub failed (1).
+diskdq.itimer = add: offline scrub didn't fail.
+diskdq.itimer = add: online post-mod scrub failed (1).
+diskdq.itimer = sub: offline scrub didn't fail.
+diskdq.itimer = sub: online post-mod scrub failed (1).
+diskdq.btimer = ones: offline scrub didn't fail.
+diskdq.btimer = ones: online post-mod scrub failed (1).
+diskdq.btimer = firstbit: offline scrub didn't fail.
+diskdq.btimer = firstbit: online post-mod scrub failed (1).
+diskdq.btimer = middlebit: offline scrub didn't fail.
+diskdq.btimer = middlebit: online post-mod scrub failed (1).
+diskdq.btimer = lastbit: offline scrub didn't fail.
+diskdq.btimer = lastbit: online post-mod scrub failed (1).
+diskdq.btimer = add: offline scrub didn't fail.
+diskdq.btimer = add: online post-mod scrub failed (1).
+diskdq.btimer = sub: offline scrub didn't fail.
+diskdq.btimer = sub: online post-mod scrub failed (1).
+diskdq.rtb_hardlimit = ones: offline scrub didn't fail.
+diskdq.rtb_hardlimit = firstbit: offline scrub didn't fail.
+diskdq.rtb_hardlimit = middlebit: offline scrub didn't fail.
+diskdq.rtb_hardlimit = lastbit: offline scrub didn't fail.
+diskdq.rtb_hardlimit = add: offline scrub didn't fail.
+diskdq.rtb_hardlimit = sub: offline scrub didn't fail.
+diskdq.rtb_softlimit = ones: offline scrub didn't fail.
+diskdq.rtb_softlimit = ones: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = firstbit: offline scrub didn't fail.
+diskdq.rtb_softlimit = firstbit: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = middlebit: offline scrub didn't fail.
+diskdq.rtb_softlimit = middlebit: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = lastbit: offline scrub didn't fail.
+diskdq.rtb_softlimit = lastbit: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = add: offline scrub didn't fail.
+diskdq.rtb_softlimit = add: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = sub: offline scrub didn't fail.
+diskdq.rtb_softlimit = sub: online post-mod scrub failed (1).
+diskdq.rtbtimer = ones: offline scrub didn't fail.
+diskdq.rtbtimer = ones: online post-mod scrub failed (1).
+diskdq.rtbtimer = firstbit: offline scrub didn't fail.
+diskdq.rtbtimer = firstbit: online post-mod scrub failed (1).
+diskdq.rtbtimer = middlebit: offline scrub didn't fail.
+diskdq.rtbtimer = middlebit: online post-mod scrub failed (1).
+diskdq.rtbtimer = lastbit: offline scrub didn't fail.
+diskdq.rtbtimer = lastbit: online post-mod scrub failed (1).
+diskdq.rtbtimer = add: offline scrub didn't fail.
+diskdq.rtbtimer = add: online post-mod scrub failed (1).
+diskdq.rtbtimer = sub: offline scrub didn't fail.
+diskdq.rtbtimer = sub: online post-mod scrub failed (1).
+Done fuzzing dquot
+Fuzz user 8484 dquot
+diskdq.type = firstbit: offline scrub didn't fail.
+diskdq.blk_hardlimit = ones: offline scrub didn't fail.
+diskdq.blk_hardlimit = firstbit: offline scrub didn't fail.
+diskdq.blk_hardlimit = middlebit: offline scrub didn't fail.
+diskdq.blk_hardlimit = lastbit: offline scrub didn't fail.
+diskdq.blk_hardlimit = add: offline scrub didn't fail.
+diskdq.blk_hardlimit = sub: offline scrub didn't fail.
+diskdq.blk_softlimit = ones: offline scrub didn't fail.
+diskdq.blk_softlimit = ones: online post-mod scrub failed (1).
+diskdq.blk_softlimit = firstbit: offline scrub didn't fail.
+diskdq.blk_softlimit = firstbit: online post-mod scrub failed (1).
+diskdq.blk_softlimit = middlebit: offline scrub didn't fail.
+diskdq.blk_softlimit = middlebit: online post-mod scrub failed (1).
+diskdq.blk_softlimit = lastbit: offline scrub didn't fail.
+diskdq.blk_softlimit = lastbit: online post-mod scrub failed (1).
+diskdq.blk_softlimit = add: offline scrub didn't fail.
+diskdq.blk_softlimit = add: online post-mod scrub failed (1).
+diskdq.blk_softlimit = sub: offline scrub didn't fail.
+diskdq.blk_softlimit = sub: online post-mod scrub failed (1).
+diskdq.ino_hardlimit = ones: offline scrub didn't fail.
+diskdq.ino_hardlimit = firstbit: offline scrub didn't fail.
+diskdq.ino_hardlimit = middlebit: offline scrub didn't fail.
+diskdq.ino_hardlimit = lastbit: offline scrub didn't fail.
+diskdq.ino_hardlimit = add: offline scrub didn't fail.
+diskdq.ino_hardlimit = sub: offline scrub didn't fail.
+diskdq.ino_softlimit = ones: offline scrub didn't fail.
+diskdq.ino_softlimit = ones: online post-mod scrub failed (1).
+diskdq.ino_softlimit = firstbit: offline scrub didn't fail.
+diskdq.ino_softlimit = firstbit: online post-mod scrub failed (1).
+diskdq.ino_softlimit = middlebit: offline scrub didn't fail.
+diskdq.ino_softlimit = middlebit: online post-mod scrub failed (1).
+diskdq.ino_softlimit = lastbit: offline scrub didn't fail.
+diskdq.ino_softlimit = lastbit: online post-mod scrub failed (1).
+diskdq.ino_softlimit = add: offline scrub didn't fail.
+diskdq.ino_softlimit = add: online post-mod scrub failed (1).
+diskdq.ino_softlimit = sub: offline scrub didn't fail.
+diskdq.ino_softlimit = sub: online post-mod scrub failed (1).
+diskdq.itimer = ones: offline scrub didn't fail.
+diskdq.itimer = ones: online post-mod scrub failed (1).
+diskdq.itimer = firstbit: offline scrub didn't fail.
+diskdq.itimer = firstbit: online post-mod scrub failed (1).
+diskdq.itimer = middlebit: offline scrub didn't fail.
+diskdq.itimer = middlebit: online post-mod scrub failed (1).
+diskdq.itimer = lastbit: offline scrub didn't fail.
+diskdq.itimer = lastbit: online post-mod scrub failed (1).
+diskdq.itimer = add: offline scrub didn't fail.
+diskdq.itimer = add: online post-mod scrub failed (1).
+diskdq.itimer = sub: offline scrub didn't fail.
+diskdq.itimer = sub: online post-mod scrub failed (1).
+diskdq.btimer = ones: offline scrub didn't fail.
+diskdq.btimer = ones: online post-mod scrub failed (1).
+diskdq.btimer = firstbit: offline scrub didn't fail.
+diskdq.btimer = firstbit: online post-mod scrub failed (1).
+diskdq.btimer = middlebit: offline scrub didn't fail.
+diskdq.btimer = middlebit: online post-mod scrub failed (1).
+diskdq.btimer = lastbit: offline scrub didn't fail.
+diskdq.btimer = lastbit: online post-mod scrub failed (1).
+diskdq.btimer = add: offline scrub didn't fail.
+diskdq.btimer = add: online post-mod scrub failed (1).
+diskdq.btimer = sub: offline scrub didn't fail.
+diskdq.btimer = sub: online post-mod scrub failed (1).
+diskdq.rtb_hardlimit = ones: offline scrub didn't fail.
+diskdq.rtb_hardlimit = firstbit: offline scrub didn't fail.
+diskdq.rtb_hardlimit = middlebit: offline scrub didn't fail.
+diskdq.rtb_hardlimit = lastbit: offline scrub didn't fail.
+diskdq.rtb_hardlimit = add: offline scrub didn't fail.
+diskdq.rtb_hardlimit = sub: offline scrub didn't fail.
+diskdq.rtb_softlimit = ones: offline scrub didn't fail.
+diskdq.rtb_softlimit = ones: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = firstbit: offline scrub didn't fail.
+diskdq.rtb_softlimit = firstbit: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = middlebit: offline scrub didn't fail.
+diskdq.rtb_softlimit = middlebit: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = lastbit: offline scrub didn't fail.
+diskdq.rtb_softlimit = lastbit: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = add: offline scrub didn't fail.
+diskdq.rtb_softlimit = add: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = sub: offline scrub didn't fail.
+diskdq.rtb_softlimit = sub: online post-mod scrub failed (1).
+diskdq.rtbtimer = ones: offline scrub didn't fail.
+diskdq.rtbtimer = ones: online post-mod scrub failed (1).
+diskdq.rtbtimer = firstbit: offline scrub didn't fail.
+diskdq.rtbtimer = firstbit: online post-mod scrub failed (1).
+diskdq.rtbtimer = middlebit: offline scrub didn't fail.
+diskdq.rtbtimer = middlebit: online post-mod scrub failed (1).
+diskdq.rtbtimer = lastbit: offline scrub didn't fail.
+diskdq.rtbtimer = lastbit: online post-mod scrub failed (1).
+diskdq.rtbtimer = add: offline scrub didn't fail.
+diskdq.rtbtimer = add: online post-mod scrub failed (1).
+diskdq.rtbtimer = sub: offline scrub didn't fail.
+diskdq.rtbtimer = sub: online post-mod scrub failed (1).
 Done fuzzing dquot
diff --git a/tests/xfs/427.out b/tests/xfs/427.out
index 9074c64527..2a79e3e621 100644
--- a/tests/xfs/427.out
+++ b/tests/xfs/427.out
@@ -1,4 +1,262 @@
 QA output created by 427
 Format and populate
 Fuzz group 0 dquot
+diskdq.blk_hardlimit = ones: offline scrub didn't fail.
+diskdq.blk_hardlimit = firstbit: offline scrub didn't fail.
+diskdq.blk_hardlimit = middlebit: offline scrub didn't fail.
+diskdq.blk_hardlimit = lastbit: offline scrub didn't fail.
+diskdq.blk_hardlimit = add: offline scrub didn't fail.
+diskdq.blk_hardlimit = sub: offline scrub didn't fail.
+diskdq.blk_softlimit = ones: offline scrub didn't fail.
+diskdq.blk_softlimit = ones: online post-mod scrub failed (1).
+diskdq.blk_softlimit = firstbit: offline scrub didn't fail.
+diskdq.blk_softlimit = firstbit: online post-mod scrub failed (1).
+diskdq.blk_softlimit = middlebit: offline scrub didn't fail.
+diskdq.blk_softlimit = middlebit: online post-mod scrub failed (1).
+diskdq.blk_softlimit = lastbit: offline scrub didn't fail.
+diskdq.blk_softlimit = lastbit: online post-mod scrub failed (1).
+diskdq.blk_softlimit = add: offline scrub didn't fail.
+diskdq.blk_softlimit = add: online post-mod scrub failed (1).
+diskdq.blk_softlimit = sub: offline scrub didn't fail.
+diskdq.blk_softlimit = sub: online post-mod scrub failed (1).
+diskdq.ino_hardlimit = ones: offline scrub didn't fail.
+diskdq.ino_hardlimit = firstbit: offline scrub didn't fail.
+diskdq.ino_hardlimit = middlebit: offline scrub didn't fail.
+diskdq.ino_hardlimit = lastbit: offline scrub didn't fail.
+diskdq.ino_hardlimit = add: offline scrub didn't fail.
+diskdq.ino_hardlimit = sub: offline scrub didn't fail.
+diskdq.ino_softlimit = ones: offline scrub didn't fail.
+diskdq.ino_softlimit = ones: online post-mod scrub failed (1).
+diskdq.ino_softlimit = firstbit: offline scrub didn't fail.
+diskdq.ino_softlimit = firstbit: online post-mod scrub failed (1).
+diskdq.ino_softlimit = middlebit: offline scrub didn't fail.
+diskdq.ino_softlimit = middlebit: online post-mod scrub failed (1).
+diskdq.ino_softlimit = lastbit: offline scrub didn't fail.
+diskdq.ino_softlimit = lastbit: online post-mod scrub failed (1).
+diskdq.ino_softlimit = add: offline scrub didn't fail.
+diskdq.ino_softlimit = add: online post-mod scrub failed (1).
+diskdq.ino_softlimit = sub: offline scrub didn't fail.
+diskdq.ino_softlimit = sub: online post-mod scrub failed (1).
+diskdq.itimer = ones: offline scrub didn't fail.
+diskdq.itimer = firstbit: offline scrub didn't fail.
+diskdq.itimer = middlebit: offline scrub didn't fail.
+diskdq.itimer = lastbit: offline scrub didn't fail.
+diskdq.itimer = add: offline scrub didn't fail.
+diskdq.itimer = sub: offline scrub didn't fail.
+diskdq.btimer = ones: offline scrub didn't fail.
+diskdq.btimer = firstbit: offline scrub didn't fail.
+diskdq.btimer = middlebit: offline scrub didn't fail.
+diskdq.btimer = lastbit: offline scrub didn't fail.
+diskdq.btimer = add: offline scrub didn't fail.
+diskdq.btimer = sub: offline scrub didn't fail.
+diskdq.rtb_hardlimit = ones: offline scrub didn't fail.
+diskdq.rtb_hardlimit = firstbit: offline scrub didn't fail.
+diskdq.rtb_hardlimit = middlebit: offline scrub didn't fail.
+diskdq.rtb_hardlimit = lastbit: offline scrub didn't fail.
+diskdq.rtb_hardlimit = add: offline scrub didn't fail.
+diskdq.rtb_hardlimit = sub: offline scrub didn't fail.
+diskdq.rtb_softlimit = ones: offline scrub didn't fail.
+diskdq.rtb_softlimit = ones: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = firstbit: offline scrub didn't fail.
+diskdq.rtb_softlimit = firstbit: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = middlebit: offline scrub didn't fail.
+diskdq.rtb_softlimit = middlebit: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = lastbit: offline scrub didn't fail.
+diskdq.rtb_softlimit = lastbit: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = add: offline scrub didn't fail.
+diskdq.rtb_softlimit = add: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = sub: offline scrub didn't fail.
+diskdq.rtb_softlimit = sub: online post-mod scrub failed (1).
+diskdq.rtbtimer = ones: offline scrub didn't fail.
+diskdq.rtbtimer = firstbit: offline scrub didn't fail.
+diskdq.rtbtimer = middlebit: offline scrub didn't fail.
+diskdq.rtbtimer = lastbit: offline scrub didn't fail.
+diskdq.rtbtimer = add: offline scrub didn't fail.
+diskdq.rtbtimer = sub: offline scrub didn't fail.
+Done fuzzing dquot
+Fuzz group 4242 dquot
+diskdq.type = firstbit: offline scrub didn't fail.
+diskdq.blk_hardlimit = ones: offline scrub didn't fail.
+diskdq.blk_hardlimit = firstbit: offline scrub didn't fail.
+diskdq.blk_hardlimit = middlebit: offline scrub didn't fail.
+diskdq.blk_hardlimit = lastbit: offline scrub didn't fail.
+diskdq.blk_hardlimit = add: offline scrub didn't fail.
+diskdq.blk_hardlimit = sub: offline scrub didn't fail.
+diskdq.blk_softlimit = ones: offline scrub didn't fail.
+diskdq.blk_softlimit = ones: online post-mod scrub failed (1).
+diskdq.blk_softlimit = firstbit: offline scrub didn't fail.
+diskdq.blk_softlimit = firstbit: online post-mod scrub failed (1).
+diskdq.blk_softlimit = middlebit: offline scrub didn't fail.
+diskdq.blk_softlimit = middlebit: online post-mod scrub failed (1).
+diskdq.blk_softlimit = lastbit: offline scrub didn't fail.
+diskdq.blk_softlimit = lastbit: online post-mod scrub failed (1).
+diskdq.blk_softlimit = add: offline scrub didn't fail.
+diskdq.blk_softlimit = add: online post-mod scrub failed (1).
+diskdq.blk_softlimit = sub: offline scrub didn't fail.
+diskdq.blk_softlimit = sub: online post-mod scrub failed (1).
+diskdq.ino_hardlimit = ones: offline scrub didn't fail.
+diskdq.ino_hardlimit = firstbit: offline scrub didn't fail.
+diskdq.ino_hardlimit = middlebit: offline scrub didn't fail.
+diskdq.ino_hardlimit = lastbit: offline scrub didn't fail.
+diskdq.ino_hardlimit = add: offline scrub didn't fail.
+diskdq.ino_hardlimit = sub: offline scrub didn't fail.
+diskdq.ino_softlimit = ones: offline scrub didn't fail.
+diskdq.ino_softlimit = ones: online post-mod scrub failed (1).
+diskdq.ino_softlimit = firstbit: offline scrub didn't fail.
+diskdq.ino_softlimit = firstbit: online post-mod scrub failed (1).
+diskdq.ino_softlimit = middlebit: offline scrub didn't fail.
+diskdq.ino_softlimit = middlebit: online post-mod scrub failed (1).
+diskdq.ino_softlimit = lastbit: offline scrub didn't fail.
+diskdq.ino_softlimit = lastbit: online post-mod scrub failed (1).
+diskdq.ino_softlimit = add: offline scrub didn't fail.
+diskdq.ino_softlimit = add: online post-mod scrub failed (1).
+diskdq.ino_softlimit = sub: offline scrub didn't fail.
+diskdq.ino_softlimit = sub: online post-mod scrub failed (1).
+diskdq.itimer = ones: offline scrub didn't fail.
+diskdq.itimer = ones: online post-mod scrub failed (1).
+diskdq.itimer = firstbit: offline scrub didn't fail.
+diskdq.itimer = firstbit: online post-mod scrub failed (1).
+diskdq.itimer = middlebit: offline scrub didn't fail.
+diskdq.itimer = middlebit: online post-mod scrub failed (1).
+diskdq.itimer = lastbit: offline scrub didn't fail.
+diskdq.itimer = lastbit: online post-mod scrub failed (1).
+diskdq.itimer = add: offline scrub didn't fail.
+diskdq.itimer = add: online post-mod scrub failed (1).
+diskdq.itimer = sub: offline scrub didn't fail.
+diskdq.itimer = sub: online post-mod scrub failed (1).
+diskdq.btimer = ones: offline scrub didn't fail.
+diskdq.btimer = ones: online post-mod scrub failed (1).
+diskdq.btimer = firstbit: offline scrub didn't fail.
+diskdq.btimer = firstbit: online post-mod scrub failed (1).
+diskdq.btimer = middlebit: offline scrub didn't fail.
+diskdq.btimer = middlebit: online post-mod scrub failed (1).
+diskdq.btimer = lastbit: offline scrub didn't fail.
+diskdq.btimer = lastbit: online post-mod scrub failed (1).
+diskdq.btimer = add: offline scrub didn't fail.
+diskdq.btimer = add: online post-mod scrub failed (1).
+diskdq.btimer = sub: offline scrub didn't fail.
+diskdq.btimer = sub: online post-mod scrub failed (1).
+diskdq.rtb_hardlimit = ones: offline scrub didn't fail.
+diskdq.rtb_hardlimit = firstbit: offline scrub didn't fail.
+diskdq.rtb_hardlimit = middlebit: offline scrub didn't fail.
+diskdq.rtb_hardlimit = lastbit: offline scrub didn't fail.
+diskdq.rtb_hardlimit = add: offline scrub didn't fail.
+diskdq.rtb_hardlimit = sub: offline scrub didn't fail.
+diskdq.rtb_softlimit = ones: offline scrub didn't fail.
+diskdq.rtb_softlimit = ones: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = firstbit: offline scrub didn't fail.
+diskdq.rtb_softlimit = firstbit: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = middlebit: offline scrub didn't fail.
+diskdq.rtb_softlimit = middlebit: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = lastbit: offline scrub didn't fail.
+diskdq.rtb_softlimit = lastbit: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = add: offline scrub didn't fail.
+diskdq.rtb_softlimit = add: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = sub: offline scrub didn't fail.
+diskdq.rtb_softlimit = sub: online post-mod scrub failed (1).
+diskdq.rtbtimer = ones: offline scrub didn't fail.
+diskdq.rtbtimer = ones: online post-mod scrub failed (1).
+diskdq.rtbtimer = firstbit: offline scrub didn't fail.
+diskdq.rtbtimer = firstbit: online post-mod scrub failed (1).
+diskdq.rtbtimer = middlebit: offline scrub didn't fail.
+diskdq.rtbtimer = middlebit: online post-mod scrub failed (1).
+diskdq.rtbtimer = lastbit: offline scrub didn't fail.
+diskdq.rtbtimer = lastbit: online post-mod scrub failed (1).
+diskdq.rtbtimer = add: offline scrub didn't fail.
+diskdq.rtbtimer = add: online post-mod scrub failed (1).
+diskdq.rtbtimer = sub: offline scrub didn't fail.
+diskdq.rtbtimer = sub: online post-mod scrub failed (1).
+Done fuzzing dquot
+Fuzz group 8484 dquot
+diskdq.type = firstbit: offline scrub didn't fail.
+diskdq.blk_hardlimit = ones: offline scrub didn't fail.
+diskdq.blk_hardlimit = firstbit: offline scrub didn't fail.
+diskdq.blk_hardlimit = middlebit: offline scrub didn't fail.
+diskdq.blk_hardlimit = lastbit: offline scrub didn't fail.
+diskdq.blk_hardlimit = add: offline scrub didn't fail.
+diskdq.blk_hardlimit = sub: offline scrub didn't fail.
+diskdq.blk_softlimit = ones: offline scrub didn't fail.
+diskdq.blk_softlimit = ones: online post-mod scrub failed (1).
+diskdq.blk_softlimit = firstbit: offline scrub didn't fail.
+diskdq.blk_softlimit = firstbit: online post-mod scrub failed (1).
+diskdq.blk_softlimit = middlebit: offline scrub didn't fail.
+diskdq.blk_softlimit = middlebit: online post-mod scrub failed (1).
+diskdq.blk_softlimit = lastbit: offline scrub didn't fail.
+diskdq.blk_softlimit = lastbit: online post-mod scrub failed (1).
+diskdq.blk_softlimit = add: offline scrub didn't fail.
+diskdq.blk_softlimit = add: online post-mod scrub failed (1).
+diskdq.blk_softlimit = sub: offline scrub didn't fail.
+diskdq.blk_softlimit = sub: online post-mod scrub failed (1).
+diskdq.ino_hardlimit = ones: offline scrub didn't fail.
+diskdq.ino_hardlimit = firstbit: offline scrub didn't fail.
+diskdq.ino_hardlimit = middlebit: offline scrub didn't fail.
+diskdq.ino_hardlimit = lastbit: offline scrub didn't fail.
+diskdq.ino_hardlimit = add: offline scrub didn't fail.
+diskdq.ino_hardlimit = sub: offline scrub didn't fail.
+diskdq.ino_softlimit = ones: offline scrub didn't fail.
+diskdq.ino_softlimit = ones: online post-mod scrub failed (1).
+diskdq.ino_softlimit = firstbit: offline scrub didn't fail.
+diskdq.ino_softlimit = firstbit: online post-mod scrub failed (1).
+diskdq.ino_softlimit = middlebit: offline scrub didn't fail.
+diskdq.ino_softlimit = middlebit: online post-mod scrub failed (1).
+diskdq.ino_softlimit = lastbit: offline scrub didn't fail.
+diskdq.ino_softlimit = lastbit: online post-mod scrub failed (1).
+diskdq.ino_softlimit = add: offline scrub didn't fail.
+diskdq.ino_softlimit = add: online post-mod scrub failed (1).
+diskdq.ino_softlimit = sub: offline scrub didn't fail.
+diskdq.ino_softlimit = sub: online post-mod scrub failed (1).
+diskdq.itimer = ones: offline scrub didn't fail.
+diskdq.itimer = ones: online post-mod scrub failed (1).
+diskdq.itimer = firstbit: offline scrub didn't fail.
+diskdq.itimer = firstbit: online post-mod scrub failed (1).
+diskdq.itimer = middlebit: offline scrub didn't fail.
+diskdq.itimer = middlebit: online post-mod scrub failed (1).
+diskdq.itimer = lastbit: offline scrub didn't fail.
+diskdq.itimer = lastbit: online post-mod scrub failed (1).
+diskdq.itimer = add: offline scrub didn't fail.
+diskdq.itimer = add: online post-mod scrub failed (1).
+diskdq.itimer = sub: offline scrub didn't fail.
+diskdq.itimer = sub: online post-mod scrub failed (1).
+diskdq.btimer = ones: offline scrub didn't fail.
+diskdq.btimer = ones: online post-mod scrub failed (1).
+diskdq.btimer = firstbit: offline scrub didn't fail.
+diskdq.btimer = firstbit: online post-mod scrub failed (1).
+diskdq.btimer = middlebit: offline scrub didn't fail.
+diskdq.btimer = middlebit: online post-mod scrub failed (1).
+diskdq.btimer = lastbit: offline scrub didn't fail.
+diskdq.btimer = lastbit: online post-mod scrub failed (1).
+diskdq.btimer = add: offline scrub didn't fail.
+diskdq.btimer = add: online post-mod scrub failed (1).
+diskdq.btimer = sub: offline scrub didn't fail.
+diskdq.btimer = sub: online post-mod scrub failed (1).
+diskdq.rtb_hardlimit = ones: offline scrub didn't fail.
+diskdq.rtb_hardlimit = firstbit: offline scrub didn't fail.
+diskdq.rtb_hardlimit = middlebit: offline scrub didn't fail.
+diskdq.rtb_hardlimit = lastbit: offline scrub didn't fail.
+diskdq.rtb_hardlimit = add: offline scrub didn't fail.
+diskdq.rtb_hardlimit = sub: offline scrub didn't fail.
+diskdq.rtb_softlimit = ones: offline scrub didn't fail.
+diskdq.rtb_softlimit = ones: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = firstbit: offline scrub didn't fail.
+diskdq.rtb_softlimit = firstbit: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = middlebit: offline scrub didn't fail.
+diskdq.rtb_softlimit = middlebit: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = lastbit: offline scrub didn't fail.
+diskdq.rtb_softlimit = lastbit: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = add: offline scrub didn't fail.
+diskdq.rtb_softlimit = add: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = sub: offline scrub didn't fail.
+diskdq.rtb_softlimit = sub: online post-mod scrub failed (1).
+diskdq.rtbtimer = ones: offline scrub didn't fail.
+diskdq.rtbtimer = ones: online post-mod scrub failed (1).
+diskdq.rtbtimer = firstbit: offline scrub didn't fail.
+diskdq.rtbtimer = firstbit: online post-mod scrub failed (1).
+diskdq.rtbtimer = middlebit: offline scrub didn't fail.
+diskdq.rtbtimer = middlebit: online post-mod scrub failed (1).
+diskdq.rtbtimer = lastbit: offline scrub didn't fail.
+diskdq.rtbtimer = lastbit: online post-mod scrub failed (1).
+diskdq.rtbtimer = add: offline scrub didn't fail.
+diskdq.rtbtimer = add: online post-mod scrub failed (1).
+diskdq.rtbtimer = sub: offline scrub didn't fail.
+diskdq.rtbtimer = sub: online post-mod scrub failed (1).
 Done fuzzing dquot
diff --git a/tests/xfs/429.out b/tests/xfs/429.out
index b5ea503b01..c212bb7fe3 100644
--- a/tests/xfs/429.out
+++ b/tests/xfs/429.out
@@ -1,4 +1,262 @@
 QA output created by 429
 Format and populate
 Fuzz project 0 dquot
+diskdq.blk_hardlimit = ones: offline scrub didn't fail.
+diskdq.blk_hardlimit = firstbit: offline scrub didn't fail.
+diskdq.blk_hardlimit = middlebit: offline scrub didn't fail.
+diskdq.blk_hardlimit = lastbit: offline scrub didn't fail.
+diskdq.blk_hardlimit = add: offline scrub didn't fail.
+diskdq.blk_hardlimit = sub: offline scrub didn't fail.
+diskdq.blk_softlimit = ones: offline scrub didn't fail.
+diskdq.blk_softlimit = ones: online post-mod scrub failed (1).
+diskdq.blk_softlimit = firstbit: offline scrub didn't fail.
+diskdq.blk_softlimit = firstbit: online post-mod scrub failed (1).
+diskdq.blk_softlimit = middlebit: offline scrub didn't fail.
+diskdq.blk_softlimit = middlebit: online post-mod scrub failed (1).
+diskdq.blk_softlimit = lastbit: offline scrub didn't fail.
+diskdq.blk_softlimit = lastbit: online post-mod scrub failed (1).
+diskdq.blk_softlimit = add: offline scrub didn't fail.
+diskdq.blk_softlimit = add: online post-mod scrub failed (1).
+diskdq.blk_softlimit = sub: offline scrub didn't fail.
+diskdq.blk_softlimit = sub: online post-mod scrub failed (1).
+diskdq.ino_hardlimit = ones: offline scrub didn't fail.
+diskdq.ino_hardlimit = firstbit: offline scrub didn't fail.
+diskdq.ino_hardlimit = middlebit: offline scrub didn't fail.
+diskdq.ino_hardlimit = lastbit: offline scrub didn't fail.
+diskdq.ino_hardlimit = add: offline scrub didn't fail.
+diskdq.ino_hardlimit = sub: offline scrub didn't fail.
+diskdq.ino_softlimit = ones: offline scrub didn't fail.
+diskdq.ino_softlimit = ones: online post-mod scrub failed (1).
+diskdq.ino_softlimit = firstbit: offline scrub didn't fail.
+diskdq.ino_softlimit = firstbit: online post-mod scrub failed (1).
+diskdq.ino_softlimit = middlebit: offline scrub didn't fail.
+diskdq.ino_softlimit = middlebit: online post-mod scrub failed (1).
+diskdq.ino_softlimit = lastbit: offline scrub didn't fail.
+diskdq.ino_softlimit = lastbit: online post-mod scrub failed (1).
+diskdq.ino_softlimit = add: offline scrub didn't fail.
+diskdq.ino_softlimit = add: online post-mod scrub failed (1).
+diskdq.ino_softlimit = sub: offline scrub didn't fail.
+diskdq.ino_softlimit = sub: online post-mod scrub failed (1).
+diskdq.itimer = ones: offline scrub didn't fail.
+diskdq.itimer = firstbit: offline scrub didn't fail.
+diskdq.itimer = middlebit: offline scrub didn't fail.
+diskdq.itimer = lastbit: offline scrub didn't fail.
+diskdq.itimer = add: offline scrub didn't fail.
+diskdq.itimer = sub: offline scrub didn't fail.
+diskdq.btimer = ones: offline scrub didn't fail.
+diskdq.btimer = firstbit: offline scrub didn't fail.
+diskdq.btimer = middlebit: offline scrub didn't fail.
+diskdq.btimer = lastbit: offline scrub didn't fail.
+diskdq.btimer = add: offline scrub didn't fail.
+diskdq.btimer = sub: offline scrub didn't fail.
+diskdq.rtb_hardlimit = ones: offline scrub didn't fail.
+diskdq.rtb_hardlimit = firstbit: offline scrub didn't fail.
+diskdq.rtb_hardlimit = middlebit: offline scrub didn't fail.
+diskdq.rtb_hardlimit = lastbit: offline scrub didn't fail.
+diskdq.rtb_hardlimit = add: offline scrub didn't fail.
+diskdq.rtb_hardlimit = sub: offline scrub didn't fail.
+diskdq.rtb_softlimit = ones: offline scrub didn't fail.
+diskdq.rtb_softlimit = ones: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = firstbit: offline scrub didn't fail.
+diskdq.rtb_softlimit = firstbit: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = middlebit: offline scrub didn't fail.
+diskdq.rtb_softlimit = middlebit: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = lastbit: offline scrub didn't fail.
+diskdq.rtb_softlimit = lastbit: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = add: offline scrub didn't fail.
+diskdq.rtb_softlimit = add: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = sub: offline scrub didn't fail.
+diskdq.rtb_softlimit = sub: online post-mod scrub failed (1).
+diskdq.rtbtimer = ones: offline scrub didn't fail.
+diskdq.rtbtimer = firstbit: offline scrub didn't fail.
+diskdq.rtbtimer = middlebit: offline scrub didn't fail.
+diskdq.rtbtimer = lastbit: offline scrub didn't fail.
+diskdq.rtbtimer = add: offline scrub didn't fail.
+diskdq.rtbtimer = sub: offline scrub didn't fail.
+Done fuzzing dquot
+Fuzz project 4242 dquot
+diskdq.type = firstbit: offline scrub didn't fail.
+diskdq.blk_hardlimit = ones: offline scrub didn't fail.
+diskdq.blk_hardlimit = firstbit: offline scrub didn't fail.
+diskdq.blk_hardlimit = middlebit: offline scrub didn't fail.
+diskdq.blk_hardlimit = lastbit: offline scrub didn't fail.
+diskdq.blk_hardlimit = add: offline scrub didn't fail.
+diskdq.blk_hardlimit = sub: offline scrub didn't fail.
+diskdq.blk_softlimit = ones: offline scrub didn't fail.
+diskdq.blk_softlimit = ones: online post-mod scrub failed (1).
+diskdq.blk_softlimit = firstbit: offline scrub didn't fail.
+diskdq.blk_softlimit = firstbit: online post-mod scrub failed (1).
+diskdq.blk_softlimit = middlebit: offline scrub didn't fail.
+diskdq.blk_softlimit = middlebit: online post-mod scrub failed (1).
+diskdq.blk_softlimit = lastbit: offline scrub didn't fail.
+diskdq.blk_softlimit = lastbit: online post-mod scrub failed (1).
+diskdq.blk_softlimit = add: offline scrub didn't fail.
+diskdq.blk_softlimit = add: online post-mod scrub failed (1).
+diskdq.blk_softlimit = sub: offline scrub didn't fail.
+diskdq.blk_softlimit = sub: online post-mod scrub failed (1).
+diskdq.ino_hardlimit = ones: offline scrub didn't fail.
+diskdq.ino_hardlimit = firstbit: offline scrub didn't fail.
+diskdq.ino_hardlimit = middlebit: offline scrub didn't fail.
+diskdq.ino_hardlimit = lastbit: offline scrub didn't fail.
+diskdq.ino_hardlimit = add: offline scrub didn't fail.
+diskdq.ino_hardlimit = sub: offline scrub didn't fail.
+diskdq.ino_softlimit = ones: offline scrub didn't fail.
+diskdq.ino_softlimit = ones: online post-mod scrub failed (1).
+diskdq.ino_softlimit = firstbit: offline scrub didn't fail.
+diskdq.ino_softlimit = firstbit: online post-mod scrub failed (1).
+diskdq.ino_softlimit = middlebit: offline scrub didn't fail.
+diskdq.ino_softlimit = middlebit: online post-mod scrub failed (1).
+diskdq.ino_softlimit = lastbit: offline scrub didn't fail.
+diskdq.ino_softlimit = lastbit: online post-mod scrub failed (1).
+diskdq.ino_softlimit = add: offline scrub didn't fail.
+diskdq.ino_softlimit = add: online post-mod scrub failed (1).
+diskdq.ino_softlimit = sub: offline scrub didn't fail.
+diskdq.ino_softlimit = sub: online post-mod scrub failed (1).
+diskdq.itimer = ones: offline scrub didn't fail.
+diskdq.itimer = ones: online post-mod scrub failed (1).
+diskdq.itimer = firstbit: offline scrub didn't fail.
+diskdq.itimer = firstbit: online post-mod scrub failed (1).
+diskdq.itimer = middlebit: offline scrub didn't fail.
+diskdq.itimer = middlebit: online post-mod scrub failed (1).
+diskdq.itimer = lastbit: offline scrub didn't fail.
+diskdq.itimer = lastbit: online post-mod scrub failed (1).
+diskdq.itimer = add: offline scrub didn't fail.
+diskdq.itimer = add: online post-mod scrub failed (1).
+diskdq.itimer = sub: offline scrub didn't fail.
+diskdq.itimer = sub: online post-mod scrub failed (1).
+diskdq.btimer = ones: offline scrub didn't fail.
+diskdq.btimer = ones: online post-mod scrub failed (1).
+diskdq.btimer = firstbit: offline scrub didn't fail.
+diskdq.btimer = firstbit: online post-mod scrub failed (1).
+diskdq.btimer = middlebit: offline scrub didn't fail.
+diskdq.btimer = middlebit: online post-mod scrub failed (1).
+diskdq.btimer = lastbit: offline scrub didn't fail.
+diskdq.btimer = lastbit: online post-mod scrub failed (1).
+diskdq.btimer = add: offline scrub didn't fail.
+diskdq.btimer = add: online post-mod scrub failed (1).
+diskdq.btimer = sub: offline scrub didn't fail.
+diskdq.btimer = sub: online post-mod scrub failed (1).
+diskdq.rtb_hardlimit = ones: offline scrub didn't fail.
+diskdq.rtb_hardlimit = firstbit: offline scrub didn't fail.
+diskdq.rtb_hardlimit = middlebit: offline scrub didn't fail.
+diskdq.rtb_hardlimit = lastbit: offline scrub didn't fail.
+diskdq.rtb_hardlimit = add: offline scrub didn't fail.
+diskdq.rtb_hardlimit = sub: offline scrub didn't fail.
+diskdq.rtb_softlimit = ones: offline scrub didn't fail.
+diskdq.rtb_softlimit = ones: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = firstbit: offline scrub didn't fail.
+diskdq.rtb_softlimit = firstbit: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = middlebit: offline scrub didn't fail.
+diskdq.rtb_softlimit = middlebit: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = lastbit: offline scrub didn't fail.
+diskdq.rtb_softlimit = lastbit: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = add: offline scrub didn't fail.
+diskdq.rtb_softlimit = add: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = sub: offline scrub didn't fail.
+diskdq.rtb_softlimit = sub: online post-mod scrub failed (1).
+diskdq.rtbtimer = ones: offline scrub didn't fail.
+diskdq.rtbtimer = ones: online post-mod scrub failed (1).
+diskdq.rtbtimer = firstbit: offline scrub didn't fail.
+diskdq.rtbtimer = firstbit: online post-mod scrub failed (1).
+diskdq.rtbtimer = middlebit: offline scrub didn't fail.
+diskdq.rtbtimer = middlebit: online post-mod scrub failed (1).
+diskdq.rtbtimer = lastbit: offline scrub didn't fail.
+diskdq.rtbtimer = lastbit: online post-mod scrub failed (1).
+diskdq.rtbtimer = add: offline scrub didn't fail.
+diskdq.rtbtimer = add: online post-mod scrub failed (1).
+diskdq.rtbtimer = sub: offline scrub didn't fail.
+diskdq.rtbtimer = sub: online post-mod scrub failed (1).
+Done fuzzing dquot
+Fuzz project 8484 dquot
+diskdq.type = firstbit: offline scrub didn't fail.
+diskdq.blk_hardlimit = ones: offline scrub didn't fail.
+diskdq.blk_hardlimit = firstbit: offline scrub didn't fail.
+diskdq.blk_hardlimit = middlebit: offline scrub didn't fail.
+diskdq.blk_hardlimit = lastbit: offline scrub didn't fail.
+diskdq.blk_hardlimit = add: offline scrub didn't fail.
+diskdq.blk_hardlimit = sub: offline scrub didn't fail.
+diskdq.blk_softlimit = ones: offline scrub didn't fail.
+diskdq.blk_softlimit = ones: online post-mod scrub failed (1).
+diskdq.blk_softlimit = firstbit: offline scrub didn't fail.
+diskdq.blk_softlimit = firstbit: online post-mod scrub failed (1).
+diskdq.blk_softlimit = middlebit: offline scrub didn't fail.
+diskdq.blk_softlimit = middlebit: online post-mod scrub failed (1).
+diskdq.blk_softlimit = lastbit: offline scrub didn't fail.
+diskdq.blk_softlimit = lastbit: online post-mod scrub failed (1).
+diskdq.blk_softlimit = add: offline scrub didn't fail.
+diskdq.blk_softlimit = add: online post-mod scrub failed (1).
+diskdq.blk_softlimit = sub: offline scrub didn't fail.
+diskdq.blk_softlimit = sub: online post-mod scrub failed (1).
+diskdq.ino_hardlimit = ones: offline scrub didn't fail.
+diskdq.ino_hardlimit = firstbit: offline scrub didn't fail.
+diskdq.ino_hardlimit = middlebit: offline scrub didn't fail.
+diskdq.ino_hardlimit = lastbit: offline scrub didn't fail.
+diskdq.ino_hardlimit = add: offline scrub didn't fail.
+diskdq.ino_hardlimit = sub: offline scrub didn't fail.
+diskdq.ino_softlimit = ones: offline scrub didn't fail.
+diskdq.ino_softlimit = ones: online post-mod scrub failed (1).
+diskdq.ino_softlimit = firstbit: offline scrub didn't fail.
+diskdq.ino_softlimit = firstbit: online post-mod scrub failed (1).
+diskdq.ino_softlimit = middlebit: offline scrub didn't fail.
+diskdq.ino_softlimit = middlebit: online post-mod scrub failed (1).
+diskdq.ino_softlimit = lastbit: offline scrub didn't fail.
+diskdq.ino_softlimit = lastbit: online post-mod scrub failed (1).
+diskdq.ino_softlimit = add: offline scrub didn't fail.
+diskdq.ino_softlimit = add: online post-mod scrub failed (1).
+diskdq.ino_softlimit = sub: offline scrub didn't fail.
+diskdq.ino_softlimit = sub: online post-mod scrub failed (1).
+diskdq.itimer = ones: offline scrub didn't fail.
+diskdq.itimer = ones: online post-mod scrub failed (1).
+diskdq.itimer = firstbit: offline scrub didn't fail.
+diskdq.itimer = firstbit: online post-mod scrub failed (1).
+diskdq.itimer = middlebit: offline scrub didn't fail.
+diskdq.itimer = middlebit: online post-mod scrub failed (1).
+diskdq.itimer = lastbit: offline scrub didn't fail.
+diskdq.itimer = lastbit: online post-mod scrub failed (1).
+diskdq.itimer = add: offline scrub didn't fail.
+diskdq.itimer = add: online post-mod scrub failed (1).
+diskdq.itimer = sub: offline scrub didn't fail.
+diskdq.itimer = sub: online post-mod scrub failed (1).
+diskdq.btimer = ones: offline scrub didn't fail.
+diskdq.btimer = ones: online post-mod scrub failed (1).
+diskdq.btimer = firstbit: offline scrub didn't fail.
+diskdq.btimer = firstbit: online post-mod scrub failed (1).
+diskdq.btimer = middlebit: offline scrub didn't fail.
+diskdq.btimer = middlebit: online post-mod scrub failed (1).
+diskdq.btimer = lastbit: offline scrub didn't fail.
+diskdq.btimer = lastbit: online post-mod scrub failed (1).
+diskdq.btimer = add: offline scrub didn't fail.
+diskdq.btimer = add: online post-mod scrub failed (1).
+diskdq.btimer = sub: offline scrub didn't fail.
+diskdq.btimer = sub: online post-mod scrub failed (1).
+diskdq.rtb_hardlimit = ones: offline scrub didn't fail.
+diskdq.rtb_hardlimit = firstbit: offline scrub didn't fail.
+diskdq.rtb_hardlimit = middlebit: offline scrub didn't fail.
+diskdq.rtb_hardlimit = lastbit: offline scrub didn't fail.
+diskdq.rtb_hardlimit = add: offline scrub didn't fail.
+diskdq.rtb_hardlimit = sub: offline scrub didn't fail.
+diskdq.rtb_softlimit = ones: offline scrub didn't fail.
+diskdq.rtb_softlimit = ones: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = firstbit: offline scrub didn't fail.
+diskdq.rtb_softlimit = firstbit: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = middlebit: offline scrub didn't fail.
+diskdq.rtb_softlimit = middlebit: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = lastbit: offline scrub didn't fail.
+diskdq.rtb_softlimit = lastbit: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = add: offline scrub didn't fail.
+diskdq.rtb_softlimit = add: online post-mod scrub failed (1).
+diskdq.rtb_softlimit = sub: offline scrub didn't fail.
+diskdq.rtb_softlimit = sub: online post-mod scrub failed (1).
+diskdq.rtbtimer = ones: offline scrub didn't fail.
+diskdq.rtbtimer = ones: online post-mod scrub failed (1).
+diskdq.rtbtimer = firstbit: offline scrub didn't fail.
+diskdq.rtbtimer = firstbit: online post-mod scrub failed (1).
+diskdq.rtbtimer = middlebit: offline scrub didn't fail.
+diskdq.rtbtimer = middlebit: online post-mod scrub failed (1).
+diskdq.rtbtimer = lastbit: offline scrub didn't fail.
+diskdq.rtbtimer = lastbit: online post-mod scrub failed (1).
+diskdq.rtbtimer = add: offline scrub didn't fail.
+diskdq.rtbtimer = add: online post-mod scrub failed (1).
+diskdq.rtbtimer = sub: offline scrub didn't fail.
+diskdq.rtbtimer = sub: online post-mod scrub failed (1).
 Done fuzzing dquot
diff --git a/tests/xfs/496.out b/tests/xfs/496.out
index 08597a2d88..c0ed81584b 100644
--- a/tests/xfs/496.out
+++ b/tests/xfs/496.out
@@ -2,4 +2,28 @@ QA output created by 496
 Format and populate
 Find single-leafn-format dir block
 Fuzz single-leafn-format dir block
+lhdr.info.hdr.forw = ones: offline scrub didn't fail.
+lhdr.info.hdr.forw = ones: online post-mod scrub failed (1).
+lhdr.info.hdr.forw = firstbit: offline scrub didn't fail.
+lhdr.info.hdr.forw = firstbit: online post-mod scrub failed (1).
+lhdr.info.hdr.forw = middlebit: offline scrub didn't fail.
+lhdr.info.hdr.forw = middlebit: online post-mod scrub failed (1).
+lhdr.info.hdr.forw = lastbit: offline scrub didn't fail.
+lhdr.info.hdr.forw = lastbit: online post-mod scrub failed (1).
+lhdr.info.hdr.forw = add: offline scrub didn't fail.
+lhdr.info.hdr.forw = add: online post-mod scrub failed (1).
+lhdr.info.hdr.forw = sub: offline scrub didn't fail.
+lhdr.info.hdr.forw = sub: online post-mod scrub failed (1).
+lhdr.info.hdr.back = ones: offline scrub didn't fail.
+lhdr.info.hdr.back = ones: online post-mod scrub failed (1).
+lhdr.info.hdr.back = firstbit: offline scrub didn't fail.
+lhdr.info.hdr.back = firstbit: online post-mod scrub failed (1).
+lhdr.info.hdr.back = middlebit: offline scrub didn't fail.
+lhdr.info.hdr.back = middlebit: online post-mod scrub failed (1).
+lhdr.info.hdr.back = lastbit: offline scrub didn't fail.
+lhdr.info.hdr.back = lastbit: online post-mod scrub failed (1).
+lhdr.info.hdr.back = add: offline scrub didn't fail.
+lhdr.info.hdr.back = add: online post-mod scrub failed (1).
+lhdr.info.hdr.back = sub: offline scrub didn't fail.
+lhdr.info.hdr.back = sub: online post-mod scrub failed (1).
 Done fuzzing single-leafn-format dir block
diff --git a/tests/xfs/734.out b/tests/xfs/734.out
index 80b91b6a9b..68b6b7dd8a 100644
--- a/tests/xfs/734.out
+++ b/tests/xfs/734.out
@@ -3,8 +3,17 @@ Format and populate
 Fuzz block map for BLOCK
 Done fuzzing dir map BLOCK
 Fuzz block map for LEAF
+u3.bmx[0].startblock = add: offline repair failed (1).
+u3.bmx[0].startblock = add: offline re-scrub failed (1).
+u3.bmx[0].startblock = add: pre-mod mount failed (32).
+u3.bmx[1].startblock = add: offline repair failed (1).
+u3.bmx[1].startblock = add: offline re-scrub failed (1).
+u3.bmx[1].startblock = add: pre-mod mount failed (32).
 Done fuzzing dir map LEAF
 Fuzz block map for LEAFN
+u3.bmx[0].startblock = add: offline re-scrub failed (1).
+u3.bmx[0].startblock = add: online post-mod scrub failed (1).
+u3.bmx[0].startblock = add: offline post-mod scrub failed (1).
 Done fuzzing dir map LEAFN
 Fuzz block map for NODE
 Done fuzzing dir map NODE
diff --git a/tests/xfs/737.out b/tests/xfs/737.out
index 7ee0f0c625..ba2105d891 100644
--- a/tests/xfs/737.out
+++ b/tests/xfs/737.out
@@ -1,10 +1,24 @@
 QA output created by 737
 Format and populate
 Fuzz block map for EXTENTS_REMOTE3K
+a.bmx[0].blockcount = middlebit: online post-mod scrub failed (1).
+a.bmx[0].blockcount = lastbit: online post-mod scrub failed (1).
 Done fuzzing attr map EXTENTS_REMOTE3K
 Fuzz block map for EXTENTS_REMOTE4K
+a.bmx[0].blockcount = middlebit: offline repair failed (1).
+a.bmx[0].blockcount = middlebit: offline re-scrub failed (1).
+a.bmx[0].blockcount = middlebit: online post-mod scrub failed (1).
+a.bmx[0].blockcount = middlebit: offline post-mod scrub failed (1).
 Done fuzzing attr map EXTENTS_REMOTE4K
 Fuzz block map for LEAF
+a.bmx[0].blockcount = middlebit: offline repair failed (1).
+a.bmx[0].blockcount = middlebit: offline re-scrub failed (1).
+a.bmx[0].blockcount = middlebit: online post-mod scrub failed (1).
+a.bmx[0].blockcount = middlebit: offline post-mod scrub failed (1).
 Done fuzzing attr map LEAF
 Fuzz block map for NODE
+a.bmx[0].blockcount = middlebit: offline repair failed (1).
+a.bmx[0].blockcount = middlebit: offline re-scrub failed (1).
+a.bmx[0].blockcount = middlebit: online post-mod scrub failed (1).
+a.bmx[0].blockcount = middlebit: offline post-mod scrub failed (1).
 Done fuzzing attr map NODE
diff --git a/tests/xfs/754.out b/tests/xfs/754.out
index 0b8eef9ced..174c4300d8 100644
--- a/tests/xfs/754.out
+++ b/tests/xfs/754.out
@@ -1,4 +1,27 @@
 QA output created by 754
 Format and populate
 Fuzz inobt
+leftsib = add: offline scrub didn't fail.
+rightsib = add: offline scrub didn't fail.
+keys[1].startino = zeroes: offline scrub didn't fail.
+keys[1].startino = ones: offline scrub didn't fail.
+keys[1].startino = firstbit: offline scrub didn't fail.
+keys[1].startino = middlebit: offline scrub didn't fail.
+keys[1].startino = lastbit: offline scrub didn't fail.
+keys[1].startino = add: offline scrub didn't fail.
+keys[1].startino = sub: offline scrub didn't fail.
+keys[2].startino = zeroes: offline scrub didn't fail.
+keys[2].startino = ones: offline scrub didn't fail.
+keys[2].startino = firstbit: offline scrub didn't fail.
+keys[2].startino = middlebit: offline scrub didn't fail.
+keys[2].startino = lastbit: offline scrub didn't fail.
+keys[2].startino = add: offline scrub didn't fail.
+keys[2].startino = sub: offline scrub didn't fail.
+keys[3].startino = zeroes: offline scrub didn't fail.
+keys[3].startino = ones: offline scrub didn't fail.
+keys[3].startino = firstbit: offline scrub didn't fail.
+keys[3].startino = middlebit: offline scrub didn't fail.
+keys[3].startino = lastbit: offline scrub didn't fail.
+keys[3].startino = add: offline scrub didn't fail.
+keys[3].startino = sub: offline scrub didn't fail.
 Done fuzzing inobt
diff --git a/tests/xfs/785.out b/tests/xfs/785.out
index f5cdc6b73d..062b80f967 100644
--- a/tests/xfs/785.out
+++ b/tests/xfs/785.out
@@ -1,4 +1,27 @@
 QA output created by 785
 Format and populate
 Fuzz inobt
+leftsib = add: offline scrub didn't fail.
+rightsib = add: offline scrub didn't fail.
+keys[1].startino = zeroes: offline scrub didn't fail.
+keys[1].startino = ones: offline scrub didn't fail.
+keys[1].startino = firstbit: offline scrub didn't fail.
+keys[1].startino = middlebit: offline scrub didn't fail.
+keys[1].startino = lastbit: offline scrub didn't fail.
+keys[1].startino = add: offline scrub didn't fail.
+keys[1].startino = sub: offline scrub didn't fail.
+keys[2].startino = zeroes: offline scrub didn't fail.
+keys[2].startino = ones: offline scrub didn't fail.
+keys[2].startino = firstbit: offline scrub didn't fail.
+keys[2].startino = middlebit: offline scrub didn't fail.
+keys[2].startino = lastbit: offline scrub didn't fail.
+keys[2].startino = add: offline scrub didn't fail.
+keys[2].startino = sub: offline scrub didn't fail.
+keys[3].startino = zeroes: offline scrub didn't fail.
+keys[3].startino = ones: offline scrub didn't fail.
+keys[3].startino = firstbit: offline scrub didn't fail.
+keys[3].startino = middlebit: offline scrub didn't fail.
+keys[3].startino = lastbit: offline scrub didn't fail.
+keys[3].startino = add: offline scrub didn't fail.
+keys[3].startino = sub: offline scrub didn't fail.
 Done fuzzing inobt


  parent reply	other threads:[~2024-01-01  0:44 UTC|newest]

Thread overview: 637+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-12-31 18:12 [NYE PATCHRIVER 1/4] xfs: the rest of online repair part 1 Darrick J. Wong
2023-12-31 19:25 ` [PATCHSET v29.0 01/28] xfs: live inode scans for online fsck Darrick J. Wong
2023-12-31 20:04   ` [PATCH 1/7] xfs: speed up xfs_iwalk_adjust_start a little bit Darrick J. Wong
2024-01-02 10:24     ` Christoph Hellwig
2023-12-31 20:04   ` [PATCH 2/7] xfs: implement live inode scan for scrub Darrick J. Wong
2024-01-02 11:22     ` Christoph Hellwig
2023-12-31 20:05   ` [PATCH 3/7] xfs: allow scrub to hook metadata updates in other writers Darrick J. Wong
2024-01-02 11:30     ` Christoph Hellwig
2024-01-03  0:23       ` Darrick J. Wong
2023-12-31 20:05   ` [PATCH 4/7] xfs: allow blocking notifier chains with filesystem hooks Darrick J. Wong
2024-01-02 10:28     ` Christoph Hellwig
2024-01-03  1:07       ` Darrick J. Wong
2024-01-03  7:37         ` Christoph Hellwig
2024-01-03 18:40           ` Darrick J. Wong
2023-12-31 20:05   ` [PATCH 5/7] xfs: stagger the starting AG of scrub iscans to reduce contention Darrick J. Wong
2024-01-02 11:30     ` Christoph Hellwig
2023-12-31 20:06   ` [PATCH 6/7] xfs: cache a bunch of inodes for repair scans Darrick J. Wong
2024-01-02 11:40     ` Christoph Hellwig
2023-12-31 20:06   ` [PATCH 7/7] xfs: iscan batching should handle unallocated inodes too Darrick J. Wong
2024-01-02 11:40     ` Christoph Hellwig
2024-01-03  1:09       ` Darrick J. Wong
2023-12-31 19:25 ` [PATCHSET v29.0 02/28] xfs: repair inode mode by scanning dirs Darrick J. Wong
2023-12-31 20:06   ` [PATCH 1/4] xfs: create a static name for the dot entry too Darrick J. Wong
2024-01-02 11:11     ` Christoph Hellwig
2023-12-31 20:06   ` [PATCH 2/4] xfs: create a predicate to determine if two xfs_names are the same Darrick J. Wong
2024-01-02 11:13     ` Christoph Hellwig
2024-01-03  0:02       ` Darrick J. Wong
2023-12-31 20:07   ` [PATCH 3/4] xfs: create a macro for decoding ftypes in tracepoints Darrick J. Wong
2024-01-02 11:13     ` Christoph Hellwig
2024-01-03  0:06       ` Darrick J. Wong
2023-12-31 20:07   ` [PATCH 4/4] xfs: repair file modes by scanning for a dirent pointing to us Darrick J. Wong
2024-01-02 10:29     ` Christoph Hellwig
2024-01-03  2:50       ` Darrick J. Wong
2024-01-03  7:38         ` Christoph Hellwig
2023-12-31 19:26 ` [PATCHSET v29.0 03/28] xfs: online repair of quota counters Darrick J. Wong
2023-12-31 20:07   ` [PATCH 1/5] xfs: report the health of quota counts Darrick J. Wong
2024-01-02 10:30     ` Christoph Hellwig
2023-12-31 20:07   ` [PATCH 2/5] xfs: implement live quotacheck inode scan Darrick J. Wong
2024-01-05  5:29     ` Christoph Hellwig
2024-01-06  1:16       ` Darrick J. Wong
2024-01-09  1:23         ` Darrick J. Wong
2024-01-09  4:35           ` Christoph Hellwig
2023-12-31 20:08   ` [PATCH 3/5] xfs: track quota updates during live quotacheck Darrick J. Wong
2024-01-05  5:30     ` Christoph Hellwig
2023-12-31 20:08   ` [PATCH 4/5] xfs: repair cannot update the summary counters when logging quota flags Darrick J. Wong
2024-01-05  5:35     ` Christoph Hellwig
2024-01-06 18:52       ` Darrick J. Wong
2023-12-31 20:08   ` [PATCH 5/5] xfs: repair dquots based on live quotacheck results Darrick J. Wong
2024-01-05  5:35     ` Christoph Hellwig
2023-12-31 19:26 ` [PATCHSET v29.0 04/28] xfs: online repair of file link counts Darrick J. Wong
2023-12-31 20:08   ` [PATCH 1/4] xfs: report health of inode " Darrick J. Wong
2024-01-05  5:39     ` Christoph Hellwig
2023-12-31 20:09   ` [PATCH 2/4] xfs: teach scrub to check file nlinks Darrick J. Wong
2024-01-05  5:40     ` Christoph Hellwig
2023-12-31 20:09   ` [PATCH 3/4] xfs: track directory entry updates during live nlinks fsck Darrick J. Wong
2024-01-05  5:41     ` Christoph Hellwig
2023-12-31 20:09   ` [PATCH 4/4] xfs: teach repair to fix file nlinks Darrick J. Wong
2024-01-05  5:42     ` Christoph Hellwig
2023-12-31 19:26 ` [PATCHSET v29.0 05/28] xfs: report corruption to the health trackers Darrick J. Wong
2023-12-31 20:09   ` [PATCH 01/11] xfs: separate the marking of sick and checked metadata Darrick J. Wong
2024-01-05  5:42     ` Christoph Hellwig
2023-12-31 20:10   ` [PATCH 02/11] xfs: report fs corruption errors to the health tracking system Darrick J. Wong
2024-01-05  5:42     ` Christoph Hellwig
2023-12-31 20:10   ` [PATCH 03/11] xfs: report ag header " Darrick J. Wong
2024-01-05  5:43     ` Christoph Hellwig
2023-12-31 20:10   ` [PATCH 04/11] xfs: report block map " Darrick J. Wong
2024-01-05  5:43     ` Christoph Hellwig
2023-12-31 20:10   ` [PATCH 05/11] xfs: report btree block corruption errors to the health system Darrick J. Wong
2024-01-05  5:43     ` Christoph Hellwig
2023-12-31 20:11   ` [PATCH 06/11] xfs: report dir/attr " Darrick J. Wong
2024-01-05  5:44     ` Christoph Hellwig
2023-12-31 20:11   ` [PATCH 07/11] xfs: report symlink " Darrick J. Wong
2024-01-05  5:44     ` Christoph Hellwig
2023-12-31 20:11   ` [PATCH 08/11] xfs: report inode " Darrick J. Wong
2024-01-05  5:44     ` Christoph Hellwig
2023-12-31 20:12   ` [PATCH 09/11] xfs: report quota block " Darrick J. Wong
2024-01-05  5:44     ` Christoph Hellwig
2023-12-31 20:12   ` [PATCH 10/11] xfs: report realtime metadata " Darrick J. Wong
2024-01-05  5:45     ` Christoph Hellwig
2023-12-31 20:12   ` [PATCH 11/11] xfs: report XFS_IS_CORRUPT " Darrick J. Wong
2024-01-05  5:45     ` Christoph Hellwig
2023-12-31 19:26 ` [PATCHSET v29.0 06/28] xfs: indirect health reporting Darrick J. Wong
2023-12-31 20:12   ` [PATCH 1/3] xfs: add secondary and indirect classes to the health tracking system Darrick J. Wong
2024-01-05  5:46     ` Christoph Hellwig
2023-12-31 20:13   ` [PATCH 2/3] xfs: remember sick inodes that get inactivated Darrick J. Wong
2024-01-05  5:46     ` Christoph Hellwig
2023-12-31 20:13   ` [PATCH 3/3] xfs: update health status if we get a clean bill of health Darrick J. Wong
2024-01-05  5:47     ` Christoph Hellwig
2023-12-31 19:27 ` [PATCHSET v29.0 07/28] xfs: online repair for fs summary counters Darrick J. Wong
2023-12-31 20:13   ` [PATCH 1/1] xfs: repair " Darrick J. Wong
2024-01-05  5:48     ` Christoph Hellwig
2023-12-31 19:27 ` [PATCHSET v29.0 08/28] xfs: support in-memory btrees Darrick J. Wong
2023-12-31 20:13   ` [PATCH 1/9] xfs: dump xfiles for debugging purposes Darrick J. Wong
2024-01-01  0:02     ` Matthew Wilcox
2024-01-03  1:52       ` Darrick J. Wong
2024-01-03  8:49     ` Christoph Hellwig
2023-12-31 20:14   ` [PATCH 2/9] xfs: teach buftargs to maintain their own buffer hashtable Darrick J. Wong
2023-12-31 20:14   ` [PATCH 3/9] xfs: create buftarg helpers to abstract block_device operations Darrick J. Wong
2024-01-03  8:51     ` Christoph Hellwig
2024-01-03 19:26       ` Darrick J. Wong
2024-01-03 19:32         ` Christoph Hellwig
2023-12-31 20:14   ` [PATCH 4/9] xfs: make GFP_ usage consistent when allocating buftargs Darrick J. Wong
2024-01-03  8:52     ` Christoph Hellwig
2023-12-31 20:14   ` [PATCH 5/9] xfs: support in-memory buffer cache targets Darrick J. Wong
2023-12-31 20:15   ` [PATCH 6/9] xfs: consolidate btree block freeing tracepoints Darrick J. Wong
2024-01-03  8:53     ` Christoph Hellwig
2024-01-03 19:37       ` Darrick J. Wong
2024-01-04  6:19         ` Christoph Hellwig
2024-01-04  7:15           ` Darrick J. Wong
2023-12-31 20:15   ` [PATCH 7/9] xfs: consolidate btree block allocation tracepoints Darrick J. Wong
2023-12-31 20:15   ` [PATCH 8/9] xfs: support in-memory btrees Darrick J. Wong
2024-01-04  6:47     ` Christoph Hellwig
2024-01-04  7:27       ` Darrick J. Wong
2024-01-04  7:30         ` Christoph Hellwig
2024-01-04  7:33           ` Darrick J. Wong
2024-01-04  7:40             ` Christoph Hellwig
2023-12-31 20:15   ` [PATCH 9/9] xfs: connect in-memory btrees to xfiles Darrick J. Wong
2024-01-01  0:18     ` Matthew Wilcox
2024-01-03  2:04       ` Darrick J. Wong
2024-01-04  6:54     ` Christoph Hellwig
2024-01-04  7:32       ` Darrick J. Wong
2024-01-04  7:41         ` Christoph Hellwig
2023-12-31 19:27 ` [PATCHSET v29.0 09/28] xfs: online repair of rmap btrees Darrick J. Wong
2023-12-31 20:16   ` [PATCH 1/4] xfs: create a helper to decide if a file mapping targets the rt volume Darrick J. Wong
2024-01-05  5:48     ` Christoph Hellwig
2023-12-31 20:16   ` [PATCH 2/4] xfs: repair the rmapbt Darrick J. Wong
2023-12-31 20:16   ` [PATCH 3/4] xfs: create a shadow rmap btree during rmap repair Darrick J. Wong
2023-12-31 20:16   ` [PATCH 4/4] xfs: hook live rmap operations during a repair operation Darrick J. Wong
2023-12-31 19:27 ` [PATCHSET v29.0 10/28] xfs: move btree geometry to ops struct Darrick J. Wong
2023-12-31 20:17   ` [PATCH 1/9] xfs: set the btree cursor bc_ops in xfs_btree_alloc_cursor Darrick J. Wong
2024-01-02 10:31     ` Christoph Hellwig
2023-12-31 20:17   ` [PATCH 2/9] xfs: encode the default bc_flags in the btree ops structure Darrick J. Wong
2024-01-02 10:33     ` Christoph Hellwig
2024-01-03  1:15       ` Darrick J. Wong
2024-01-03 19:58         ` Darrick J. Wong
2024-01-03 20:00           ` Darrick J. Wong
2024-01-03 20:35             ` Christoph Hellwig
2023-12-31 20:17   ` [PATCH 3/9] xfs: export some of the btree ops structures Darrick J. Wong
2024-01-02 10:36     ` Christoph Hellwig
2023-12-31 20:17   ` [PATCH 4/9] xfs: initialize btree blocks using btree_ops structure Darrick J. Wong
2024-01-02 10:36     ` Christoph Hellwig
2023-12-31 20:18   ` [PATCH 5/9] xfs: rename btree block/buffer init functions Darrick J. Wong
2024-01-02 10:37     ` Christoph Hellwig
2023-12-31 20:18   ` [PATCH 6/9] xfs: btree convert xfs_btree_init_block to xfs_btree_init_buf calls Darrick J. Wong
2024-01-02 10:37     ` Christoph Hellwig
2023-12-31 20:18   ` [PATCH 7/9] xfs: remove the unnecessary daddr paramter to _init_block Darrick J. Wong
2024-01-02 10:38     ` Christoph Hellwig
2023-12-31 20:19   ` [PATCH 8/9] xfs: set btree block buffer ops in _init_buf Darrick J. Wong
2024-01-02 10:38     ` Christoph Hellwig
2023-12-31 20:19   ` [PATCH 9/9] xfs: remove unnecessary fields in xfbtree_config Darrick J. Wong
2024-01-02 10:39     ` Christoph Hellwig
2024-01-03  2:51       ` Darrick J. Wong
2024-01-03  7:40         ` Christoph Hellwig
2023-12-31 19:28 ` [PATCHSET v29.0 11/28] xfs: reduce refcount repair memory usage Darrick J. Wong
2023-12-31 20:19   ` [PATCH 1/4] xfs: move lru refs to the btree ops structure Darrick J. Wong
2024-01-02 10:39     ` Christoph Hellwig
2023-12-31 20:19   ` [PATCH 2/4] xfs: define an in-memory btree for storing refcount bag info during repairs Darrick J. Wong
2024-01-02 10:41     ` Christoph Hellwig
2024-01-03  2:29       ` Darrick J. Wong
2023-12-31 20:20   ` [PATCH 3/4] xfs: create refcount bag structure for btree repairs Darrick J. Wong
2024-01-02 10:42     ` Christoph Hellwig
2023-12-31 20:20   ` [PATCH 4/4] xfs: port refcount repair to the new refcount bag structure Darrick J. Wong
2024-01-02 10:43     ` Christoph Hellwig
2024-01-03  2:31       ` Darrick J. Wong
2023-12-31 19:28 ` [PATCHSET v29.0 12/28] xfs: bmap log intent cleanups Darrick J. Wong
2023-12-31 20:20   ` [PATCH 1/7] xfs: split tracepoint classes for deferred items Darrick J. Wong
2024-01-02 10:44     ` Christoph Hellwig
2023-12-31 20:20   ` [PATCH 2/7] xfs: clean up bmap log intent item tracepoint callsites Darrick J. Wong
2024-01-02 10:44     ` Christoph Hellwig
2023-12-31 20:21   ` [PATCH 3/7] xfs: remove xfs_trans_set_bmap_flags Darrick J. Wong
2024-01-02 10:44     ` Christoph Hellwig
2023-12-31 20:21   ` [PATCH 4/7] xfs: add a bi_entry helper Darrick J. Wong
2024-01-02 10:44     ` Christoph Hellwig
2023-12-31 20:21   ` [PATCH 5/7] xfs: reuse xfs_bmap_update_cancel_item Darrick J. Wong
2024-01-02 10:45     ` Christoph Hellwig
2024-01-03  1:21       ` Darrick J. Wong
2023-12-31 20:21   ` [PATCH 6/7] xfs: move xfs_bmap_defer_add to xfs_bmap_item.c Darrick J. Wong
2024-01-02 10:45     ` Christoph Hellwig
2023-12-31 20:22   ` [PATCH 7/7] xfs: add a xattr_entry helper Darrick J. Wong
2024-01-02 10:45     ` Christoph Hellwig
2023-12-31 19:28 ` [PATCHSET v29.0 13/28] xfs: widen BUI formats to support realtime Darrick J. Wong
2023-12-31 20:22   ` [PATCH 1/3] xfs: fix xfs_bunmapi to allow unmapping of partial rt extents Darrick J. Wong
2024-01-02 10:46     ` Christoph Hellwig
2023-12-31 20:22   ` [PATCH 2/3] xfs: add a realtime flag to the bmap update log redo items Darrick J. Wong
2024-01-02 10:46     ` Christoph Hellwig
2023-12-31 20:22   ` [PATCH 3/3] xfs: support recovering bmap intent items targetting realtime extents Darrick J. Wong
2024-01-02 10:46     ` Christoph Hellwig
2023-12-31 19:29 ` [PATCHSET v29.0 14/28] xfs: support attrfork and unwritten BUIs Darrick J. Wong
2023-12-31 20:23   ` [PATCH 1/2] xfs: support deferred bmap updates on the attr fork Darrick J. Wong
2024-01-05  5:50     ` Christoph Hellwig
2023-12-31 20:23   ` [PATCH 2/2] xfs: xfs_bmap_finish_one should map unwritten extents properly Darrick J. Wong
2024-01-05  5:50     ` Christoph Hellwig
2023-12-31 19:29 ` [PATCHSET v29.0 15/28] xfs: clean up symbolic link code Darrick J. Wong
2023-12-31 20:23   ` [PATCH 1/3] xfs: move xfs_symlink_remote.c declarations to xfs_symlink_remote.h Darrick J. Wong
2024-01-05  5:51     ` Christoph Hellwig
2023-12-31 20:23   ` [PATCH 2/3] xfs: move remote symlink target read function to libxfs Darrick J. Wong
2024-01-05  5:51     ` Christoph Hellwig
2023-12-31 20:24   ` [PATCH 3/3] xfs: move symlink target write " Darrick J. Wong
2024-01-05  5:52     ` Christoph Hellwig
2023-12-31 19:29 ` [PATCHSET v29.0 16/28] xfs: atomic file updates Darrick J. Wong
2023-12-31 20:24   ` [PATCH 01/25] xfs: add a libxfs header file for staging new ioctls Darrick J. Wong
2023-12-31 20:24   ` [PATCH 02/25] xfs: introduce new file range exchange ioctl Darrick J. Wong
2023-12-31 20:25   ` [PATCH 03/25] xfs: move inode lease breaking functions to xfs_inode.c Darrick J. Wong
2023-12-31 20:25   ` [PATCH 04/25] xfs: move xfs_iops.c declarations out of xfs_inode.h Darrick J. Wong
2023-12-31 20:25   ` [PATCH 05/25] xfs: declare xfs_file.c symbols in xfs_file.h Darrick J. Wong
2023-12-31 20:25   ` [PATCH 06/25] xfs: create a new helper to return a file's allocation unit Darrick J. Wong
2023-12-31 20:26   ` [PATCH 07/25] xfs: refactor non-power-of-two alignment checks Darrick J. Wong
2023-12-31 20:26   ` [PATCH 08/25] xfs: parameterize all the incompat log feature helpers Darrick J. Wong
2023-12-31 20:26   ` [PATCH 09/25] xfs: create a log incompat flag for atomic extent swapping Darrick J. Wong
2023-12-31 20:26   ` [PATCH 10/25] xfs: introduce a swap-extent log intent item Darrick J. Wong
2023-12-31 20:27   ` [PATCH 11/25] xfs: create deferred log items for extent swapping Darrick J. Wong
2023-12-31 20:27   ` [PATCH 12/25] xfs: enable xlog users to toggle atomic " Darrick J. Wong
2023-12-31 20:27   ` [PATCH 13/25] xfs: bind the xfs-specific extent swap code to the vfs-generic file exchange code Darrick J. Wong
2023-12-31 20:27   ` [PATCH 14/25] xfs: add error injection to test swapext recovery Darrick J. Wong
2023-12-31 20:28   ` [PATCH 15/25] xfs: port xfs_swap_extents_rmap to our new code Darrick J. Wong
2023-12-31 20:28   ` [PATCH 16/25] xfs: consolidate all of the xfs_swap_extent_forks code Darrick J. Wong
2023-12-31 20:28   ` [PATCH 17/25] xfs: port xfs_swap_extent_forks to use xfs_swapext_req Darrick J. Wong
2023-12-31 20:28   ` [PATCH 18/25] xfs: allow xfs_swap_range to use older extent swap algorithms Darrick J. Wong
2023-12-31 20:29   ` [PATCH 19/25] xfs: remove old swap extents implementation Darrick J. Wong
2023-12-31 20:29   ` [PATCH 20/25] xfs: condense extended attributes after an atomic swap Darrick J. Wong
2023-12-31 20:29   ` [PATCH 21/25] xfs: condense directories " Darrick J. Wong
2023-12-31 20:29   ` [PATCH 22/25] xfs: condense symbolic links " Darrick J. Wong
2023-12-31 20:30   ` [PATCH 23/25] xfs: make atomic extent swapping support realtime files Darrick J. Wong
2023-12-31 20:30   ` [PATCH 24/25] xfs: support non-power-of-two rtextsize with exchange-range Darrick J. Wong
2023-12-31 20:30   ` [PATCH 25/25] xfs: enable atomic swapext feature Darrick J. Wong
2023-12-31 19:29 ` [PATCHSET v29.0 17/28] xfs: create temporary files for online repair Darrick J. Wong
2023-12-31 20:31   ` [PATCH 1/4] xfs: hide private inodes from bulkstat and handle functions Darrick J. Wong
2023-12-31 20:31   ` [PATCH 2/4] xfs: create temporary files and directories for online repair Darrick J. Wong
2023-12-31 20:31   ` [PATCH 3/4] xfs: refactor live buffer invalidation for repairs Darrick J. Wong
2023-12-31 20:31   ` [PATCH 4/4] xfs: add the ability to reap entire inode forks Darrick J. Wong
2023-12-31 19:30 ` [PATCHSET v29.0 18/28] xfs: online repair of realtime summaries Darrick J. Wong
2023-12-31 20:32   ` [PATCH 1/3] xfs: support preallocating and copying content into temporary files Darrick J. Wong
2023-12-31 20:32   ` [PATCH 2/3] xfs: teach the tempfile to support atomic extent swapping Darrick J. Wong
2023-12-31 20:32   ` [PATCH 3/3] xfs: online repair of realtime summaries Darrick J. Wong
2023-12-31 19:30 ` [PATCHSET v29.0 19/28] xfs: set and validate dir/attr block owners Darrick J. Wong
2023-12-31 20:32   ` [PATCH 1/9] xfs: add an explicit owner field to xfs_da_args Darrick J. Wong
2023-12-31 20:33   ` [PATCH 2/9] xfs: use the xfs_da_args owner field to set new dir/attr block owner Darrick J. Wong
2023-12-31 20:33   ` [PATCH 3/9] xfs: validate attr leaf buffer owners Darrick J. Wong
2023-12-31 20:33   ` [PATCH 4/9] xfs: validate attr remote value " Darrick J. Wong
2023-12-31 20:33   ` [PATCH 5/9] xfs: validate dabtree node " Darrick J. Wong
2023-12-31 20:34   ` [PATCH 6/9] xfs: validate directory leaf " Darrick J. Wong
2023-12-31 20:34   ` [PATCH 7/9] xfs: validate explicit directory data " Darrick J. Wong
2023-12-31 20:34   ` [PATCH 8/9] xfs: validate explicit directory block " Darrick J. Wong
2023-12-31 20:34   ` [PATCH 9/9] xfs: validate explicit directory free block owners Darrick J. Wong
2023-12-31 19:30 ` [PATCHSET v29.0 20/28] xfs: online repair of extended attributes Darrick J. Wong
2023-12-31 20:35   ` [PATCH 1/6] xfs: create a blob array data structure Darrick J. Wong
2024-01-05  5:53     ` Christoph Hellwig
2024-01-06  1:33       ` Darrick J. Wong
2024-01-06  6:42         ` Christoph Hellwig
2024-01-06 18:55           ` Darrick J. Wong
2024-01-08 17:12           ` Darrick J. Wong
2023-12-31 20:35   ` [PATCH 2/6] xfs: use atomic extent swapping to fix user file fork data Darrick J. Wong
2023-12-31 20:35   ` [PATCH 3/6] xfs: repair extended attributes Darrick J. Wong
2023-12-31 20:35   ` [PATCH 4/6] xfs: scrub should set preen if attr leaf has holes Darrick J. Wong
2023-12-31 20:36   ` [PATCH 5/6] xfs: flag empty xattr leaf blocks for optimization Darrick J. Wong
2023-12-31 20:36   ` [PATCH 6/6] xfs: create an xattr iteration function for scrub Darrick J. Wong
2023-12-31 19:30 ` [PATCHSET v29.0 21/28] xfs: online repair of inode unlinked state Darrick J. Wong
2023-12-31 20:36   ` [PATCH 1/2] xfs: ensure unlinked list state is consistent with nlink during scrub Darrick J. Wong
2023-12-31 20:37   ` [PATCH 2/2] xfs: update the unlinked list when repairing link counts Darrick J. Wong
2023-12-31 19:31 ` [PATCHSET v29.0 22/28] xfs: online repair of directories Darrick J. Wong
2023-12-31 20:37   ` [PATCH 1/4] " Darrick J. Wong
2023-12-31 20:37   ` [PATCH 2/4] xfs: scan the filesystem to repair a directory dotdot entry Darrick J. Wong
2023-12-31 20:37   ` [PATCH 3/4] xfs: online repair of parent pointers Darrick J. Wong
2023-12-31 20:38   ` [PATCH 4/4] xfs: ask the dentry cache if it knows the parent of a directory Darrick J. Wong
2023-12-31 19:31 ` [PATCHSET v29.0 23/28] xfs: move orphan files to lost and found Darrick J. Wong
2023-12-31 20:38   ` [PATCH 1/3] xfs: move orphan files to the orphanage Darrick J. Wong
2023-12-31 20:38   ` [PATCH 2/3] xfs: move files to orphanage instead of letting nlinks drop to zero Darrick J. Wong
2023-12-31 20:38   ` [PATCH 3/3] xfs: ensure dentry consistency when the orphanage adopts a file Darrick J. Wong
2023-12-31 19:31 ` [PATCHSET v29.0 24/28] xfs: online repair of symbolic links Darrick J. Wong
2023-12-31 20:39   ` [PATCH 1/1] " Darrick J. Wong
2023-12-31 19:31 ` [PATCHSET v29.0 25/28] xfs: online fsck of iunlink buckets Darrick J. Wong
2023-12-31 20:39   ` [PATCH 1/3] xfs: check AGI unlinked inode buckets Darrick J. Wong
2023-12-31 20:39   ` [PATCH 2/3] xfs: hoist AGI repair context to a heap object Darrick J. Wong
2023-12-31 20:39   ` [PATCH 3/3] xfs: repair AGI unlinked inode bucket lists Darrick J. Wong
2023-12-31 19:32 ` [PATCHSET v29.0 26/28] xfs: cache xfile pages for better performance Darrick J. Wong
2023-12-31 20:40   ` [PATCH 1/3] xfs: map xfile pages directly into xfs_buf Darrick J. Wong
2023-12-31 20:40   ` [PATCH 2/3] xfs: use b_offset to support direct-mapping pages when blocksize < pagesize Darrick J. Wong
2024-01-03  8:45     ` Christoph Hellwig
2024-01-04  1:27       ` Darrick J. Wong
2023-12-31 20:40   ` [PATCH 3/3] xfile: implement write caching Darrick J. Wong
2024-01-03  8:48     ` Christoph Hellwig
2024-01-04  1:33       ` Darrick J. Wong
2024-01-04  6:20         ` Christoph Hellwig
2024-01-04  7:20           ` Darrick J. Wong
2024-01-04  7:28             ` Christoph Hellwig
2024-01-04  7:34               ` Darrick J. Wong
2024-01-04  7:39                 ` Christoph Hellwig
2024-01-04 17:59                   ` Darrick J. Wong
2023-12-31 19:32 ` [PATCHSET v29.0 27/28] xfs: inode-related repair fixes Darrick J. Wong
2023-12-31 20:40   ` [PATCH 1/4] xfs: check unused nlink fields in the ondisk inode Darrick J. Wong
2023-12-31 20:41   ` [PATCH 2/4] xfs: try to avoid allocating from sick inode clusters Darrick J. Wong
2023-12-31 20:41   ` [PATCH 3/4] xfs: pin inodes that would otherwise overflow link count Darrick J. Wong
2023-12-31 20:41   ` [PATCH 4/4] xfs: create subordinate scrub contexts for xchk_metadata_inode_subtype Darrick J. Wong
2023-12-31 19:32 ` [PATCHSET v29.0 28/28] xfs: less heavy locks during fstrim Darrick J. Wong
2023-12-31 20:41   ` [PATCH 1/1] xfs: fix severe performance problems when fstrimming a subset of an AG Darrick J. Wong
2023-12-31 19:39 ` [PATCHSET v29.0 01/40] xfs_scrub: fix licensing and copyright notices Darrick J. Wong
2023-12-31 22:04   ` [PATCH 1/3] xfs_scrub: fix author and spdx headers on scrub/ files Darrick J. Wong
2024-01-05  4:49     ` Christoph Hellwig
2023-12-31 22:04   ` [PATCH 2/3] xfs_scrub: add missing license and copyright information Darrick J. Wong
2024-01-05  4:50     ` Christoph Hellwig
2024-01-06  0:34       ` Darrick J. Wong
2023-12-31 22:04   ` [PATCH 3/3] xfs_scrub: update copyright years for scrub/ files Darrick J. Wong
2024-01-05  4:50     ` Christoph Hellwig
2023-12-31 19:40 ` [PATCHSET 02/40] mkfs: scale shards on ssds Darrick J. Wong
2023-12-31 22:04   ` [PATCH 1/2] mkfs: allow sizing allocation groups for concurrency Darrick J. Wong
2024-01-05  4:51     ` Christoph Hellwig
2023-12-31 22:05   ` [PATCH 2/2] mkfs: allow sizing internal logs " Darrick J. Wong
2024-01-05  4:52     ` Christoph Hellwig
2023-12-31 19:40 ` [PATCHSET v29.0 03/40] xfs_scrub: scan metadata files in parallel Darrick J. Wong
2023-12-31 22:05   ` [PATCH 1/3] libfrog: rename XFROG_SCRUB_TYPE_* to XFROG_SCRUB_GROUP_* Darrick J. Wong
2024-01-05  4:52     ` Christoph Hellwig
2023-12-31 22:05   ` [PATCH 2/3] libfrog: promote XFROG_SCRUB_DESCR_SUMMARY to a scrub type Darrick J. Wong
2024-01-05  4:53     ` Christoph Hellwig
2023-12-31 22:05   ` [PATCH 3/3] xfs_scrub: scan whole-fs metadata files in parallel Darrick J. Wong
2024-01-05  4:53     ` Christoph Hellwig
2023-12-31 19:40 ` [PATCHSET v29.0 04/40] xfs: repair inode mode by scanning dirs Darrick J. Wong
2023-12-31 22:06   ` [PATCH 1/3] xfs: create a static name for the dot entry too Darrick J. Wong
2023-12-31 22:06   ` [PATCH 2/3] xfs: create a predicate to determine if two xfs_names are the same Darrick J. Wong
2023-12-31 22:06   ` [PATCH 3/3] xfs: create a macro for decoding ftypes in tracepoints Darrick J. Wong
2023-12-31 19:40 ` [PATCHSET v29.0 05/40] xfsprogs: online repair of quota counters Darrick J. Wong
2023-12-31 22:06   ` [PATCH 1/3] xfs: report the health of quota counts Darrick J. Wong
2023-12-31 22:07   ` [PATCH 2/3] libfrog: create a new scrub group for things requiring full inode scans Darrick J. Wong
2023-12-31 22:07   ` [PATCH 3/3] xfs: implement live quotacheck inode scan Darrick J. Wong
2023-12-31 19:41 ` [PATCHSET v29.0 06/40] xfs_repair: rebuild inode fork mappings Darrick J. Wong
2023-12-31 22:07   ` [PATCH 1/3] xfs_repair: push inode buf and dinode pointers all the way to inode fork processing Darrick J. Wong
2023-12-31 22:08   ` [PATCH 2/3] xfs_repair: sync bulkload data structures with kernel newbt code Darrick J. Wong
2023-12-31 22:08   ` [PATCH 3/3] xfs_repair: rebuild block mappings from rmapbt data Darrick J. Wong
2023-12-31 19:41 ` [PATCHSET 07/40] xfs_repair: support more than 4 billion records Darrick J. Wong
2023-12-31 22:08   ` [PATCH 1/8] xfs_db: add a bmbt inflation command Darrick J. Wong
2023-12-31 22:08   ` [PATCH 2/8] xfs_repair: slab and bag structs need to track more than 2^32 items Darrick J. Wong
2023-12-31 22:09   ` [PATCH 3/8] xfs_repair: support more than 2^32 rmapbt records per AG Darrick J. Wong
2023-12-31 22:09   ` [PATCH 4/8] xfs_repair: support more than 2^32 owners per physical block Darrick J. Wong
2023-12-31 22:09   ` [PATCH 5/8] xfs_repair: clean up lock resources Darrick J. Wong
2023-12-31 22:09   ` [PATCH 6/8] xfs_repair: constrain attr fork extent count Darrick J. Wong
2023-12-31 22:10   ` [PATCH 7/8] xfs_repair: don't create block maps for data files Darrick J. Wong
2023-12-31 22:10   ` [PATCH 8/8] xfs_repair: support more than INT_MAX block maps Darrick J. Wong
2023-12-31 19:41 ` [PATCHSET v29.0 08/40] xfsprogs: online repair of file link counts Darrick J. Wong
2023-12-31 22:10   ` [PATCH 1/3] xfs: report health of inode " Darrick J. Wong
2023-12-31 22:10   ` [PATCH 2/3] xfs: teach scrub to check file nlinks Darrick J. Wong
2023-12-31 22:11   ` [PATCH 3/3] xfs_scrub: use multiple threads to run in-kernel metadata scrubs that scan inodes Darrick J. Wong
2023-12-31 19:42 ` [PATCHSET v29.0 09/40] xfsprogs: report corruption to the health trackers Darrick J. Wong
2023-12-31 22:11   ` [PATCH 1/9] xfs: separate the marking of sick and checked metadata Darrick J. Wong
2023-12-31 22:11   ` [PATCH 2/9] xfs: report fs corruption errors to the health tracking system Darrick J. Wong
2023-12-31 22:11   ` [PATCH 3/9] xfs: report ag header " Darrick J. Wong
2023-12-31 22:12   ` [PATCH 4/9] xfs: report block map " Darrick J. Wong
2023-12-31 22:12   ` [PATCH 5/9] xfs: report btree block corruption errors to the health system Darrick J. Wong
2023-12-31 22:12   ` [PATCH 6/9] xfs: report dir/attr " Darrick J. Wong
2023-12-31 22:12   ` [PATCH 7/9] xfs: report inode " Darrick J. Wong
2023-12-31 22:13   ` [PATCH 8/9] xfs: report realtime metadata " Darrick J. Wong
2023-12-31 22:13   ` [PATCH 9/9] xfs: report XFS_IS_CORRUPT " Darrick J. Wong
2023-12-31 19:42 ` [PATCHSET v29.0 10/40] xfsprogs: indirect health reporting Darrick J. Wong
2023-12-31 22:13   ` [PATCH 1/4] xfs: add secondary and indirect classes to the health tracking system Darrick J. Wong
2023-12-31 22:14   ` [PATCH 2/4] xfs: remember sick inodes that get inactivated Darrick J. Wong
2023-12-31 22:14   ` [PATCH 3/4] xfs: update health status if we get a clean bill of health Darrick J. Wong
2023-12-31 22:14   ` [PATCH 4/4] xfs_scrub: upload clean bills " Darrick J. Wong
2023-12-31 19:42 ` [PATCHSET v29.0 11/40] xfsprogs: support in-memory btrees Darrick J. Wong
2023-12-31 22:14   ` [PATCH 01/10] libxfs: clean up xfs_da_unmount usage Darrick J. Wong
2023-12-31 22:15   ` [PATCH 02/10] libxfs: teach buftargs to maintain their own buffer hashtable Darrick J. Wong
2023-12-31 22:15   ` [PATCH 03/10] libxfs: add xfile support Darrick J. Wong
2023-12-31 22:15   ` [PATCH 04/10] xfs: teach buftargs to maintain their own buffer hashtable Darrick J. Wong
2023-12-31 22:15   ` [PATCH 05/10] libxfs: support in-memory buffer cache targets Darrick J. Wong
2023-12-31 22:16   ` [PATCH 06/10] xfs: consolidate btree block freeing tracepoints Darrick J. Wong
2023-12-31 22:16   ` [PATCH 07/10] xfs: consolidate btree block allocation tracepoints Darrick J. Wong
2023-12-31 22:16   ` [PATCH 08/10] xfs: support in-memory btrees Darrick J. Wong
2023-12-31 22:16   ` [PATCH 09/10] xfs: connect in-memory btrees to xfiles Darrick J. Wong
2023-12-31 22:17   ` [PATCH 10/10] xfbtree: let the buffer cache flush dirty buffers to the xfile Darrick J. Wong
2023-12-31 19:42 ` [PATCHSET v29.0 12/40] xfsprogs: online repair of rmap btrees Darrick J. Wong
2023-12-31 22:17   ` [PATCH 1/4] xfs: create a helper to decide if a file mapping targets the rt volume Darrick J. Wong
2023-12-31 22:17   ` [PATCH 2/4] xfs: repair the rmapbt Darrick J. Wong
2023-12-31 22:17   ` [PATCH 3/4] xfs: create a shadow rmap btree during rmap repair Darrick J. Wong
2023-12-31 22:18   ` [PATCH 4/4] xfs: hook live rmap operations during a repair operation Darrick J. Wong
2023-12-31 19:43 ` [PATCHSET v29.0 13/40] xfs_repair: use in-memory rmap btrees Darrick J. Wong
2023-12-31 22:18   ` [PATCH 1/6] libxfs: partition memfd files to avoid using too many fds Darrick J. Wong
2023-12-31 22:18   ` [PATCH 2/6] xfs_repair: convert regular rmap repair to use in-memory btrees Darrick J. Wong
2023-12-31 22:18   ` [PATCH 3/6] xfs_repair: verify on-disk rmap btrees with in-memory btree data Darrick J. Wong
2023-12-31 22:19   ` [PATCH 4/6] xfs_repair: compute refcount data from in-memory rmap btrees Darrick J. Wong
2023-12-31 22:19   ` [PATCH 5/6] xfs_repair: reduce rmap bag memory usage when creating refcounts Darrick J. Wong
2023-12-31 22:19   ` [PATCH 6/6] xfs_repair: remove the old rmap collection slabs Darrick J. Wong
2023-12-31 19:43 ` [PATCHSET v29.0 14/40] xfsprogs: move btree geometry to ops struct Darrick J. Wong
2023-12-31 22:20   ` [PATCH 1/9] xfs: set the btree cursor bc_ops in xfs_btree_alloc_cursor Darrick J. Wong
2023-12-31 22:20   ` [PATCH 2/9] xfs: encode the default bc_flags in the btree ops structure Darrick J. Wong
2023-12-31 22:20   ` [PATCH 3/9] xfs: export some of the btree ops structures Darrick J. Wong
2023-12-31 22:20   ` [PATCH 4/9] xfs: initialize btree blocks using btree_ops structure Darrick J. Wong
2023-12-31 22:21   ` [PATCH 5/9] xfs: rename btree block/buffer init functions Darrick J. Wong
2023-12-31 22:21   ` [PATCH 6/9] xfs: btree convert xfs_btree_init_block to xfs_btree_init_buf calls Darrick J. Wong
2023-12-31 22:21   ` [PATCH 7/9] xfs: remove the unnecessary daddr paramter to _init_block Darrick J. Wong
2023-12-31 22:21   ` [PATCH 8/9] xfs: set btree block buffer ops in _init_buf Darrick J. Wong
2023-12-31 22:22   ` [PATCH 9/9] xfs: remove unnecessary fields in xfbtree_config Darrick J. Wong
2023-12-31 19:43 ` [PATCHSET v29.0 15/40] xfs_repair: reduce refcount repair memory usage Darrick J. Wong
2023-12-31 22:22   ` [PATCH 1/6] xfs: move lru refs to the btree ops structure Darrick J. Wong
2023-12-31 22:22   ` [PATCH 2/6] xfs: define an in-memory btree for storing refcount bag info during repairs Darrick J. Wong
2023-12-31 22:22   ` [PATCH 3/6] xfs_repair: define an in-memory btree for storing refcount bag info Darrick J. Wong
2023-12-31 22:23   ` [PATCH 4/6] xfs_repair: create refcount bag Darrick J. Wong
2023-12-31 22:23   ` [PATCH 5/6] xfs_repair: port to the new refcount bag structure Darrick J. Wong
2023-12-31 22:23   ` [PATCH 6/6] xfs_repair: remove the old bag implementation Darrick J. Wong
2023-12-31 19:43 ` [PATCHSET v29.0 16/40] xfsprogs: bmap log intent cleanups Darrick J. Wong
2023-12-31 22:23   ` [PATCH 1/5] xfs: clean up bmap log intent item tracepoint callsites Darrick J. Wong
2023-12-31 22:24   ` [PATCH 2/5] xfs: add a bi_entry helper Darrick J. Wong
2023-12-31 22:24   ` [PATCH 3/5] xfs: reuse xfs_bmap_update_cancel_item Darrick J. Wong
2023-12-31 22:24   ` [PATCH 4/5] xfs: move xfs_bmap_defer_add to xfs_bmap_item.c Darrick J. Wong
2023-12-31 22:24   ` [PATCH 5/5] xfs: add a xattr_entry helper Darrick J. Wong
2023-12-31 19:44 ` [PATCHSET v29.0 17/40] xfsprogs: widen BUI formats to support realtime Darrick J. Wong
2023-12-31 22:25   ` [PATCH 1/2] xfs: fix xfs_bunmapi to allow unmapping of partial rt extents Darrick J. Wong
2023-12-31 22:25   ` [PATCH 2/2] xfs: add a realtime flag to the bmap update log redo items Darrick J. Wong
2023-12-31 19:44 ` [PATCHSET v29.0 18/40] xfsprogs: support attrfork and unwritten BUIs Darrick J. Wong
2023-12-31 22:25   ` [PATCH 1/2] xfs: support deferred bmap updates on the attr fork Darrick J. Wong
2023-12-31 22:26   ` [PATCH 2/2] xfs: xfs_bmap_finish_one should map unwritten extents properly Darrick J. Wong
2023-12-31 19:44 ` [PATCHSET v29.0 19/40] xfsprogs: clean up symbolic link code Darrick J. Wong
2023-12-31 22:26   ` [PATCH 1/4] xfs: move xfs_symlink_remote.c declarations to xfs_symlink_remote.h Darrick J. Wong
2023-12-31 22:26   ` [PATCH 2/4] xfs: move remote symlink target read function to libxfs Darrick J. Wong
2023-12-31 22:26   ` [PATCH 3/4] xfs: move symlink target write " Darrick J. Wong
2023-12-31 22:27   ` [PATCH 4/4] mkfs: use libxfs to create symlinks Darrick J. Wong
2023-12-31 19:44 ` [PATCHSET v29.0 20/40] xfsprogs: atomic file updates Darrick J. Wong
2023-12-31 22:27   ` [PATCH 01/20] xfs: add a libxfs header file for staging new ioctls Darrick J. Wong
2023-12-31 22:27   ` [PATCH 02/20] xfs: introduce new file range exchange ioctl Darrick J. Wong
2023-12-31 22:27   ` [PATCH 03/20] xfs: parameterize all the incompat log feature helpers Darrick J. Wong
2023-12-31 22:28   ` [PATCH 04/20] xfs: create a log incompat flag for atomic extent swapping Darrick J. Wong
2023-12-31 22:28   ` [PATCH 05/20] xfs: introduce a swap-extent log intent item Darrick J. Wong
2023-12-31 22:28   ` [PATCH 06/20] xfs: create deferred log items for extent swapping Darrick J. Wong
2023-12-31 22:28   ` [PATCH 07/20] xfs: add error injection to test swapext recovery Darrick J. Wong
2023-12-31 22:29   ` [PATCH 08/20] xfs: condense extended attributes after an atomic swap Darrick J. Wong
2023-12-31 22:29   ` [PATCH 09/20] xfs: condense directories " Darrick J. Wong
2023-12-31 22:29   ` [PATCH 10/20] xfs: condense symbolic links " Darrick J. Wong
2023-12-31 22:29   ` [PATCH 11/20] xfs: make atomic extent swapping support realtime files Darrick J. Wong
2023-12-31 22:30   ` [PATCH 12/20] xfs: enable atomic swapext feature Darrick J. Wong
2023-12-31 22:30   ` [PATCH 13/20] libhandle: add support for bulkstat v5 Darrick J. Wong
2023-12-31 22:30   ` [PATCH 14/20] libfrog: convert xfs_io swapext command to use new libfrog wrapper Darrick J. Wong
2023-12-31 22:30   ` [PATCH 15/20] xfs_logprint: support dumping swapext log items Darrick J. Wong
2023-12-31 22:31   ` [PATCH 16/20] xfs_fsr: convert to bulkstat v5 ioctls Darrick J. Wong
2023-12-31 22:31   ` [PATCH 17/20] xfs_fsr: port to new swapext library function Darrick J. Wong
2023-12-31 22:31   ` [PATCH 18/20] xfs_fsr: skip the xattr/forkoff levering with the newer swapext implementations Darrick J. Wong
2023-12-31 22:32   ` [PATCH 19/20] xfs_io: enhance swapext to take advantage of new api Darrick J. Wong
2023-12-31 22:32   ` [PATCH 20/20] xfs_io: add atomic update commands to exercise extent swapping Darrick J. Wong
2023-12-31 19:45 ` [PATCHSET v29.0 21/40] xfsprogs: set and validate dir/attr block owners Darrick J. Wong
2023-12-31 22:32   ` [PATCH 1/9] xfs: add an explicit owner field to xfs_da_args Darrick J. Wong
2023-12-31 22:32   ` [PATCH 2/9] xfs: use the xfs_da_args owner field to set new dir/attr block owner Darrick J. Wong
2023-12-31 22:33   ` [PATCH 3/9] xfs: validate attr leaf buffer owners Darrick J. Wong
2023-12-31 22:33   ` [PATCH 4/9] xfs: validate attr remote value " Darrick J. Wong
2023-12-31 22:33   ` [PATCH 5/9] xfs: validate dabtree node " Darrick J. Wong
2023-12-31 22:33   ` [PATCH 6/9] xfs: validate directory leaf " Darrick J. Wong
2023-12-31 22:34   ` [PATCH 7/9] xfs: validate explicit directory data " Darrick J. Wong
2023-12-31 22:34   ` [PATCH 8/9] xfs: validate explicit directory block " Darrick J. Wong
2023-12-31 22:34   ` [PATCH 9/9] xfs: validate explicit directory free block owners Darrick J. Wong
2023-12-31 19:45 ` [PATCHSET v29.0 22/40] xfsprogs: online repair of extended attributes Darrick J. Wong
2023-12-31 22:34   ` [PATCH 1/1] xfs: repair " Darrick J. Wong
2023-12-31 19:45 ` [PATCHSET v29.0 23/40] xfsprogs: online repair of symbolic links Darrick J. Wong
2023-12-31 22:35   ` [PATCH 1/1] xfs: " Darrick J. Wong
2023-12-31 19:45 ` [PATCHSET v29.0 24/40] libxfs: cache xfile pages for better performance Darrick J. Wong
2023-12-31 22:35   ` [PATCH 1/1] xfs: map xfile pages directly into xfs_buf Darrick J. Wong
2024-01-03  8:24     ` Christoph Hellwig
2024-01-03  8:44       ` Christoph Hellwig
2023-12-31 19:46 ` [PATCHSET v29.0 25/40] xfsprogs: inode-related repair fixes Darrick J. Wong
2023-12-31 22:35   ` [PATCH 1/4] xfs: check unused nlink fields in the ondisk inode Darrick J. Wong
2023-12-31 22:35   ` [PATCH 2/4] xfs: try to avoid allocating from sick inode clusters Darrick J. Wong
2023-12-31 22:36   ` [PATCH 3/4] libxfs: port the bumplink function from the kernel Darrick J. Wong
2023-12-31 22:36   ` [PATCH 4/4] xfs: pin inodes that would otherwise overflow link count Darrick J. Wong
2023-12-31 19:46 ` [PATCHSET v29.0 26/40] xfs_scrub: fixes to the repair code Darrick J. Wong
2023-12-31 22:36   ` [PATCH 1/7] xfs_scrub: flush stdout after printing to it Darrick J. Wong
2024-01-05  4:55     ` Christoph Hellwig
2023-12-31 22:36   ` [PATCH 2/7] xfs_scrub: don't report media errors for space with unknowable owner Darrick J. Wong
2024-01-05  4:56     ` Christoph Hellwig
2023-12-31 22:37   ` [PATCH 3/7] xfs_scrub: remove ALP_* flags namespace Darrick J. Wong
2024-01-05  4:56     ` Christoph Hellwig
2023-12-31 22:37   ` [PATCH 4/7] xfs_scrub: move repair functions to repair.c Darrick J. Wong
2024-01-05  4:56     ` Christoph Hellwig
2023-12-31 22:37   ` [PATCH 5/7] xfs_scrub: log when a repair was unnecessary Darrick J. Wong
2024-01-05  4:57     ` Christoph Hellwig
2023-12-31 22:38   ` [PATCH 6/7] xfs_scrub: require primary superblock repairs to complete before proceeding Darrick J. Wong
2024-01-05  4:57     ` Christoph Hellwig
2023-12-31 22:38   ` [PATCH 7/7] xfs_scrub: actually try to fix summary counters ahead of repairs Darrick J. Wong
2024-01-05  4:57     ` Christoph Hellwig
2023-12-31 19:46 ` [PATCHSET v29.0 27/40] xfs_scrub: improve warnings about difficult repairs Darrick J. Wong
2023-12-31 22:38   ` [PATCH 1/8] xfs_scrub: fix missing scrub coverage for broken inodes Darrick J. Wong
2024-01-05  4:58     ` Christoph Hellwig
2023-12-31 22:38   ` [PATCH 2/8] xfs_scrub: collapse trivial superblock scrub helpers Darrick J. Wong
2024-01-05  4:58     ` Christoph Hellwig
2023-12-31 22:39   ` [PATCH 3/8] xfs_scrub: get rid of trivial fs metadata scanner helpers Darrick J. Wong
2024-01-05  4:58     ` Christoph Hellwig
2023-12-31 22:39   ` [PATCH 4/8] xfs_scrub: split up the mustfix repairs and difficulty assessment functions Darrick J. Wong
2024-01-05  4:59     ` Christoph Hellwig
2023-12-31 22:39   ` [PATCH 5/8] xfs_scrub: add missing repair types to the mustfix and difficulty assessment Darrick J. Wong
2024-01-05  4:59     ` Christoph Hellwig
2023-12-31 22:39   ` [PATCH 6/8] xfs_scrub: any inconsistency in metadata should trigger difficulty warnings Darrick J. Wong
2024-01-05  4:59     ` Christoph Hellwig
2023-12-31 22:40   ` [PATCH 7/8] xfs_scrub: warn about difficult repairs to rt and quota metadata Darrick J. Wong
2024-01-05  5:00     ` Christoph Hellwig
2023-12-31 22:40   ` [PATCH 8/8] xfs_scrub: enable users to bump information messages to warnings Darrick J. Wong
2024-01-05  5:00     ` Christoph Hellwig
2023-12-31 19:46 ` [PATCHSET v29.0 28/40] xfs_scrub: track data dependencies for repairs Darrick J. Wong
2023-12-31 22:40   ` [PATCH 1/9] xfs_scrub: track repair items by principal, not by individual repairs Darrick J. Wong
2024-01-05  5:01     ` Christoph Hellwig
2023-12-31 22:40   ` [PATCH 2/9] xfs_scrub: use repair_item to direct repair activities Darrick J. Wong
2024-01-05  5:01     ` Christoph Hellwig
2023-12-31 22:41   ` [PATCH 3/9] xfs_scrub: remove action lists from phaseX code Darrick J. Wong
2024-01-05  5:02     ` Christoph Hellwig
2023-12-31 22:41   ` [PATCH 4/9] xfs_scrub: remove scrub_metadata_file Darrick J. Wong
2024-01-05  5:02     ` Christoph Hellwig
2023-12-31 22:41   ` [PATCH 5/9] xfs_scrub: boost the repair priority of dependencies of damaged items Darrick J. Wong
2024-01-05  5:02     ` Christoph Hellwig
2023-12-31 22:41   ` [PATCH 6/9] xfs_scrub: clean up repair_item_difficulty a little Darrick J. Wong
2024-01-05  5:03     ` Christoph Hellwig
2023-12-31 22:42   ` [PATCH 7/9] xfs_scrub: check dependencies of a scrub type before repairing Darrick J. Wong
2024-01-05  5:03     ` Christoph Hellwig
2023-12-31 22:42   ` [PATCH 8/9] xfs_scrub: retry incomplete repairs Darrick J. Wong
2024-01-05  5:03     ` Christoph Hellwig
2023-12-31 22:42   ` [PATCH 9/9] xfs_scrub: remove unused action_list fields Darrick J. Wong
2024-01-05  5:04     ` Christoph Hellwig
2023-12-31 19:47 ` [PATCHSET v29.0 29/40] xfs_scrub: use scrub_item to track check progress Darrick J. Wong
2023-12-31 22:42   ` [PATCH 1/5] xfs_scrub: start tracking scrub state in scrub_item Darrick J. Wong
2024-01-05  5:04     ` Christoph Hellwig
2023-12-31 22:43   ` [PATCH 2/5] xfs_scrub: remove enum check_outcome Darrick J. Wong
2024-01-05  5:05     ` Christoph Hellwig
2023-12-31 22:43   ` [PATCH 3/5] xfs_scrub: refactor scrub_meta_type out of existence Darrick J. Wong
2024-01-05  5:05     ` Christoph Hellwig
2023-12-31 22:43   ` [PATCH 4/5] xfs_scrub: hoist repair retry loop to repair_item_class Darrick J. Wong
2024-01-05  5:05     ` Christoph Hellwig
2023-12-31 22:44   ` [PATCH 5/5] xfs_scrub: hoist scrub retry loop to scrub_item_check_file Darrick J. Wong
2024-01-05  5:06     ` Christoph Hellwig
2023-12-31 19:47 ` [PATCHSET v29.0 30/40] xfs_scrub: improve scheduling of repair items Darrick J. Wong
2023-12-31 22:44   ` [PATCH 1/4] libfrog: enhance ptvar to support initializer functions Darrick J. Wong
2024-01-05  5:08     ` Christoph Hellwig
2023-12-31 22:44   ` [PATCH 2/4] xfs_scrub: improve thread scheduling repair items during phase 4 Darrick J. Wong
2024-01-05  5:08     ` Christoph Hellwig
2023-12-31 22:44   ` [PATCH 3/4] xfs_scrub: recheck entire metadata objects after corruption repairs Darrick J. Wong
2024-01-05  5:08     ` Christoph Hellwig
2023-12-31 22:45   ` [PATCH 4/4] xfs_scrub: try to repair space metadata before file metadata Darrick J. Wong
2024-01-05  5:09     ` Christoph Hellwig
2023-12-31 19:47 ` [PATCHSET v29.0 31/40] xfs_scrub: detect deceptive filename extensions Darrick J. Wong
2023-12-31 22:45   ` [PATCH 01/13] xfs_scrub: use proper UChar string iterators Darrick J. Wong
2023-12-31 22:45   ` [PATCH 02/13] xfs_scrub: hoist code that removes ignorable characters Darrick J. Wong
2023-12-31 22:45   ` [PATCH 03/13] xfs_scrub: add a couple of omitted invisible code points Darrick J. Wong
2023-12-31 22:46   ` [PATCH 04/13] xfs_scrub: avoid potential UAF after freeing a duplicate name entry Darrick J. Wong
2023-12-31 22:46   ` [PATCH 05/13] xfs_scrub: guard against libicu returning negative buffer lengths Darrick J. Wong
2023-12-31 22:46   ` [PATCH 06/13] xfs_scrub: hoist non-rendering character predicate Darrick J. Wong
2023-12-31 22:46   ` [PATCH 07/13] xfs_scrub: store bad flags with the name entry Darrick J. Wong
2023-12-31 22:47   ` [PATCH 08/13] xfs_scrub: rename UNICRASH_ZERO_WIDTH to UNICRASH_INVISIBLE Darrick J. Wong
2023-12-31 22:47   ` [PATCH 09/13] xfs_scrub: type-coerce the UNICRASH_* flags Darrick J. Wong
2023-12-31 22:47   ` [PATCH 10/13] xfs_scrub: reduce size of struct name_entry Darrick J. Wong
2023-12-31 22:47   ` [PATCH 11/13] xfs_scrub: rename struct unicrash.normalizer Darrick J. Wong
2023-12-31 22:48   ` [PATCH 12/13] xfs_scrub: report deceptive file extensions Darrick J. Wong
2023-12-31 22:48   ` [PATCH 13/13] xfs_scrub: dump unicode points Darrick J. Wong
2023-12-31 19:48 ` [PATCHSET v29.0 32/40] xfs_scrub: move fstrim to a separate phase Darrick J. Wong
2023-12-31 22:48   ` [PATCH 1/8] xfs_scrub: move FITRIM to phase 8 Darrick J. Wong
2023-12-31 22:48   ` [PATCH 2/8] xfs_scrub: ignore phase 8 if the user disabled fstrim Darrick J. Wong
2023-12-31 22:49   ` [PATCH 3/8] xfs_scrub: collapse trim_filesystem Darrick J. Wong
2023-12-31 22:49   ` [PATCH 4/8] xfs_scrub: fix the work estimation for phase 8 Darrick J. Wong
2023-12-31 22:49   ` [PATCH 5/8] xfs_scrub: report FITRIM errors properly Darrick J. Wong
2023-12-31 22:49   ` [PATCH 6/8] xfs_scrub: don't call FITRIM after runtime errors Darrick J. Wong
2023-12-31 22:50   ` [PATCH 7/8] xfs_scrub: don't trim the first agbno of each AG for better performance Darrick J. Wong
2023-12-31 22:50   ` [PATCH 8/8] xfs_scrub: improve progress meter for phase 8 fstrimming Darrick J. Wong
2023-12-31 19:48 ` [PATCHSET v29.0 33/40] xfs_scrub: use free space histograms to reduce fstrim runtime Darrick J. Wong
2023-12-31 22:50   ` [PATCH 1/7] libfrog: hoist free space histogram code Darrick J. Wong
2023-12-31 22:51   ` [PATCH 2/7] libfrog: print wider columns for free space histogram Darrick J. Wong
2023-12-31 22:51   ` [PATCH 3/7] libfrog: print cdf of free space buckets Darrick J. Wong
2023-12-31 22:51   ` [PATCH 4/7] xfs_scrub: don't close stdout when closing the progress bar Darrick J. Wong
2023-12-31 22:51   ` [PATCH 5/7] xfs_scrub: remove pointless spacemap.c arguments Darrick J. Wong
2023-12-31 22:52   ` [PATCH 6/7] xfs_scrub: collect free space histograms during phase 7 Darrick J. Wong
2023-12-31 22:52   ` [PATCH 7/7] xfs_scrub: tune fstrim minlen parameter based on free space histograms Darrick J. Wong
2023-12-31 19:48 ` [PATCHSET v29.0 34/40] xfs_scrub: fixes for systemd services Darrick J. Wong
2023-12-31 20:25   ` Neal Gompa
2024-01-03  1:23     ` Darrick J. Wong
2023-12-31 22:52   ` [PATCH 1/9] debian: install scrub services with dh_installsystemd Darrick J. Wong
2023-12-31 22:52   ` [PATCH 2/9] xfs_scrub_all: escape service names consistently Darrick J. Wong
2023-12-31 22:53   ` [PATCH 3/9] xfs_scrub: fix pathname escaping across all service definitions Darrick J. Wong
2023-12-31 22:53   ` [PATCH 4/9] xfs_scrub_fail: fix sendmail detection Darrick J. Wong
2023-12-31 22:53   ` [PATCH 5/9] xfs_scrub_fail: return the failure status of the mailer program Darrick J. Wong
2023-12-31 22:53   ` [PATCH 6/9] xfs_scrub_fail: add content type header to failure emails Darrick J. Wong
2024-01-05  5:09     ` Christoph Hellwig
2023-12-31 22:54   ` [PATCH 7/9] xfs_scrub_fail: advise recipients not to reply Darrick J. Wong
2024-01-05  5:10     ` Christoph Hellwig
2023-12-31 22:54   ` [PATCH 8/9] xfs_scrub_fail: move executable script to /usr/libexec Darrick J. Wong
2024-01-01  0:24     ` Neal Gompa
2024-01-03  1:26       ` Darrick J. Wong
2024-01-05  5:10     ` Christoph Hellwig
2023-12-31 22:54   ` [PATCH 9/9] xfs_scrub_all.cron: move to package data directory Darrick J. Wong
2024-01-03  2:01     ` Neal Gompa
2024-01-05  5:11     ` Christoph Hellwig
2024-01-02 10:48   ` [PATCHSET v29.0 34/40] xfs_scrub: fixes for systemd services Christoph Hellwig
2024-01-03  1:26     ` Darrick J. Wong
2023-12-31 19:48 ` [PATCHSET v29.0 35/40] xfs_scrub_all: " Darrick J. Wong
2023-12-31 22:54   ` [PATCH 1/4] xfs_scrub_all: fix argument passing when invoking xfs_scrub manually Darrick J. Wong
2023-12-31 22:55   ` [PATCH 2/4] xfs_scrub_all: survive systemd restarts when waiting for services Darrick J. Wong
2023-12-31 22:55   ` [PATCH 3/4] xfs_scrub_all: simplify cleanup of run_killable Darrick J. Wong
2023-12-31 22:55   ` [PATCH 4/4] xfs_scrub_all: fix termination signal handling Darrick J. Wong
2023-12-31 19:49 ` [PATCHSET v29.0 36/40] xfs_scrub: tighten security of systemd services Darrick J. Wong
2023-12-31 22:55   ` [PATCH 1/6] xfs_scrub: allow auxiliary pathnames for sandboxing Darrick J. Wong
2023-12-31 22:56   ` [PATCH 2/6] xfs_scrub.service: reduce CPU usage to 60% when possible Darrick J. Wong
2023-12-31 22:56   ` [PATCH 3/6] xfs_scrub: use dynamic users when running as a systemd service Darrick J. Wong
2023-12-31 22:56   ` [PATCH 4/6] xfs_scrub: tighten up the security on the background " Darrick J. Wong
2023-12-31 22:57   ` [PATCH 5/6] xfs_scrub_fail: " Darrick J. Wong
2023-12-31 22:57   ` [PATCH 6/6] xfs_scrub_all: " Darrick J. Wong
2023-12-31 19:49 ` [PATCHSET v29.0 37/40] xfs_scrub_all: automatic media scan service Darrick J. Wong
2023-12-31 22:57   ` [PATCH 1/6] xfs_scrub_all: only use the xfs_scrub@ systemd services in service mode Darrick J. Wong
2023-12-31 22:57   ` [PATCH 2/6] xfs_scrub_all: remove journalctl background process Darrick J. Wong
2023-12-31 22:58   ` [PATCH 3/6] xfs_scrub_all: support metadata+media scans of all filesystems Darrick J. Wong
2023-12-31 22:58   ` [PATCH 4/6] xfs_scrub_all: enable periodic file data scrubs automatically Darrick J. Wong
2023-12-31 22:58   ` [PATCH 5/6] xfs_scrub_all: trigger automatic media scans once per month Darrick J. Wong
2023-12-31 22:58   ` [PATCH 6/6] xfs_scrub_all: failure reporting for the xfs_scrub_all job Darrick J. Wong
2023-12-31 19:49 ` [PATCHSET v29.0 38/40] xfs_scrub_all: improve systemd handling Darrick J. Wong
2023-12-31 22:59   ` [PATCH 1/5] xfs_scrub_all: encapsulate all the subprocess code in an object Darrick J. Wong
2023-12-31 22:59   ` [PATCH 2/5] xfs_scrub_all: encapsulate all the systemctl " Darrick J. Wong
2023-12-31 22:59   ` [PATCH 3/5] xfs_scrub_all: add CLI option for easier debugging Darrick J. Wong
2023-12-31 22:59   ` [PATCH 4/5] xfs_scrub_all: convert systemctl calls to dbus Darrick J. Wong
2023-12-31 23:00   ` [PATCH 5/5] xfs_scrub_all: implement retry and backoff for dbus calls Darrick J. Wong
2023-12-31 19:49 ` [PATCHSET v29.0 39/40] xfs_scrub: automatic optimization by default Darrick J. Wong
2023-12-31 23:00   ` [PATCH 1/3] xfs_scrub: automatic downgrades to dry-run mode in service mode Darrick J. Wong
2023-12-31 23:00   ` [PATCH 2/3] xfs_scrub: add an optimization-only mode Darrick J. Wong
2023-12-31 23:00   ` [PATCH 3/3] debian: enable xfs_scrub systemd services by default Darrick J. Wong
2023-12-31 19:50 ` [PATCHSET 40/40] xfs_repair: add other v5 features to filesystems Darrick J. Wong
2023-12-31 23:01   ` [PATCH 1/4] xfs_repair: check free space requirements before allowing upgrades Darrick J. Wong
2023-12-31 23:01   ` [PATCH 2/4] xfs_repair: allow sysadmins to add free inode btree indexes Darrick J. Wong
2023-12-31 23:01   ` [PATCH 3/4] xfs_repair: allow sysadmins to add reflink Darrick J. Wong
2023-12-31 23:01   ` [PATCH 4/4] xfs_repair: allow sysadmins to add reverse mapping indexes Darrick J. Wong
2023-12-31 19:57 ` [PATCHSET 1/8] fstests: fuzz non-root dquots on xfs Darrick J. Wong
2023-12-27 13:42   ` [PATCH 1/3] fuzzy: mask off a few more inode fields from the fuzz tests Darrick J. Wong
2023-12-27 13:43   ` [PATCH 2/3] fuzzy: allow FUZZ_REWRITE_DURATION to control fsstress runtime when fuzzing Darrick J. Wong
2023-12-27 13:43   ` [PATCH 3/3] fuzzy: test other dquot ids Darrick J. Wong
2023-12-31 19:57 ` [PATCHSET 2/8] xfsprogs: scale shards on ssds Darrick J. Wong
2023-12-27 13:43   ` [PATCH 1/1] xfs: test scaling of the mkfs concurrency options Darrick J. Wong
2023-12-31 19:57 ` [PATCHSET v29.0 3/8] fstests: establish baseline for fuzz tests Darrick J. Wong
2023-12-27 13:43   ` [PATCH 1/4] xfs: online fuzz test known output Darrick J. Wong
2023-12-27 13:44   ` Darrick J. Wong [this message]
2023-12-27 13:44   ` [PATCH 3/4] xfs: norepair " Darrick J. Wong
2023-12-27 13:44   ` [PATCH 4/4] xfs: bothrepair " Darrick J. Wong
2023-12-31 19:57 ` [PATCHSET v29.0 4/8] fstests: atomic file updates Darrick J. Wong
2023-12-27 13:44   ` [PATCH 1/1] swapext: make sure that we don't swap unwritten extents unless they're part of a rt extent(??) Darrick J. Wong
2023-12-31 19:58 ` [PATCHSET v29.0 5/8] fstests: detect deceptive filename extensions Darrick J. Wong
2023-12-27 13:45   ` [PATCH 1/2] generic/453: test confusable name detection with 32-bit unicode codepoints Darrick J. Wong
2023-12-27 13:45   ` [PATCH 2/2] generic/453: check xfs_scrub detection of confusing job offers Darrick J. Wong
2023-12-31 19:58 ` [PATCHSET v29.0 6/8] fstests: test systemd background services Darrick J. Wong
2023-12-27 13:45   ` [PATCH 1/1] xfs: test xfs_scrub services Darrick J. Wong
2023-12-31 19:58 ` [PATCHSET v29.0 7/8] fstests: use free space histograms to reduce fstrim runtime Darrick J. Wong
2023-12-27 13:45   ` [PATCH 1/1] xfs/004: fix column extraction code Darrick J. Wong
2023-12-31 19:58 ` [PATCHSET 8/8] fstests: test upgrading older features Darrick J. Wong
2023-12-27 13:46   ` [PATCH 1/1] xfs: test upgrading old features Darrick J. Wong
2023-12-31 20:02 ` [PATCHSET v29.0] xfs-documentation: atomic file updates Darrick J. Wong
2023-12-27 14:07   ` [PATCH 1/1] design: document atomic extent swap log intent structures Darrick J. Wong

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=170405026255.1823639.16865136362993557074.stgit@frogsfrogsfrogs \
    --to=djwong@kernel.org \
    --cc=fstests@vger.kernel.org \
    --cc=guan@eryu.me \
    --cc=linux-xfs@vger.kernel.org \
    --cc=zlang@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox