#! /bin/bash # SPDX-License-Identifier: GPL-2.0 # Copyright (c) 2017 Oracle, Inc. All Rights Reserved. # # FS QA Test No. 358 # # Populate a XFS filesystem and fuzz every bnobt field. # Use xfs_repair to fix the corruption. # . ./common/preamble _begin_fstest dangerous_fuzzers dangerous_scrub dangerous_repair _register_cleanup "_cleanup" BUS # Import common functions. . ./common/filter . ./common/populate . ./common/fuzzy # real QA test starts here _supported_fs xfs _require_scratch_xfs_fuzz_fields echo "Format and populate" _scratch_populate_cached nofill > $seqres.full 2>&1 path="$(_scratch_xfs_find_agbtree_height 'bno' 2)" || \ _fail "could not find two-level bnobt" echo "Fuzz bnobt recs" _scratch_xfs_fuzz_metadata '' 'offline' "$path" 'addr bnoroot' 'addr ptrs[1]' >> $seqres.full echo "Done fuzzing bnobt recs" # success, all done status=0 exit