diff options
Diffstat (limited to 'tests/xfs')
141 files changed, 4844 insertions, 0 deletions
diff --git a/tests/xfs/349 b/tests/xfs/349 new file mode 100755 index 00000000..3f23b084 --- /dev/null +++ b/tests/xfs/349 @@ -0,0 +1,63 @@ +#! /bin/bash +# FS QA Test No. 349 +# +# Populate a XFS filesystem and ensure that scrub and repair are happy. +# Use xfs_repair to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs + +_require_scratch +_require_scrub +_require_populate_commands + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Scrub" +_scratch_mount >> $seqres.full 2>&1 +_scratch_scrub >> $seqres.full + +# success, all done +status=0 +exit diff --git a/tests/xfs/349.out b/tests/xfs/349.out new file mode 100644 index 00000000..477d004d --- /dev/null +++ b/tests/xfs/349.out @@ -0,0 +1,3 @@ +QA output created by 349 +Format and populate +Scrub diff --git a/tests/xfs/350 b/tests/xfs/350 new file mode 100755 index 00000000..618af58f --- /dev/null +++ b/tests/xfs/350 @@ -0,0 +1,60 @@ +#! /bin/bash +# FS QA Test No. 350 +# +# Populate a XFS filesystem and fuzz every superblock field. +# Use xfs_repair to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Fuzz superblock" +_scratch_xfs_fuzz_metadata '' 'offline' 'sb 0' >> $seqres.full +echo "Done fuzzing superblock" + +# success, all done +status=0 +exit diff --git a/tests/xfs/350.out b/tests/xfs/350.out new file mode 100644 index 00000000..3bb9762b --- /dev/null +++ b/tests/xfs/350.out @@ -0,0 +1,4 @@ +QA output created by 350 +Format and populate +Fuzz superblock +Done fuzzing superblock diff --git a/tests/xfs/351 b/tests/xfs/351 new file mode 100755 index 00000000..6f0cef33 --- /dev/null +++ b/tests/xfs/351 @@ -0,0 +1,60 @@ +#! /bin/bash +# FS QA Test No. 351 +# +# Populate a XFS filesystem and fuzz every superblock field. +# Use xfs_scrub to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Fuzz superblock" +_scratch_xfs_fuzz_metadata '' 'online' 'sb 1' >> $seqres.full +echo "Done fuzzing superblock" + +# success, all done +status=0 +exit diff --git a/tests/xfs/351.out b/tests/xfs/351.out new file mode 100644 index 00000000..36d7b96a --- /dev/null +++ b/tests/xfs/351.out @@ -0,0 +1,4 @@ +QA output created by 351 +Format and populate +Fuzz superblock +Done fuzzing superblock diff --git a/tests/xfs/352 b/tests/xfs/352 new file mode 100755 index 00000000..c3d8cf5b --- /dev/null +++ b/tests/xfs/352 @@ -0,0 +1,60 @@ +#! /bin/bash +# FS QA Test No. 352 +# +# Populate a XFS filesystem and fuzz every AGF field. +# Use xfs_repair to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1302 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Fuzz AGF" +_scratch_xfs_fuzz_metadata '' 'offline' 'agf 0' >> $seqres.full +echo "Done fuzzing AGF" + +# success, all done +status=0 +exit diff --git a/tests/xfs/352.out b/tests/xfs/352.out new file mode 100644 index 00000000..1a3b32e5 --- /dev/null +++ b/tests/xfs/352.out @@ -0,0 +1,4 @@ +QA output created by 352 +Format and populate +Fuzz AGF +Done fuzzing AGF diff --git a/tests/xfs/353 b/tests/xfs/353 new file mode 100755 index 00000000..8c8bfff7 --- /dev/null +++ b/tests/xfs/353 @@ -0,0 +1,60 @@ +#! /bin/bash +# FS QA Test No. 353 +# +# Populate a XFS filesystem and fuzz every AGF field. +# Use xfs_scrub to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1302 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Fuzz AGF" +_scratch_xfs_fuzz_metadata '' 'online' 'agf 0' >> $seqres.full +echo "Done fuzzing AGF" + +# success, all done +status=0 +exit diff --git a/tests/xfs/353.out b/tests/xfs/353.out new file mode 100644 index 00000000..6f0ec45d --- /dev/null +++ b/tests/xfs/353.out @@ -0,0 +1,4 @@ +QA output created by 353 +Format and populate +Fuzz AGF +Done fuzzing AGF diff --git a/tests/xfs/354 b/tests/xfs/354 new file mode 100755 index 00000000..5c2e32f5 --- /dev/null +++ b/tests/xfs/354 @@ -0,0 +1,65 @@ +#! /bin/bash +# FS QA Test No. 354 +# +# Populate a XFS filesystem and fuzz every AGFL field. +# Use xfs_repair to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Fuzz AGFL" +_scratch_xfs_fuzz_metadata '' 'offline' 'agfl 0' >> $seqres.full +echo "Done fuzzing AGFL" + +echo "Fuzz AGFL flfirst" +flfirst=$(_scratch_xfs_db -c 'agf 0' -c 'p flfirst' | sed -e 's/flfirst = //g') +SCRATCH_XFS_LIST_METADATA_FIELDS="bno[${flfirst}]" _scratch_xfs_fuzz_metadata '' 'offline' 'agfl 0' >> $seqres.full +echo "Done fuzzing AGFL flfirst" + +# success, all done +status=0 +exit diff --git a/tests/xfs/354.out b/tests/xfs/354.out new file mode 100644 index 00000000..d8b33f64 --- /dev/null +++ b/tests/xfs/354.out @@ -0,0 +1,6 @@ +QA output created by 354 +Format and populate +Fuzz AGFL +Done fuzzing AGFL +Fuzz AGFL flfirst +Done fuzzing AGFL flfirst diff --git a/tests/xfs/355 b/tests/xfs/355 new file mode 100755 index 00000000..ff652bf1 --- /dev/null +++ b/tests/xfs/355 @@ -0,0 +1,65 @@ +#! /bin/bash +# FS QA Test No. 355 +# +# Populate a XFS filesystem and fuzz every AGFL field. +# Use xfs_scrub to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Fuzz AGFL" +_scratch_xfs_fuzz_metadata '' 'online' 'agfl 0' >> $seqres.full +echo "Done fuzzing AGFL" + +echo "Fuzz AGFL flfirst" +flfirst=$(_scratch_xfs_db -c 'agf 0' -c 'p flfirst' | sed -e 's/flfirst = //g') +SCRATCH_XFS_LIST_METADATA_FIELDS="bno[${flfirst}]" _scratch_xfs_fuzz_metadata '' 'online' 'agfl 0' >> $seqres.full +echo "Done fuzzing AGFL flfirst" + +# success, all done +status=0 +exit diff --git a/tests/xfs/355.out b/tests/xfs/355.out new file mode 100644 index 00000000..d537761a --- /dev/null +++ b/tests/xfs/355.out @@ -0,0 +1,6 @@ +QA output created by 355 +Format and populate +Fuzz AGFL +Done fuzzing AGFL +Fuzz AGFL flfirst +Done fuzzing AGFL flfirst diff --git a/tests/xfs/356 b/tests/xfs/356 new file mode 100755 index 00000000..ffade173 --- /dev/null +++ b/tests/xfs/356 @@ -0,0 +1,60 @@ +#! /bin/bash +# FS QA Test No. 356 +# +# Populate a XFS filesystem and fuzz every AGI field. +# Use xfs_repair to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Fuzz AGI" +_scratch_xfs_fuzz_metadata '' 'offline' 'agi 0' >> $seqres.full +echo "Done fuzzing AGI" + +# success, all done +status=0 +exit diff --git a/tests/xfs/356.out b/tests/xfs/356.out new file mode 100644 index 00000000..ca783446 --- /dev/null +++ b/tests/xfs/356.out @@ -0,0 +1,4 @@ +QA output created by 356 +Format and populate +Fuzz AGI +Done fuzzing AGI diff --git a/tests/xfs/357 b/tests/xfs/357 new file mode 100755 index 00000000..fa097e59 --- /dev/null +++ b/tests/xfs/357 @@ -0,0 +1,60 @@ +#! /bin/bash +# FS QA Test No. 357 +# +# Populate a XFS filesystem and fuzz every AGI field. +# Use xfs_scrub to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Fuzz AGI" +_scratch_xfs_fuzz_metadata '' 'online' 'agi 0' >> $seqres.full +echo "Done fuzzing AGI" + +# success, all done +status=0 +exit diff --git a/tests/xfs/357.out b/tests/xfs/357.out new file mode 100644 index 00000000..c9cf6d26 --- /dev/null +++ b/tests/xfs/357.out @@ -0,0 +1,4 @@ +QA output created by 357 +Format and populate +Fuzz AGI +Done fuzzing AGI diff --git a/tests/xfs/358 b/tests/xfs/358 new file mode 100755 index 00000000..dbc3e8d7 --- /dev/null +++ b/tests/xfs/358 @@ -0,0 +1,60 @@ +#! /bin/bash +# FS QA Test No. 358 +# +# Populate a XFS filesystem and fuzz every bnobt field. +# Use xfs_repair to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Fuzz bnobt recs" +_scratch_xfs_fuzz_metadata '' 'offline' 'agf 0' 'addr bnoroot' 'addr ptrs[1]' >> $seqres.full +echo "Done fuzzing bnobt recs" + +# success, all done +status=0 +exit diff --git a/tests/xfs/358.out b/tests/xfs/358.out new file mode 100644 index 00000000..e1ec8623 --- /dev/null +++ b/tests/xfs/358.out @@ -0,0 +1,4 @@ +QA output created by 358 +Format and populate +Fuzz bnobt recs +Done fuzzing bnobt recs diff --git a/tests/xfs/359 b/tests/xfs/359 new file mode 100755 index 00000000..6d47a10b --- /dev/null +++ b/tests/xfs/359 @@ -0,0 +1,60 @@ +#! /bin/bash +# FS QA Test No. 359 +# +# Populate a XFS filesystem and fuzz every bnobt field. +# Use xfs_scrub to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Fuzz bnobt recs" +_scratch_xfs_fuzz_metadata '' 'online' 'agf 0' 'addr bnoroot' 'addr ptrs[1]' >> $seqres.full +echo "Done fuzzing bnobt recs" + +# success, all done +status=0 +exit diff --git a/tests/xfs/359.out b/tests/xfs/359.out new file mode 100644 index 00000000..d872e7c2 --- /dev/null +++ b/tests/xfs/359.out @@ -0,0 +1,4 @@ +QA output created by 359 +Format and populate +Fuzz bnobt recs +Done fuzzing bnobt recs diff --git a/tests/xfs/360 b/tests/xfs/360 new file mode 100755 index 00000000..e8f200a3 --- /dev/null +++ b/tests/xfs/360 @@ -0,0 +1,60 @@ +#! /bin/bash +# FS QA Test No. 360 +# +# Populate a XFS filesystem and fuzz every bnobt key/pointer. +# Use xfs_repair to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Fuzz bnobt keyptr" +_scratch_xfs_fuzz_metadata '' 'offline' 'agf 0' 'addr bnoroot' >> $seqres.full +echo "Done fuzzing bnobt keyptr" + +# success, all done +status=0 +exit diff --git a/tests/xfs/360.out b/tests/xfs/360.out new file mode 100644 index 00000000..fd7ce6cd --- /dev/null +++ b/tests/xfs/360.out @@ -0,0 +1,4 @@ +QA output created by 360 +Format and populate +Fuzz bnobt keyptr +Done fuzzing bnobt keyptr diff --git a/tests/xfs/361 b/tests/xfs/361 new file mode 100755 index 00000000..48a9447b --- /dev/null +++ b/tests/xfs/361 @@ -0,0 +1,60 @@ +#! /bin/bash +# FS QA Test No. 361 +# +# Populate a XFS filesystem and fuzz every bnobt key/pointer. +# Use xfs_scrub to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Fuzz bnobt keyptr" +_scratch_xfs_fuzz_metadata '' 'online' 'agf 0' 'addr bnoroot' >> $seqres.full +echo "Done fuzzing bnobt keyptr" + +# success, all done +status=0 +exit diff --git a/tests/xfs/361.out b/tests/xfs/361.out new file mode 100644 index 00000000..d8e021bd --- /dev/null +++ b/tests/xfs/361.out @@ -0,0 +1,4 @@ +QA output created by 361 +Format and populate +Fuzz bnobt keyptr +Done fuzzing bnobt keyptr diff --git a/tests/xfs/362 b/tests/xfs/362 new file mode 100755 index 00000000..221df529 --- /dev/null +++ b/tests/xfs/362 @@ -0,0 +1,60 @@ +#! /bin/bash +# FS QA Test No. 362 +# +# Populate a XFS filesystem and fuzz every cntbt field. +# Use xfs_repair to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Fuzz cntbt" +_scratch_xfs_fuzz_metadata '' 'offline' 'agf 0' 'addr cntroot' 'addr ptrs[1]' >> $seqres.full +echo "Done fuzzing cntbt" + +# success, all done +status=0 +exit diff --git a/tests/xfs/362.out b/tests/xfs/362.out new file mode 100644 index 00000000..d39175e5 --- /dev/null +++ b/tests/xfs/362.out @@ -0,0 +1,4 @@ +QA output created by 362 +Format and populate +Fuzz cntbt +Done fuzzing cntbt diff --git a/tests/xfs/363 b/tests/xfs/363 new file mode 100755 index 00000000..829c135d --- /dev/null +++ b/tests/xfs/363 @@ -0,0 +1,60 @@ +#! /bin/bash +# FS QA Test No. 363 +# +# Populate a XFS filesystem and fuzz every cntbt field. +# Use xfs_scrub to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Fuzz cntbt" +_scratch_xfs_fuzz_metadata '' 'online' 'agf 0' 'addr cntroot' 'addr ptrs[1]' >> $seqres.full +echo "Done fuzzing cntbt" + +# success, all done +status=0 +exit diff --git a/tests/xfs/363.out b/tests/xfs/363.out new file mode 100644 index 00000000..99223d8f --- /dev/null +++ b/tests/xfs/363.out @@ -0,0 +1,4 @@ +QA output created by 363 +Format and populate +Fuzz cntbt +Done fuzzing cntbt diff --git a/tests/xfs/364 b/tests/xfs/364 new file mode 100755 index 00000000..c4d5a8f7 --- /dev/null +++ b/tests/xfs/364 @@ -0,0 +1,60 @@ +#! /bin/bash +# FS QA Test No. 364 +# +# Populate a XFS filesystem and fuzz every inobt field. +# Use xfs_repair to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Fuzz inobt" +_scratch_xfs_fuzz_metadata '' 'offline' 'agi 0' 'addr root' >> $seqres.full +echo "Done fuzzing inobt" + +# success, all done +status=0 +exit diff --git a/tests/xfs/364.out b/tests/xfs/364.out new file mode 100644 index 00000000..2d6fad24 --- /dev/null +++ b/tests/xfs/364.out @@ -0,0 +1,4 @@ +QA output created by 364 +Format and populate +Fuzz inobt +Done fuzzing inobt diff --git a/tests/xfs/365 b/tests/xfs/365 new file mode 100755 index 00000000..a23d9460 --- /dev/null +++ b/tests/xfs/365 @@ -0,0 +1,60 @@ +#! /bin/bash +# FS QA Test No. 365 +# +# Populate a XFS filesystem and fuzz every inobt field. +# Use xfs_scrub to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Fuzz inobt" +_scratch_xfs_fuzz_metadata '' 'online' 'agi 0' 'addr root' >> $seqres.full +echo "Done fuzzing inobt" + +# success, all done +status=0 +exit diff --git a/tests/xfs/365.out b/tests/xfs/365.out new file mode 100644 index 00000000..5501f600 --- /dev/null +++ b/tests/xfs/365.out @@ -0,0 +1,4 @@ +QA output created by 365 +Format and populate +Fuzz inobt +Done fuzzing inobt diff --git a/tests/xfs/366 b/tests/xfs/366 new file mode 100755 index 00000000..0c281d81 --- /dev/null +++ b/tests/xfs/366 @@ -0,0 +1,61 @@ +#! /bin/bash +# FS QA Test No. 366 +# +# Populate a XFS filesystem and fuzz every finobt field. +# Use xfs_repair to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields +_require_xfs_finobt + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Fuzz finobt" +_scratch_xfs_fuzz_metadata '' 'offline' 'agi 0' 'addr free_root' >> $seqres.full +echo "Done fuzzing finobt" + +# success, all done +status=0 +exit diff --git a/tests/xfs/366.out b/tests/xfs/366.out new file mode 100644 index 00000000..14906508 --- /dev/null +++ b/tests/xfs/366.out @@ -0,0 +1,4 @@ +QA output created by 366 +Format and populate +Fuzz finobt +Done fuzzing finobt diff --git a/tests/xfs/367 b/tests/xfs/367 new file mode 100755 index 00000000..14cdfa96 --- /dev/null +++ b/tests/xfs/367 @@ -0,0 +1,61 @@ +#! /bin/bash +# FS QA Test No. 367 +# +# Populate a XFS filesystem and fuzz every finobt field. +# Use xfs_scrub to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields +_require_xfs_finobt + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Fuzz finobt" +_scratch_xfs_fuzz_metadata '' 'online' 'agi 0' 'addr free_root' >> $seqres.full +echo "Done fuzzing finobt" + +# success, all done +status=0 +exit diff --git a/tests/xfs/367.out b/tests/xfs/367.out new file mode 100644 index 00000000..5496730c --- /dev/null +++ b/tests/xfs/367.out @@ -0,0 +1,4 @@ +QA output created by 367 +Format and populate +Fuzz finobt +Done fuzzing finobt diff --git a/tests/xfs/368 b/tests/xfs/368 new file mode 100755 index 00000000..38b00442 --- /dev/null +++ b/tests/xfs/368 @@ -0,0 +1,61 @@ +#! /bin/bash +# FS QA Test No. 368 +# +# Populate a XFS filesystem and fuzz every rmapbt field. +# Use xfs_repair to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_xfs_scratch_rmapbt +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Fuzz rmapbt recs" +_scratch_xfs_fuzz_metadata '' 'offline' 'agf 0' 'addr rmaproot' 'addr ptrs[1]' >> $seqres.full +echo "Done fuzzing rmapbt recs" + +# success, all done +status=0 +exit diff --git a/tests/xfs/368.out b/tests/xfs/368.out new file mode 100644 index 00000000..370ea0ef --- /dev/null +++ b/tests/xfs/368.out @@ -0,0 +1,4 @@ +QA output created by 368 +Format and populate +Fuzz rmapbt recs +Done fuzzing rmapbt recs diff --git a/tests/xfs/369 b/tests/xfs/369 new file mode 100755 index 00000000..80501ba1 --- /dev/null +++ b/tests/xfs/369 @@ -0,0 +1,61 @@ +#! /bin/bash +# FS QA Test No. 369 +# +# Populate a XFS filesystem and fuzz every rmapbt field. +# Use xfs_scrub to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_xfs_scratch_rmapbt +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Fuzz rmapbt recs" +_scratch_xfs_fuzz_metadata '' 'online' 'agf 0' 'addr rmaproot' 'addr ptrs[1]' >> $seqres.full +echo "Done fuzzing rmapbt recs" + +# success, all done +status=0 +exit diff --git a/tests/xfs/369.out b/tests/xfs/369.out new file mode 100644 index 00000000..1f97134a --- /dev/null +++ b/tests/xfs/369.out @@ -0,0 +1,4 @@ +QA output created by 369 +Format and populate +Fuzz rmapbt recs +Done fuzzing rmapbt recs diff --git a/tests/xfs/370 b/tests/xfs/370 new file mode 100755 index 00000000..c11ac5f0 --- /dev/null +++ b/tests/xfs/370 @@ -0,0 +1,62 @@ +#! /bin/bash +# FS QA Test No. 370 +# +# Populate a XFS filesystem and fuzz every rmapbt key/pointer field. +# Use xfs_repair to fix the corruption. +# Use xfs_repair to repair the problems. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_xfs_scratch_rmapbt +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Fuzz rmapbt keyptr" +_scratch_xfs_fuzz_metadata '' 'offline' 'agf 0' 'addr rmaproot' >> $seqres.full +echo "Done fuzzing rmapbt keyptr" + +# success, all done +status=0 +exit diff --git a/tests/xfs/370.out b/tests/xfs/370.out new file mode 100644 index 00000000..6858e135 --- /dev/null +++ b/tests/xfs/370.out @@ -0,0 +1,4 @@ +QA output created by 370 +Format and populate +Fuzz rmapbt keyptr +Done fuzzing rmapbt keyptr diff --git a/tests/xfs/371 b/tests/xfs/371 new file mode 100755 index 00000000..8ddd89de --- /dev/null +++ b/tests/xfs/371 @@ -0,0 +1,62 @@ +#! /bin/bash +# FS QA Test No. 371 +# +# Populate a XFS filesystem and fuzz every rmapbt key/pointer field. +# Use xfs_scrub to fix the corruption. +# Use xfs_scrub to repair the problems. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_xfs_scratch_rmapbt +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Fuzz rmapbt keyptr" +_scratch_xfs_fuzz_metadata '' 'online' 'agf 0' 'addr rmaproot' >> $seqres.full +echo "Done fuzzing rmapbt keyptr" + +# success, all done +status=0 +exit diff --git a/tests/xfs/371.out b/tests/xfs/371.out new file mode 100644 index 00000000..c7c943f3 --- /dev/null +++ b/tests/xfs/371.out @@ -0,0 +1,4 @@ +QA output created by 371 +Format and populate +Fuzz rmapbt keyptr +Done fuzzing rmapbt keyptr diff --git a/tests/xfs/372 b/tests/xfs/372 new file mode 100755 index 00000000..277aa518 --- /dev/null +++ b/tests/xfs/372 @@ -0,0 +1,62 @@ +#! /bin/bash +# FS QA Test No. 372 +# +# Populate a XFS filesystem and fuzz every refcountbt field. +# Use xfs_repair to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy +. ./common/reflink + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_reflink +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Fuzz refcountbt" +_scratch_xfs_fuzz_metadata '' 'offline' 'agf 0' 'addr refcntroot' >> $seqres.full +echo "Done fuzzing refcountbt" + +# success, all done +status=0 +exit diff --git a/tests/xfs/372.out b/tests/xfs/372.out new file mode 100644 index 00000000..da95f3d5 --- /dev/null +++ b/tests/xfs/372.out @@ -0,0 +1,4 @@ +QA output created by 372 +Format and populate +Fuzz refcountbt +Done fuzzing refcountbt diff --git a/tests/xfs/373 b/tests/xfs/373 new file mode 100755 index 00000000..532dd0a4 --- /dev/null +++ b/tests/xfs/373 @@ -0,0 +1,62 @@ +#! /bin/bash +# FS QA Test No. 373 +# +# Populate a XFS filesystem and fuzz every refcountbt field. +# Use xfs_scrub to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy +. ./common/reflink + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_reflink +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Fuzz refcountbt" +_scratch_xfs_fuzz_metadata '' 'online' 'agf 0' 'addr refcntroot' >> $seqres.full +echo "Done fuzzing refcountbt" + +# success, all done +status=0 +exit diff --git a/tests/xfs/373.out b/tests/xfs/373.out new file mode 100644 index 00000000..378b6d9d --- /dev/null +++ b/tests/xfs/373.out @@ -0,0 +1,4 @@ +QA output created by 373 +Format and populate +Fuzz refcountbt +Done fuzzing refcountbt diff --git a/tests/xfs/374 b/tests/xfs/374 new file mode 100755 index 00000000..63ad9a14 --- /dev/null +++ b/tests/xfs/374 @@ -0,0 +1,65 @@ +#! /bin/bash +# FS QA Test No. 374 +# +# Populate a XFS filesystem and fuzz every btree-format directory inode field. +# Use xfs_repair to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Find btree-format dir inode" +_scratch_mount +inum=$(stat -c '%i' $SCRATCH_MNT/S_IFDIR.FMT_BTREE) +_scratch_unmount + +echo "Fuzz inode" +_scratch_xfs_fuzz_metadata '' 'offline' "inode ${inum}" >> $seqres.full +echo "Done fuzzing inode" + +# success, all done +status=0 +exit diff --git a/tests/xfs/374.out b/tests/xfs/374.out new file mode 100644 index 00000000..853d07a9 --- /dev/null +++ b/tests/xfs/374.out @@ -0,0 +1,5 @@ +QA output created by 374 +Format and populate +Find btree-format dir inode +Fuzz inode +Done fuzzing inode diff --git a/tests/xfs/375 b/tests/xfs/375 new file mode 100755 index 00000000..f2a07193 --- /dev/null +++ b/tests/xfs/375 @@ -0,0 +1,65 @@ +#! /bin/bash +# FS QA Test No. 375 +# +# Populate a XFS filesystem and fuzz every btree-format directory inode field. +# Use xfs_scrub to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Find btree-format dir inode" +_scratch_mount +inum=$(stat -c '%i' $SCRATCH_MNT/S_IFDIR.FMT_BTREE) +_scratch_unmount + +echo "Fuzz inode" +_scratch_xfs_fuzz_metadata '' 'online' "inode ${inum}" >> $seqres.full +echo "Done fuzzing inode" + +# success, all done +status=0 +exit diff --git a/tests/xfs/375.out b/tests/xfs/375.out new file mode 100644 index 00000000..ea92d708 --- /dev/null +++ b/tests/xfs/375.out @@ -0,0 +1,5 @@ +QA output created by 375 +Format and populate +Find btree-format dir inode +Fuzz inode +Done fuzzing inode diff --git a/tests/xfs/376 b/tests/xfs/376 new file mode 100755 index 00000000..74864d79 --- /dev/null +++ b/tests/xfs/376 @@ -0,0 +1,65 @@ +#! /bin/bash +# FS QA Test No. 376 +# +# Populate a XFS filesystem and fuzz every extents-format file inode field. +# Use xfs_repair to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Find extents-format file inode" +_scratch_mount +inum=$(stat -c '%i' $SCRATCH_MNT/S_IFREG.FMT_EXTENTS) +_scratch_unmount + +echo "Fuzz inode" +_scratch_xfs_fuzz_metadata '' 'offline' "inode ${inum}" >> $seqres.full +echo "Done fuzzing inode" + +# success, all done +status=0 +exit diff --git a/tests/xfs/376.out b/tests/xfs/376.out new file mode 100644 index 00000000..40f360e9 --- /dev/null +++ b/tests/xfs/376.out @@ -0,0 +1,5 @@ +QA output created by 376 +Format and populate +Find extents-format file inode +Fuzz inode +Done fuzzing inode diff --git a/tests/xfs/377 b/tests/xfs/377 new file mode 100755 index 00000000..94e5c0c2 --- /dev/null +++ b/tests/xfs/377 @@ -0,0 +1,65 @@ +#! /bin/bash +# FS QA Test No. 377 +# +# Populate a XFS filesystem and fuzz every extents-format file inode field. +# Use xfs_scrub to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Find extents-format file inode" +_scratch_mount +inum=$(stat -c '%i' $SCRATCH_MNT/S_IFREG.FMT_EXTENTS) +_scratch_unmount + +echo "Fuzz inode" +_scratch_xfs_fuzz_metadata '' 'online' "inode ${inum}" >> $seqres.full +echo "Done fuzzing inode" + +# success, all done +status=0 +exit diff --git a/tests/xfs/377.out b/tests/xfs/377.out new file mode 100644 index 00000000..e70a34fd --- /dev/null +++ b/tests/xfs/377.out @@ -0,0 +1,5 @@ +QA output created by 377 +Format and populate +Find extents-format file inode +Fuzz inode +Done fuzzing inode diff --git a/tests/xfs/378 b/tests/xfs/378 new file mode 100755 index 00000000..d456d5fa --- /dev/null +++ b/tests/xfs/378 @@ -0,0 +1,65 @@ +#! /bin/bash +# FS QA Test No. 378 +# +# Populate a XFS filesystem and fuzz every btree-format file inode field. +# Use xfs_repair to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Find btree-format file inode" +_scratch_mount +inum=$(stat -c '%i' $SCRATCH_MNT/S_IFREG.FMT_BTREE) +_scratch_unmount + +echo "Fuzz inode" +_scratch_xfs_fuzz_metadata '' 'offline' "inode ${inum}" >> $seqres.full +echo "Done fuzzing inode" + +# success, all done +status=0 +exit diff --git a/tests/xfs/378.out b/tests/xfs/378.out new file mode 100644 index 00000000..f0b1c640 --- /dev/null +++ b/tests/xfs/378.out @@ -0,0 +1,5 @@ +QA output created by 378 +Format and populate +Find btree-format file inode +Fuzz inode +Done fuzzing inode diff --git a/tests/xfs/379 b/tests/xfs/379 new file mode 100755 index 00000000..8163446c --- /dev/null +++ b/tests/xfs/379 @@ -0,0 +1,65 @@ +#! /bin/bash +# FS QA Test No. 379 +# +# Populate a XFS filesystem and fuzz every btree-format file inode field. +# Use xfs_scrub to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Find btree-format file inode" +_scratch_mount +inum=$(stat -c '%i' $SCRATCH_MNT/S_IFREG.FMT_BTREE) +_scratch_unmount + +echo "Fuzz inode" +_scratch_xfs_fuzz_metadata '' 'online' "inode ${inum}" >> $seqres.full +echo "Done fuzzing inode" + +# success, all done +status=0 +exit diff --git a/tests/xfs/379.out b/tests/xfs/379.out new file mode 100644 index 00000000..308b1934 --- /dev/null +++ b/tests/xfs/379.out @@ -0,0 +1,5 @@ +QA output created by 379 +Format and populate +Find btree-format file inode +Fuzz inode +Done fuzzing inode diff --git a/tests/xfs/380 b/tests/xfs/380 new file mode 100755 index 00000000..67ba7e1f --- /dev/null +++ b/tests/xfs/380 @@ -0,0 +1,67 @@ +#! /bin/bash +# FS QA Test No. 380 +# +# Populate a XFS filesystem and fuzz every bmbt block field. +# Use xfs_repair to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Find bmbt block" +_scratch_mount +inum=$(stat -c '%i' $SCRATCH_MNT/S_IFREG.FMT_BTREE) +_scratch_unmount + +inode_ver=$(_scratch_xfs_get_metadata_field "core.version" "inode ${inum}") + +echo "Fuzz bmbt" +_scratch_xfs_fuzz_metadata '' 'offline' "inode ${inum}" "addr u${inode_ver}.bmbt.ptrs[1]" >> $seqres.full +echo "Done fuzzing bmbt" + +# success, all done +status=0 +exit diff --git a/tests/xfs/380.out b/tests/xfs/380.out new file mode 100644 index 00000000..95b747ad --- /dev/null +++ b/tests/xfs/380.out @@ -0,0 +1,5 @@ +QA output created by 380 +Format and populate +Find bmbt block +Fuzz bmbt +Done fuzzing bmbt diff --git a/tests/xfs/381 b/tests/xfs/381 new file mode 100755 index 00000000..199d087b --- /dev/null +++ b/tests/xfs/381 @@ -0,0 +1,67 @@ +#! /bin/bash +# FS QA Test No. 381 +# +# Populate a XFS filesystem and fuzz every bmbt block field. +# Use xfs_scrub to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Find bmbt block" +_scratch_mount +inum=$(stat -c '%i' $SCRATCH_MNT/S_IFREG.FMT_BTREE) +_scratch_unmount + +inode_ver=$(_scratch_xfs_get_metadata_field "core.version" "inode ${inum}") + +echo "Fuzz bmbt" +_scratch_xfs_fuzz_metadata '' 'online' "inode ${inum}" "addr u${inode_ver}.bmbt.ptrs[1]" >> $seqres.full +echo "Done fuzzing bmbt" + +# success, all done +status=0 +exit diff --git a/tests/xfs/381.out b/tests/xfs/381.out new file mode 100644 index 00000000..217b15e3 --- /dev/null +++ b/tests/xfs/381.out @@ -0,0 +1,5 @@ +QA output created by 381 +Format and populate +Find bmbt block +Fuzz bmbt +Done fuzzing bmbt diff --git a/tests/xfs/382 b/tests/xfs/382 new file mode 100755 index 00000000..65d3b3ca --- /dev/null +++ b/tests/xfs/382 @@ -0,0 +1,65 @@ +#! /bin/bash +# FS QA Test No. 382 +# +# Populate a XFS filesystem and fuzz every symlink remote block field. +# Use xfs_repair to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Find symlink remote block" +_scratch_mount +inum=$(stat -c '%i' $SCRATCH_MNT/S_IFLNK.FMT_EXTENTS) +_scratch_unmount + +echo "Fuzz symlink remote block" +_scratch_xfs_fuzz_metadata '' 'offline' "inode ${inum}" 'dblock 0' >> $seqres.full +echo "Done fuzzing symlink remote block" + +# success, all done +status=0 +exit diff --git a/tests/xfs/382.out b/tests/xfs/382.out new file mode 100644 index 00000000..255bd382 --- /dev/null +++ b/tests/xfs/382.out @@ -0,0 +1,5 @@ +QA output created by 382 +Format and populate +Find symlink remote block +Fuzz symlink remote block +Done fuzzing symlink remote block diff --git a/tests/xfs/383 b/tests/xfs/383 new file mode 100755 index 00000000..e241157c --- /dev/null +++ b/tests/xfs/383 @@ -0,0 +1,65 @@ +#! /bin/bash +# FS QA Test No. 383 +# +# Populate a XFS filesystem and fuzz every symlink remote block field. +# Use xfs_scrub to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Find symlink remote block" +_scratch_mount +inum=$(stat -c '%i' $SCRATCH_MNT/S_IFLNK.FMT_EXTENTS) +_scratch_unmount + +echo "Fuzz symlink remote block" +_scratch_xfs_fuzz_metadata '' 'online' "inode ${inum}" 'dblock 0' >> $seqres.full +echo "Done fuzzing symlink remote block" + +# success, all done +status=0 +exit diff --git a/tests/xfs/383.out b/tests/xfs/383.out new file mode 100644 index 00000000..69e2bca4 --- /dev/null +++ b/tests/xfs/383.out @@ -0,0 +1,5 @@ +QA output created by 383 +Format and populate +Find symlink remote block +Fuzz symlink remote block +Done fuzzing symlink remote block diff --git a/tests/xfs/384 b/tests/xfs/384 new file mode 100755 index 00000000..904903da --- /dev/null +++ b/tests/xfs/384 @@ -0,0 +1,65 @@ +#! /bin/bash +# FS QA Test No. 384 +# +# Populate a XFS filesystem and fuzz every inline directory inode field. +# Use xfs_repair to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Find inline-format dir inode" +_scratch_mount +inum=$(stat -c '%i' $SCRATCH_MNT/S_IFDIR.FMT_INLINE) +_scratch_unmount + +echo "Fuzz inline-format dir inode" +_scratch_xfs_fuzz_metadata '' 'offline' "inode ${inum}" >> $seqres.full +echo "Done fuzzing inline-format dir inode" + +# success, all done +status=0 +exit diff --git a/tests/xfs/384.out b/tests/xfs/384.out new file mode 100644 index 00000000..6d0a6ae1 --- /dev/null +++ b/tests/xfs/384.out @@ -0,0 +1,5 @@ +QA output created by 384 +Format and populate +Find inline-format dir inode +Fuzz inline-format dir inode +Done fuzzing inline-format dir inode diff --git a/tests/xfs/385 b/tests/xfs/385 new file mode 100755 index 00000000..e0a6e1bd --- /dev/null +++ b/tests/xfs/385 @@ -0,0 +1,65 @@ +#! /bin/bash +# FS QA Test No. 385 +# +# Populate a XFS filesystem and fuzz every inline directory inode field. +# Use xfs_scrub to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Find inline-format dir inode" +_scratch_mount +inum=$(stat -c '%i' $SCRATCH_MNT/S_IFDIR.FMT_INLINE) +_scratch_unmount + +echo "Fuzz inline-format dir inode" +_scratch_xfs_fuzz_metadata '' 'online' "inode ${inum}" >> $seqres.full +echo "Done fuzzing inline-format dir inode" + +# success, all done +status=0 +exit diff --git a/tests/xfs/385.out b/tests/xfs/385.out new file mode 100644 index 00000000..e2b6bffd --- /dev/null +++ b/tests/xfs/385.out @@ -0,0 +1,5 @@ +QA output created by 385 +Format and populate +Find inline-format dir inode +Fuzz inline-format dir inode +Done fuzzing inline-format dir inode diff --git a/tests/xfs/386 b/tests/xfs/386 new file mode 100755 index 00000000..38cd8735 --- /dev/null +++ b/tests/xfs/386 @@ -0,0 +1,65 @@ +#! /bin/bash +# FS QA Test No. 386 +# +# Populate a XFS filesystem and fuzz every block-format dir block field. +# Use xfs_repair to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Find data-format dir block" +_scratch_mount +inum=$(stat -c '%i' $SCRATCH_MNT/S_IFDIR.FMT_BLOCK) +_scratch_unmount + +echo "Fuzz data-format dir block" +_scratch_xfs_fuzz_metadata '' 'offline' "inode ${inum}" 'dblock 0' >> $seqres.full +echo "Done fuzzing data-format dir block" + +# success, all done +status=0 +exit diff --git a/tests/xfs/386.out b/tests/xfs/386.out new file mode 100644 index 00000000..a1f1afc8 --- /dev/null +++ b/tests/xfs/386.out @@ -0,0 +1,5 @@ +QA output created by 386 +Format and populate +Find data-format dir block +Fuzz data-format dir block +Done fuzzing data-format dir block diff --git a/tests/xfs/387 b/tests/xfs/387 new file mode 100755 index 00000000..3375fe53 --- /dev/null +++ b/tests/xfs/387 @@ -0,0 +1,65 @@ +#! /bin/bash +# FS QA Test No. 387 +# +# Populate a XFS filesystem and fuzz every block-format dir block field. +# Use xfs_scrub to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Find data-format dir block" +_scratch_mount +inum=$(stat -c '%i' $SCRATCH_MNT/S_IFDIR.FMT_BLOCK) +_scratch_unmount + +echo "Fuzz data-format dir block" +_scratch_xfs_fuzz_metadata '' 'online' "inode ${inum}" 'dblock 0' >> $seqres.full +echo "Done fuzzing data-format dir block" + +# success, all done +status=0 +exit diff --git a/tests/xfs/387.out b/tests/xfs/387.out new file mode 100644 index 00000000..1a61d54b --- /dev/null +++ b/tests/xfs/387.out @@ -0,0 +1,5 @@ +QA output created by 387 +Format and populate +Find data-format dir block +Fuzz data-format dir block +Done fuzzing data-format dir block diff --git a/tests/xfs/388 b/tests/xfs/388 new file mode 100755 index 00000000..96cd2307 --- /dev/null +++ b/tests/xfs/388 @@ -0,0 +1,66 @@ +#! /bin/bash +# FS QA Test No. 388 +# +# Populate a XFS filesystem and fuzz every data-format dir block field. +# Use xfs_repair to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Find data-format dir block" +_scratch_mount +inum=$(stat -c '%i' $SCRATCH_MNT/S_IFDIR.FMT_LEAF) +blk_sz=$(_get_block_size $SCRATCH_MNT) +_scratch_unmount + +echo "Fuzz data-format dir block" +_scratch_xfs_fuzz_metadata '' 'offline' "inode ${inum}" "dblock 0" >> $seqres.full +echo "Done fuzzing data-format dir block" + +# success, all done +status=0 +exit diff --git a/tests/xfs/388.out b/tests/xfs/388.out new file mode 100644 index 00000000..175d3b46 --- /dev/null +++ b/tests/xfs/388.out @@ -0,0 +1,5 @@ +QA output created by 388 +Format and populate +Find data-format dir block +Fuzz data-format dir block +Done fuzzing data-format dir block diff --git a/tests/xfs/389 b/tests/xfs/389 new file mode 100755 index 00000000..9fa3e8a8 --- /dev/null +++ b/tests/xfs/389 @@ -0,0 +1,66 @@ +#! /bin/bash +# FS QA Test No. 389 +# +# Populate a XFS filesystem and fuzz every data-format dir block field. +# Use xfs_scrub to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Find data-format dir block" +_scratch_mount +inum=$(stat -c '%i' $SCRATCH_MNT/S_IFDIR.FMT_LEAF) +blk_sz=$(_get_block_size $SCRATCH_MNT) +_scratch_unmount + +echo "Fuzz data-format dir block" +_scratch_xfs_fuzz_metadata '' 'online' "inode ${inum}" "dblock 0" >> $seqres.full +echo "Done fuzzing data-format dir block" + +# success, all done +status=0 +exit diff --git a/tests/xfs/389.out b/tests/xfs/389.out new file mode 100644 index 00000000..04656d7c --- /dev/null +++ b/tests/xfs/389.out @@ -0,0 +1,5 @@ +QA output created by 389 +Format and populate +Find data-format dir block +Fuzz data-format dir block +Done fuzzing data-format dir block diff --git a/tests/xfs/390 b/tests/xfs/390 new file mode 100755 index 00000000..31be9462 --- /dev/null +++ b/tests/xfs/390 @@ -0,0 +1,67 @@ +#! /bin/bash +# FS QA Test No. 390 +# +# Populate a XFS filesystem and fuzz every leaf1-format dir block field. +# Use xfs_repair to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Find leaf1-format dir block" +_scratch_mount +inum=$(stat -c '%i' $SCRATCH_MNT/S_IFDIR.FMT_LEAF) +blk_sz=$(_get_block_size $SCRATCH_MNT) +_scratch_unmount + +leaf_offset=$(( (2 ** 35) / blk_sz)) +echo "Fuzz leaf1-format dir block" +_scratch_xfs_fuzz_metadata '' 'offline' "inode ${inum}" "dblock ${leaf_offset}" >> $seqres.full +echo "Done fuzzing leaf1-format dir block" + +# success, all done +status=0 +exit diff --git a/tests/xfs/390.out b/tests/xfs/390.out new file mode 100644 index 00000000..308033ee --- /dev/null +++ b/tests/xfs/390.out @@ -0,0 +1,5 @@ +QA output created by 390 +Format and populate +Find leaf1-format dir block +Fuzz leaf1-format dir block +Done fuzzing leaf1-format dir block diff --git a/tests/xfs/391 b/tests/xfs/391 new file mode 100755 index 00000000..9d753cf5 --- /dev/null +++ b/tests/xfs/391 @@ -0,0 +1,67 @@ +#! /bin/bash +# FS QA Test No. 391 +# +# Populate a XFS filesystem and fuzz every leaf1-format dir block field. +# Use xfs_scrub to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Find leaf1-format dir block" +_scratch_mount +inum=$(stat -c '%i' $SCRATCH_MNT/S_IFDIR.FMT_LEAF) +blk_sz=$(_get_block_size $SCRATCH_MNT) +_scratch_unmount + +leaf_offset=$(( (2 ** 35) / blk_sz)) +echo "Fuzz leaf1-format dir block" +_scratch_xfs_fuzz_metadata '' 'online' "inode ${inum}" "dblock ${leaf_offset}" >> $seqres.full +echo "Done fuzzing leaf1-format dir block" + +# success, all done +status=0 +exit diff --git a/tests/xfs/391.out b/tests/xfs/391.out new file mode 100644 index 00000000..7baf39ea --- /dev/null +++ b/tests/xfs/391.out @@ -0,0 +1,5 @@ +QA output created by 391 +Format and populate +Find leaf1-format dir block +Fuzz leaf1-format dir block +Done fuzzing leaf1-format dir block diff --git a/tests/xfs/392 b/tests/xfs/392 new file mode 100755 index 00000000..4e6e623f --- /dev/null +++ b/tests/xfs/392 @@ -0,0 +1,67 @@ +#! /bin/bash +# FS QA Test No. 392 +# +# Populate a XFS filesystem and fuzz every leafn-format dir block field. +# Use xfs_repair to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Find leafn-format dir block" +_scratch_mount +inum=$(stat -c '%i' $SCRATCH_MNT/S_IFDIR.FMT_NODE) +blk_sz=$(_get_block_size $SCRATCH_MNT) +_scratch_unmount + +leaf_offset=$(( ( (2 ** 35) / blk_sz) + 1)) +echo "Fuzz leafn-format dir block" +_scratch_xfs_fuzz_metadata '' 'offline' "inode ${inum}" "dblock ${leaf_offset}" >> $seqres.full +echo "Done fuzzing leafn-format dir block" + +# success, all done +status=0 +exit diff --git a/tests/xfs/392.out b/tests/xfs/392.out new file mode 100644 index 00000000..9ff34805 --- /dev/null +++ b/tests/xfs/392.out @@ -0,0 +1,5 @@ +QA output created by 392 +Format and populate +Find leafn-format dir block +Fuzz leafn-format dir block +Done fuzzing leafn-format dir block diff --git a/tests/xfs/393 b/tests/xfs/393 new file mode 100755 index 00000000..f05c4bc3 --- /dev/null +++ b/tests/xfs/393 @@ -0,0 +1,67 @@ +#! /bin/bash +# FS QA Test No. 393 +# +# Populate a XFS filesystem and fuzz every leafn-format dir block field. +# Use xfs_scrub to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Find leafn-format dir block" +_scratch_mount +inum=$(stat -c '%i' $SCRATCH_MNT/S_IFDIR.FMT_NODE) +blk_sz=$(_get_block_size $SCRATCH_MNT) +_scratch_unmount + +leaf_offset=$(( ( (2 ** 35) / blk_sz) + 1)) +echo "Fuzz leafn-format dir block" +_scratch_xfs_fuzz_metadata '' 'online' "inode ${inum}" "dblock ${leaf_offset}" >> $seqres.full +echo "Done fuzzing leafn-format dir block" + +# success, all done +status=0 +exit diff --git a/tests/xfs/393.out b/tests/xfs/393.out new file mode 100644 index 00000000..11ccf39b --- /dev/null +++ b/tests/xfs/393.out @@ -0,0 +1,5 @@ +QA output created by 393 +Format and populate +Find leafn-format dir block +Fuzz leafn-format dir block +Done fuzzing leafn-format dir block diff --git a/tests/xfs/394 b/tests/xfs/394 new file mode 100755 index 00000000..292fba12 --- /dev/null +++ b/tests/xfs/394 @@ -0,0 +1,67 @@ +#! /bin/bash +# FS QA Test No. 394 +# +# Populate a XFS filesystem and fuzz every node-format dir block field. +# Use xfs_repair to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Find node-format dir block" +_scratch_mount +inum=$(stat -c '%i' $SCRATCH_MNT/S_IFDIR.FMT_NODE) +blk_sz=$(_get_block_size $SCRATCH_MNT) +_scratch_unmount + +leaf_offset=$(( (2 ** 35) / blk_sz )) +echo "Fuzz node-format dir block" +_scratch_xfs_fuzz_metadata '' 'offline' "inode ${inum}" "dblock ${leaf_offset}" >> $seqres.full +echo "Done fuzzing node-format dir block" + +# success, all done +status=0 +exit diff --git a/tests/xfs/394.out b/tests/xfs/394.out new file mode 100644 index 00000000..bc50b852 --- /dev/null +++ b/tests/xfs/394.out @@ -0,0 +1,5 @@ +QA output created by 394 +Format and populate +Find node-format dir block +Fuzz node-format dir block +Done fuzzing node-format dir block diff --git a/tests/xfs/395 b/tests/xfs/395 new file mode 100755 index 00000000..c40535b9 --- /dev/null +++ b/tests/xfs/395 @@ -0,0 +1,67 @@ +#! /bin/bash +# FS QA Test No. 395 +# +# Populate a XFS filesystem and fuzz every node-format dir block field. +# Use xfs_scrub to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Find node-format dir block" +_scratch_mount +inum=$(stat -c '%i' $SCRATCH_MNT/S_IFDIR.FMT_NODE) +blk_sz=$(_get_block_size $SCRATCH_MNT) +_scratch_unmount + +leaf_offset=$(( (2 ** 35) / blk_sz )) +echo "Fuzz node-format dir block" +_scratch_xfs_fuzz_metadata '' 'online' "inode ${inum}" "dblock ${leaf_offset}" >> $seqres.full +echo "Done fuzzing node-format dir block" + +# success, all done +status=0 +exit diff --git a/tests/xfs/395.out b/tests/xfs/395.out new file mode 100644 index 00000000..c1d33d2d --- /dev/null +++ b/tests/xfs/395.out @@ -0,0 +1,5 @@ +QA output created by 395 +Format and populate +Find node-format dir block +Fuzz node-format dir block +Done fuzzing node-format dir block diff --git a/tests/xfs/396 b/tests/xfs/396 new file mode 100755 index 00000000..4e57caa7 --- /dev/null +++ b/tests/xfs/396 @@ -0,0 +1,67 @@ +#! /bin/bash +# FS QA Test No. 396 +# +# Populate a XFS filesystem and fuzz every freeindex-format dir block field. +# Use xfs_repair to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Find freeindex-format dir block" +_scratch_mount +inum=$(stat -c '%i' $SCRATCH_MNT/S_IFDIR.FMT_NODE) +blk_sz=$(_get_block_size $SCRATCH_MNT) +_scratch_unmount + +leaf_offset=$(( (2 ** 36) / blk_sz )) +echo "Fuzz freeindex-format dir block" +_scratch_xfs_fuzz_metadata '' 'offline' "inode ${inum}" "dblock ${leaf_offset}" >> $seqres.full +echo "Done fuzzing freeindex-format dir block" + +# success, all done +status=0 +exit diff --git a/tests/xfs/396.out b/tests/xfs/396.out new file mode 100644 index 00000000..5d40ee92 --- /dev/null +++ b/tests/xfs/396.out @@ -0,0 +1,5 @@ +QA output created by 396 +Format and populate +Find freeindex-format dir block +Fuzz freeindex-format dir block +Done fuzzing freeindex-format dir block diff --git a/tests/xfs/397 b/tests/xfs/397 new file mode 100755 index 00000000..6f5eb94b --- /dev/null +++ b/tests/xfs/397 @@ -0,0 +1,67 @@ +#! /bin/bash +# FS QA Test No. 397 +# +# Populate a XFS filesystem and fuzz every freeindex-format dir block field. +# Use xfs_scrub to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Find freeindex-format dir block" +_scratch_mount +inum=$(stat -c '%i' $SCRATCH_MNT/S_IFDIR.FMT_NODE) +blk_sz=$(_get_block_size $SCRATCH_MNT) +_scratch_unmount + +leaf_offset=$(( (2 ** 36) / blk_sz )) +echo "Fuzz freeindex-format dir block" +_scratch_xfs_fuzz_metadata '' 'online' "inode ${inum}" "dblock ${leaf_offset}" >> $seqres.full +echo "Done fuzzing freeindex-format dir block" + +# success, all done +status=0 +exit diff --git a/tests/xfs/397.out b/tests/xfs/397.out new file mode 100644 index 00000000..075351a6 --- /dev/null +++ b/tests/xfs/397.out @@ -0,0 +1,5 @@ +QA output created by 397 +Format and populate +Find freeindex-format dir block +Fuzz freeindex-format dir block +Done fuzzing freeindex-format dir block diff --git a/tests/xfs/398 b/tests/xfs/398 new file mode 100755 index 00000000..dbb76079 --- /dev/null +++ b/tests/xfs/398 @@ -0,0 +1,65 @@ +#! /bin/bash +# FS QA Test No. 398 +# +# Populate a XFS filesystem and fuzz every inline attr inode field. +# Use xfs_repair to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Find inline-format attr inode" +_scratch_mount +inum=$(stat -c '%i' $SCRATCH_MNT/ATTR.FMT_LOCAL) +_scratch_unmount + +echo "Fuzz inline-format attr inode" +_scratch_xfs_fuzz_metadata '' 'offline' "inode ${inum}" >> $seqres.full +echo "Done fuzzing inline-format attr inode" + +# success, all done +status=0 +exit diff --git a/tests/xfs/398.out b/tests/xfs/398.out new file mode 100644 index 00000000..63c899d2 --- /dev/null +++ b/tests/xfs/398.out @@ -0,0 +1,5 @@ +QA output created by 398 +Format and populate +Find inline-format attr inode +Fuzz inline-format attr inode +Done fuzzing inline-format attr inode diff --git a/tests/xfs/399 b/tests/xfs/399 new file mode 100755 index 00000000..51cfaccb --- /dev/null +++ b/tests/xfs/399 @@ -0,0 +1,65 @@ +#! /bin/bash +# FS QA Test No. 399 +# +# Populate a XFS filesystem and fuzz every inline attr inode field. +# Use xfs_scrub to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Find inline-format attr inode" +_scratch_mount +inum=$(stat -c '%i' $SCRATCH_MNT/ATTR.FMT_LOCAL) +_scratch_unmount + +echo "Fuzz inline-format attr inode" +_scratch_xfs_fuzz_metadata '' 'online' "inode ${inum}" >> $seqres.full +echo "Done fuzzing inline-format attr inode" + +# success, all done +status=0 +exit diff --git a/tests/xfs/399.out b/tests/xfs/399.out new file mode 100644 index 00000000..229bcc03 --- /dev/null +++ b/tests/xfs/399.out @@ -0,0 +1,5 @@ +QA output created by 399 +Format and populate +Find inline-format attr inode +Fuzz inline-format attr inode +Done fuzzing inline-format attr inode diff --git a/tests/xfs/400 b/tests/xfs/400 new file mode 100755 index 00000000..54ba30c6 --- /dev/null +++ b/tests/xfs/400 @@ -0,0 +1,65 @@ +#! /bin/bash +# FS QA Test No. 400 +# +# Populate a XFS filesystem and fuzz every leaf-format attr block field. +# Use xfs_repair to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Find leaf-format attr block" +_scratch_mount +inum=$(stat -c '%i' $SCRATCH_MNT/ATTR.FMT_LEAF) +_scratch_unmount + +echo "Fuzz leaf-format attr block" +_scratch_xfs_fuzz_metadata '' 'offline' "inode ${inum}" 'ablock 0' >> $seqres.full +echo "Done fuzzing leaf-format attr block" + +# success, all done +status=0 +exit diff --git a/tests/xfs/400.out b/tests/xfs/400.out new file mode 100644 index 00000000..6ac33ef2 --- /dev/null +++ b/tests/xfs/400.out @@ -0,0 +1,5 @@ +QA output created by 400 +Format and populate +Find leaf-format attr block +Fuzz leaf-format attr block +Done fuzzing leaf-format attr block diff --git a/tests/xfs/401 b/tests/xfs/401 new file mode 100755 index 00000000..bc4ccfe2 --- /dev/null +++ b/tests/xfs/401 @@ -0,0 +1,65 @@ +#! /bin/bash +# FS QA Test No. 401 +# +# Populate a XFS filesystem and fuzz every leaf-format attr block field. +# Use xfs_scrub to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Find leaf-format attr block" +_scratch_mount +inum=$(stat -c '%i' $SCRATCH_MNT/ATTR.FMT_LEAF) +_scratch_unmount + +echo "Fuzz leaf-format attr block" +_scratch_xfs_fuzz_metadata '' 'online' "inode ${inum}" 'ablock 0' >> $seqres.full +echo "Done fuzzing leaf-format attr block" + +# success, all done +status=0 +exit diff --git a/tests/xfs/401.out b/tests/xfs/401.out new file mode 100644 index 00000000..2729f3ea --- /dev/null +++ b/tests/xfs/401.out @@ -0,0 +1,5 @@ +QA output created by 401 +Format and populate +Find leaf-format attr block +Fuzz leaf-format attr block +Done fuzzing leaf-format attr block diff --git a/tests/xfs/402 b/tests/xfs/402 new file mode 100755 index 00000000..8e616454 --- /dev/null +++ b/tests/xfs/402 @@ -0,0 +1,65 @@ +#! /bin/bash +# FS QA Test No. 402 +# +# Populate a XFS filesystem and fuzz every node-format attr block field. +# Use xfs_repair to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Find node-format attr block" +_scratch_mount +inum=$(stat -c '%i' $SCRATCH_MNT/ATTR.FMT_NODE) +_scratch_unmount + +echo "Fuzz node-format attr block" +_scratch_xfs_fuzz_metadata '' 'offline' "inode ${inum}" "ablock 0" >> $seqres.full +echo "Done fuzzing node-format attr block" + +# success, all done +status=0 +exit diff --git a/tests/xfs/402.out b/tests/xfs/402.out new file mode 100644 index 00000000..94e89f4c --- /dev/null +++ b/tests/xfs/402.out @@ -0,0 +1,5 @@ +QA output created by 402 +Format and populate +Find node-format attr block +Fuzz node-format attr block +Done fuzzing node-format attr block diff --git a/tests/xfs/403 b/tests/xfs/403 new file mode 100755 index 00000000..a6f64fe1 --- /dev/null +++ b/tests/xfs/403 @@ -0,0 +1,65 @@ +#! /bin/bash +# FS QA Test No. 403 +# +# Populate a XFS filesystem and fuzz every node-format attr block field. +# Use xfs_scrub to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Find node-format attr block" +_scratch_mount +inum=$(stat -c '%i' $SCRATCH_MNT/ATTR.FMT_NODE) +_scratch_unmount + +echo "Fuzz node-format attr block" +_scratch_xfs_fuzz_metadata '' 'online' "inode ${inum}" "ablock 0" >> $seqres.full +echo "Done fuzzing node-format attr block" + +# success, all done +status=0 +exit diff --git a/tests/xfs/403.out b/tests/xfs/403.out new file mode 100644 index 00000000..b8e716f3 --- /dev/null +++ b/tests/xfs/403.out @@ -0,0 +1,5 @@ +QA output created by 403 +Format and populate +Find node-format attr block +Fuzz node-format attr block +Done fuzzing node-format attr block diff --git a/tests/xfs/404 b/tests/xfs/404 new file mode 100755 index 00000000..aa4b7e7b --- /dev/null +++ b/tests/xfs/404 @@ -0,0 +1,65 @@ +#! /bin/bash +# FS QA Test No. 404 +# +# Populate a XFS filesystem and fuzz every external attr block field. +# Use xfs_repair to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Find external attr block" +_scratch_mount +inum=$(stat -c '%i' $SCRATCH_MNT/ATTR.FMT_EXTENTS_REMOTE3K) +_scratch_unmount + +echo "Fuzz external attr block" +_scratch_xfs_fuzz_metadata '' 'offline' "inode ${inum}" "ablock 1" >> $seqres.full +echo "Done fuzzing external attr block" + +# success, all done +status=0 +exit diff --git a/tests/xfs/404.out b/tests/xfs/404.out new file mode 100644 index 00000000..30ddbd87 --- /dev/null +++ b/tests/xfs/404.out @@ -0,0 +1,5 @@ +QA output created by 404 +Format and populate +Find external attr block +Fuzz external attr block +Done fuzzing external attr block diff --git a/tests/xfs/405 b/tests/xfs/405 new file mode 100755 index 00000000..a2d2b828 --- /dev/null +++ b/tests/xfs/405 @@ -0,0 +1,65 @@ +#! /bin/bash +# FS QA Test No. 405 +# +# Populate a XFS filesystem and fuzz every external attr block field. +# Use xfs_scrub to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Find external attr block" +_scratch_mount +inum=$(stat -c '%i' $SCRATCH_MNT/ATTR.FMT_EXTENTS_REMOTE3K) +_scratch_unmount + +echo "Fuzz external attr block" +_scratch_xfs_fuzz_metadata '' 'online' "inode ${inum}" "ablock 1" >> $seqres.full +echo "Done fuzzing external attr block" + +# success, all done +status=0 +exit diff --git a/tests/xfs/405.out b/tests/xfs/405.out new file mode 100644 index 00000000..b7c114cf --- /dev/null +++ b/tests/xfs/405.out @@ -0,0 +1,5 @@ +QA output created by 405 +Format and populate +Find external attr block +Fuzz external attr block +Done fuzzing external attr block diff --git a/tests/xfs/406 b/tests/xfs/406 new file mode 100755 index 00000000..a9050f4b --- /dev/null +++ b/tests/xfs/406 @@ -0,0 +1,64 @@ +#! /bin/bash +# FS QA Test No. 406 +# +# Populate a XFS filesystem and fuzz every rtrmapbt record field. +# Use xfs_repair to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_realtime +_require_xfs_scratch_rmapbt +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +inode_ver=$(_scratch_xfs_get_metadata_field "core.version" 'sb 0' 'addr rrmapino') + +echo "Fuzz rtrmapbt recs" +_scratch_xfs_fuzz_metadata '' 'offline' 'sb 0' 'addr rrmapino' "addr u${inode_ver}.rtrmapbt.ptrs[1]" >> $seqres.full +echo "Done fuzzing rtrmapbt recs" + +# success, all done +status=0 +exit diff --git a/tests/xfs/406.out b/tests/xfs/406.out new file mode 100644 index 00000000..6615533e --- /dev/null +++ b/tests/xfs/406.out @@ -0,0 +1,4 @@ +QA output created by 406 +Format and populate +Fuzz rtrmapbt recs +Done fuzzing rtrmapbt recs diff --git a/tests/xfs/407 b/tests/xfs/407 new file mode 100755 index 00000000..cd589fd2 --- /dev/null +++ b/tests/xfs/407 @@ -0,0 +1,64 @@ +#! /bin/bash +# FS QA Test No. 407 +# +# Populate a XFS filesystem and fuzz every rtrmapbt record field. +# Use xfs_scrub to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_realtime +_require_xfs_scratch_rmapbt +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +inode_ver=$(_scratch_xfs_get_metadata_field "core.version" 'sb 0' 'addr rrmapino') + +echo "Fuzz rtrmapbt recs" +_scratch_xfs_fuzz_metadata '' 'online' 'sb 0' 'addr rrmapino' "addr u${inode_ver}.rtrmapbt.ptrs[1]" >> $seqres.full +echo "Done fuzzing rtrmapbt recs" + +# success, all done +status=0 +exit diff --git a/tests/xfs/407.out b/tests/xfs/407.out new file mode 100644 index 00000000..5c758d2b --- /dev/null +++ b/tests/xfs/407.out @@ -0,0 +1,4 @@ +QA output created by 407 +Format and populate +Fuzz rtrmapbt recs +Done fuzzing rtrmapbt recs diff --git a/tests/xfs/408 b/tests/xfs/408 new file mode 100755 index 00000000..bdd7151e --- /dev/null +++ b/tests/xfs/408 @@ -0,0 +1,62 @@ +#! /bin/bash +# FS QA Test No. 408 +# +# Populate a XFS filesystem and fuzz every rtrmapbt keyptr field. +# Use xfs_repair to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_realtime +_require_xfs_scratch_rmapbt +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Fuzz rtrmapbt keyptrs" +_scratch_xfs_fuzz_metadata '(rtrmapbt)' 'offline' 'sb 0' 'addr rrmapino' >> $seqres.full +echo "Done fuzzing rtrmapbt keyptrs" + +# success, all done +status=0 +exit diff --git a/tests/xfs/408.out b/tests/xfs/408.out new file mode 100644 index 00000000..c01b2e26 --- /dev/null +++ b/tests/xfs/408.out @@ -0,0 +1,4 @@ +QA output created by 408 +Format and populate +Fuzz rtrmapbt keyptrs +Done fuzzing rtrmapbt keyptrs diff --git a/tests/xfs/409 b/tests/xfs/409 new file mode 100755 index 00000000..a822300d --- /dev/null +++ b/tests/xfs/409 @@ -0,0 +1,62 @@ +#! /bin/bash +# FS QA Test No. 409 +# +# Populate a XFS filesystem and fuzz every rtrmapbt keyptr field. +# Use xfs_scrub to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_realtime +_require_xfs_scratch_rmapbt +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Fuzz rtrmapbt keyptrs" +_scratch_xfs_fuzz_metadata '(rtrmapbt)' 'offline' 'sb 0' 'addr rrmapino' >> $seqres.full +echo "Done fuzzing rtrmapbt keyptrs" + +# success, all done +status=0 +exit diff --git a/tests/xfs/409.out b/tests/xfs/409.out new file mode 100644 index 00000000..690ac99b --- /dev/null +++ b/tests/xfs/409.out @@ -0,0 +1,4 @@ +QA output created by 409 +Format and populate +Fuzz rtrmapbt keyptrs +Done fuzzing rtrmapbt keyptrs diff --git a/tests/xfs/410 b/tests/xfs/410 new file mode 100755 index 00000000..db001364 --- /dev/null +++ b/tests/xfs/410 @@ -0,0 +1,62 @@ +#! /bin/bash +# FS QA Test No. 410 +# +# Populate a XFS filesystem and fuzz every refcountbt field. +# Use xfs_repair to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy +. ./common/reflink + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_reflink +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Fuzz refcountbt" +_scratch_xfs_fuzz_metadata '' 'offline' 'agf 0' 'addr refcntroot' 'addr ptrs[1]' >> $seqres.full +echo "Done fuzzing refcountbt" + +# success, all done +status=0 +exit diff --git a/tests/xfs/410.out b/tests/xfs/410.out new file mode 100644 index 00000000..c43ae75e --- /dev/null +++ b/tests/xfs/410.out @@ -0,0 +1,4 @@ +QA output created by 410 +Format and populate +Fuzz refcountbt +Done fuzzing refcountbt diff --git a/tests/xfs/411 b/tests/xfs/411 new file mode 100755 index 00000000..95ba0d44 --- /dev/null +++ b/tests/xfs/411 @@ -0,0 +1,62 @@ +#! /bin/bash +# FS QA Test No. 411 +# +# Populate a XFS filesystem and fuzz every refcountbt field. +# Use xfs_scrub to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy +. ./common/reflink + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_reflink +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Fuzz refcountbt" +_scratch_xfs_fuzz_metadata '' 'online' 'agf 0' 'addr refcntroot' 'addr ptrs[1]' >> $seqres.full +echo "Done fuzzing refcountbt" + +# success, all done +status=0 +exit diff --git a/tests/xfs/411.out b/tests/xfs/411.out new file mode 100644 index 00000000..cff0163d --- /dev/null +++ b/tests/xfs/411.out @@ -0,0 +1,4 @@ +QA output created by 411 +Format and populate +Fuzz refcountbt +Done fuzzing refcountbt diff --git a/tests/xfs/412 b/tests/xfs/412 new file mode 100755 index 00000000..edff30c2 --- /dev/null +++ b/tests/xfs/412 @@ -0,0 +1,65 @@ +#! /bin/bash +# FS QA Test No. 412 +# +# Populate a XFS filesystem and fuzz every btree-format attr inode field. +# Use xfs_repair to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Find btree-format attr inode" +_scratch_mount +inum=$(stat -c '%i' $SCRATCH_MNT/ATTR.FMT_BTREE) +_scratch_unmount + +echo "Fuzz inode" +_scratch_xfs_fuzz_metadata '' 'offline' "inode ${inum}" >> $seqres.full +echo "Done fuzzing inode" + +# success, all done +status=0 +exit diff --git a/tests/xfs/412.out b/tests/xfs/412.out new file mode 100644 index 00000000..b93eec22 --- /dev/null +++ b/tests/xfs/412.out @@ -0,0 +1,5 @@ +QA output created by 412 +Format and populate +Find btree-format attr inode +Fuzz inode +Done fuzzing inode diff --git a/tests/xfs/413 b/tests/xfs/413 new file mode 100755 index 00000000..7884dc4b --- /dev/null +++ b/tests/xfs/413 @@ -0,0 +1,65 @@ +#! /bin/bash +# FS QA Test No. 413 +# +# Populate a XFS filesystem and fuzz every btree-format attr inode field. +# Use xfs_scrub to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Find btree-format attr inode" +_scratch_mount +inum=$(stat -c '%i' $SCRATCH_MNT/ATTR.FMT_BTREE) +_scratch_unmount + +echo "Fuzz inode" +_scratch_xfs_fuzz_metadata '' 'online' "inode ${inum}" >> $seqres.full +echo "Done fuzzing inode" + +# success, all done +status=0 +exit diff --git a/tests/xfs/413.out b/tests/xfs/413.out new file mode 100644 index 00000000..cebe104e --- /dev/null +++ b/tests/xfs/413.out @@ -0,0 +1,5 @@ +QA output created by 413 +Format and populate +Find btree-format attr inode +Fuzz inode +Done fuzzing inode diff --git a/tests/xfs/414 b/tests/xfs/414 new file mode 100755 index 00000000..0fb3db15 --- /dev/null +++ b/tests/xfs/414 @@ -0,0 +1,65 @@ +#! /bin/bash +# FS QA Test No. 414 +# +# Populate a XFS filesystem and fuzz every blockdev inode field. +# Use xfs_repair to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Find blockdev inode" +_scratch_mount +inum=$(stat -c '%i' $SCRATCH_MNT/S_IFBLK) +_scratch_unmount + +echo "Fuzz inode" +_scratch_xfs_fuzz_metadata '' 'offline' "inode ${inum}" >> $seqres.full +echo "Done fuzzing inode" + +# success, all done +status=0 +exit diff --git a/tests/xfs/414.out b/tests/xfs/414.out new file mode 100644 index 00000000..3d6e4d2f --- /dev/null +++ b/tests/xfs/414.out @@ -0,0 +1,5 @@ +QA output created by 414 +Format and populate +Find blockdev inode +Fuzz inode +Done fuzzing inode diff --git a/tests/xfs/415 b/tests/xfs/415 new file mode 100755 index 00000000..efbbe041 --- /dev/null +++ b/tests/xfs/415 @@ -0,0 +1,65 @@ +#! /bin/bash +# FS QA Test No. 415 +# +# Populate a XFS filesystem and fuzz every blockdev inode field. +# Use xfs_scrub to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Find blockdev inode" +_scratch_mount +inum=$(stat -c '%i' $SCRATCH_MNT/S_IFBLK) +_scratch_unmount + +echo "Fuzz inode" +_scratch_xfs_fuzz_metadata '' 'online' "inode ${inum}" >> $seqres.full +echo "Done fuzzing inode" + +# success, all done +status=0 +exit diff --git a/tests/xfs/415.out b/tests/xfs/415.out new file mode 100644 index 00000000..0784c0d5 --- /dev/null +++ b/tests/xfs/415.out @@ -0,0 +1,5 @@ +QA output created by 415 +Format and populate +Find blockdev inode +Fuzz inode +Done fuzzing inode diff --git a/tests/xfs/416 b/tests/xfs/416 new file mode 100755 index 00000000..7ff3d29c --- /dev/null +++ b/tests/xfs/416 @@ -0,0 +1,65 @@ +#! /bin/bash +# FS QA Test No. 416 +# +# Populate a XFS filesystem and fuzz every local-format symlink inode field. +# Use xfs_repair to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Find local-format symlink inode" +_scratch_mount +inum=$(stat -c '%i' $SCRATCH_MNT/S_IFLNK.FMT_LOCAL) +_scratch_unmount + +echo "Fuzz inode" +_scratch_xfs_fuzz_metadata '' 'offline' "inode ${inum}" >> $seqres.full +echo "Done fuzzing inode" + +# success, all done +status=0 +exit diff --git a/tests/xfs/416.out b/tests/xfs/416.out new file mode 100644 index 00000000..d17d2f73 --- /dev/null +++ b/tests/xfs/416.out @@ -0,0 +1,5 @@ +QA output created by 416 +Format and populate +Find local-format symlink inode +Fuzz inode +Done fuzzing inode diff --git a/tests/xfs/417 b/tests/xfs/417 new file mode 100755 index 00000000..090916b9 --- /dev/null +++ b/tests/xfs/417 @@ -0,0 +1,65 @@ +#! /bin/bash +# FS QA Test No. 417 +# +# Populate a XFS filesystem and fuzz every local-format symlink inode field. +# Use xfs_scrub to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1303 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Find local-format symlink inode" +_scratch_mount +inum=$(stat -c '%i' $SCRATCH_MNT/S_IFLNK.FMT_LOCAL) +_scratch_unmount + +echo "Fuzz inode" +_scratch_xfs_fuzz_metadata '' 'online' "inode ${inum}" >> $seqres.full +echo "Done fuzzing inode" + +# success, all done +status=0 +exit diff --git a/tests/xfs/417.out b/tests/xfs/417.out new file mode 100644 index 00000000..744cc2c7 --- /dev/null +++ b/tests/xfs/417.out @@ -0,0 +1,5 @@ +QA output created by 417 +Format and populate +Find local-format symlink inode +Fuzz inode +Done fuzzing inode diff --git a/tests/xfs/418 b/tests/xfs/418 new file mode 100755 index 00000000..8b60c08d --- /dev/null +++ b/tests/xfs/418 @@ -0,0 +1,60 @@ +#! /bin/bash +# FS QA Test No. 418 +# +# Populate a XFS filesystem and fuzz every AG1 superblock field. +# Use xfs_repair to fix the corruption. +# +#----------------------------------------------------------------------- +# Copyright (c) 2017 Oracle, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +seqres=$RESULT_DIR/$seq +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 7 15 + +_cleanup() +{ + cd / + rm -rf $tmp.* +} + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter +. ./common/populate +. ./common/fuzzy + +# real QA test starts here +_supported_os Linux +_supported_fs xfs +_require_scratch_xfs_fuzz_fields + +echo "Format and populate" +_scratch_populate_cached nofill > $seqres.full 2>&1 + +echo "Fuzz superblock" +_scratch_xfs_fuzz_metadata '' 'offline' 'sb 1' >> $seqres.full +echo "Done fuzzing superblock" + +# success, all done +status=0 +exit diff --git a/tests/xfs/418.out b/tests/xfs/418.out new file mode 100644 index 00000000..9051605b --- /dev/null +++ b/tests/xfs/418.out @@ -0,0 +1,4 @@ +QA output created by 418 +Format and populate +Fuzz superblock +Done fuzzing superblock diff --git a/tests/xfs/group b/tests/xfs/group index 3c5884c8..b18c66cf 100644 --- a/tests/xfs/group +++ b/tests/xfs/group @@ -337,3 +337,73 @@ 346 auto quick clone 347 auto quick clone 348 auto quick repair +349 dangerous_fuzzers scrub +350 dangerous_fuzzers dangerous_scrub dangerous_repair +351 dangerous_fuzzers dangerous_scrub dangerous_online_repair +352 dangerous_fuzzers dangerous_scrub dangerous_repair +353 dangerous_fuzzers dangerous_scrub dangerous_online_repair +354 dangerous_fuzzers dangerous_scrub dangerous_repair +355 dangerous_fuzzers dangerous_scrub dangerous_online_repair +356 dangerous_fuzzers dangerous_scrub dangerous_repair +357 dangerous_fuzzers dangerous_scrub dangerous_online_repair +358 dangerous_fuzzers dangerous_scrub dangerous_repair +359 dangerous_fuzzers dangerous_scrub dangerous_online_repair +360 dangerous_fuzzers dangerous_scrub dangerous_repair +361 dangerous_fuzzers dangerous_scrub dangerous_online_repair +362 dangerous_fuzzers dangerous_scrub dangerous_repair +363 dangerous_fuzzers dangerous_scrub dangerous_online_repair +364 dangerous_fuzzers dangerous_scrub dangerous_repair +365 dangerous_fuzzers dangerous_scrub dangerous_online_repair +366 dangerous_fuzzers dangerous_scrub dangerous_repair +367 dangerous_fuzzers dangerous_scrub dangerous_online_repair +368 dangerous_fuzzers dangerous_scrub dangerous_repair +369 dangerous_fuzzers dangerous_scrub dangerous_online_repair +370 dangerous_fuzzers dangerous_scrub dangerous_repair +371 dangerous_fuzzers dangerous_scrub dangerous_online_repair +372 dangerous_fuzzers dangerous_scrub dangerous_repair +373 dangerous_fuzzers dangerous_scrub dangerous_online_repair +374 dangerous_fuzzers dangerous_scrub dangerous_repair +375 dangerous_fuzzers dangerous_scrub dangerous_online_repair +376 dangerous_fuzzers dangerous_scrub dangerous_repair +377 dangerous_fuzzers dangerous_scrub dangerous_online_repair +378 dangerous_fuzzers dangerous_scrub dangerous_repair +379 dangerous_fuzzers dangerous_scrub dangerous_online_repair +380 dangerous_fuzzers dangerous_scrub dangerous_repair +381 dangerous_fuzzers dangerous_scrub dangerous_online_repair +382 dangerous_fuzzers dangerous_scrub dangerous_repair +383 dangerous_fuzzers dangerous_scrub dangerous_online_repair +384 dangerous_fuzzers dangerous_scrub dangerous_repair +385 dangerous_fuzzers dangerous_scrub dangerous_online_repair +386 dangerous_fuzzers dangerous_scrub dangerous_repair +387 dangerous_fuzzers dangerous_scrub dangerous_online_repair +388 dangerous_fuzzers dangerous_scrub dangerous_repair +389 dangerous_fuzzers dangerous_scrub dangerous_online_repair +390 dangerous_fuzzers dangerous_scrub dangerous_repair +391 dangerous_fuzzers dangerous_scrub dangerous_online_repair +392 dangerous_fuzzers dangerous_scrub dangerous_repair +393 dangerous_fuzzers dangerous_scrub dangerous_online_repair +394 dangerous_fuzzers dangerous_scrub dangerous_repair +395 dangerous_fuzzers dangerous_scrub dangerous_online_repair +396 dangerous_fuzzers dangerous_scrub dangerous_repair +397 dangerous_fuzzers dangerous_scrub dangerous_online_repair +398 dangerous_fuzzers dangerous_scrub dangerous_repair +399 dangerous_fuzzers dangerous_scrub dangerous_online_repair +400 dangerous_fuzzers dangerous_scrub dangerous_repair +401 dangerous_fuzzers dangerous_scrub dangerous_online_repair +402 dangerous_fuzzers dangerous_scrub dangerous_repair +403 dangerous_fuzzers dangerous_scrub dangerous_online_repair +404 dangerous_fuzzers dangerous_scrub dangerous_repair +405 dangerous_fuzzers dangerous_scrub dangerous_online_repair +406 dangerous_fuzzers dangerous_scrub dangerous_repair +407 dangerous_fuzzers dangerous_scrub dangerous_online_repair +408 dangerous_fuzzers dangerous_scrub dangerous_repair +409 dangerous_fuzzers dangerous_scrub dangerous_online_repair +410 dangerous_fuzzers dangerous_scrub dangerous_repair +411 dangerous_fuzzers dangerous_scrub dangerous_online_repair +412 dangerous_fuzzers dangerous_scrub dangerous_repair +413 dangerous_fuzzers dangerous_scrub dangerous_online_repair +414 dangerous_fuzzers dangerous_scrub dangerous_repair +415 dangerous_fuzzers dangerous_scrub dangerous_online_repair +416 dangerous_fuzzers dangerous_scrub dangerous_repair +417 dangerous_fuzzers dangerous_scrub dangerous_online_repair +418 dangerous_fuzzers dangerous_scrub dangerous_repair |