@@ -55,7 +55,7 @@ _check_ag()
for structure in 'sb 0' 'agf 0' 'agi 0' 'agfl 0'
do
echo "Corrupting $structure - setting bits to $1"
- _check_repair $1 "$structure" |
+ _check_repair $1 "$structure" | uniq |
sed -e '/^error following ag 0 unlinked list$/d' \
-e '/^bad agbno AGBNO for finobt/d' \
-e '/^bad agbno AGBNO for rmapbt/d' \
@@ -263,9 +263,6 @@ Phase 1 - find and verify superblock...
Phase 2 - zero log...
- scan filesystem freespace and inode maps...
bad agbno AGBNO in agfl, agno 0
-bad agbno AGBNO in agfl, agno 0
-bad agbno AGBNO in agfl, agno 0
-bad agbno AGBNO in agfl, agno 0
- found root inode chunk
Phase 3 - for each AG...
- scan and clear agi unlinked lists...
@@ -228,11 +228,6 @@ Phase 2 - using <TYPEOF> log
- zero log...
- scan filesystem freespace and inode maps...
bad agbno AGBNO in agfl, agno 0
-bad agbno AGBNO in agfl, agno 0
-bad agbno AGBNO in agfl, agno 0
-bad agbno AGBNO in agfl, agno 0
-bad agbno AGBNO in agfl, agno 0
-bad agbno AGBNO in agfl, agno 0
- found root inode chunk
Phase 3 - for each AG...
- scan and clear agi unlinked lists...
Commit 31f48569c353 ("xfs/030: fix output on newer filesystems") added more lines to .out file to match the output from XFS with reflink support, but it broke test on older XFS. Dave explained the reason and pointed out the correct way to fix it, so I just quote Dave's mail here: "The problem here is that reflink triggers a change in the initial population of the AGFL - from 4 blocks to 6 blocks, and so repair warns 6 times instead of 4. After filtering, that gives 6 indentical output lines instead of 4. Doing something as simple as collapsing repeated identical lines (e.g filtering through uniq) will work for all filesystem formats and any future changes that modify the initial AGFL population." Suggested-by: Dave Chinner <dchinner@redhat.com> Signed-off-by: Eryu Guan <eguan@redhat.com> --- tests/xfs/030 | 2 +- tests/xfs/030.out.irix | 3 --- tests/xfs/030.out.linux | 5 ----- 3 files changed, 1 insertion(+), 9 deletions(-)