diff options
author | Dimitri John Ledkov <xnox@ubuntu.com> | 2018-01-11 15:44:55 +0000 |
---|---|---|
committer | Dimitri John Ledkov <xnox@ubuntu.com> | 2018-01-11 15:44:55 +0000 |
commit | d78d642bffff6ea49d62c19f26052ed6d3dcc467 (patch) | |
tree | db0f470018ee6f4b93fb8fd601401fa157e5dbe3 /tests/fsck-tests | |
parent | b309a4dfbe8130b9fef087df59dd18a487a9c18e (diff) |
New upstream release.
Diffstat (limited to 'tests/fsck-tests')
21 files changed, 65 insertions, 17 deletions
diff --git a/tests/fsck-tests/004-no-dir-index/.lowmem_repairable b/tests/fsck-tests/004-no-dir-index/.lowmem_repairable new file mode 100644 index 00000000..e69de29b --- /dev/null +++ b/tests/fsck-tests/004-no-dir-index/.lowmem_repairable diff --git a/tests/fsck-tests/009-no-dir-item-or-index/.lowmem_repairable b/tests/fsck-tests/009-no-dir-item-or-index/.lowmem_repairable new file mode 100644 index 00000000..e69de29b --- /dev/null +++ b/tests/fsck-tests/009-no-dir-item-or-index/.lowmem_repairable diff --git a/tests/fsck-tests/010-no-rootdir-inode-item/.lowmem_repairable b/tests/fsck-tests/010-no-rootdir-inode-item/.lowmem_repairable new file mode 100644 index 00000000..e69de29b --- /dev/null +++ b/tests/fsck-tests/010-no-rootdir-inode-item/.lowmem_repairable diff --git a/tests/fsck-tests/011-no-inode-item/.lowmem_repairable b/tests/fsck-tests/011-no-inode-item/.lowmem_repairable new file mode 100644 index 00000000..e69de29b --- /dev/null +++ b/tests/fsck-tests/011-no-inode-item/.lowmem_repairable diff --git a/tests/fsck-tests/013-extent-tree-rebuild/test.sh b/tests/fsck-tests/013-extent-tree-rebuild/test.sh index 90fe2e83..d71c1b2e 100755 --- a/tests/fsck-tests/013-extent-tree-rebuild/test.sh +++ b/tests/fsck-tests/013-extent-tree-rebuild/test.sh @@ -7,7 +7,7 @@ check_prereq mkfs.btrfs check_prereq btrfs setup_root_helper -prepare_test_dev 1G +prepare_test_dev # test whether fsck can rebuild a corrupted extent tree test_extent_tree_rebuild() diff --git a/tests/fsck-tests/016-wrong-inode-nbytes/.lowmem_repairable b/tests/fsck-tests/016-wrong-inode-nbytes/.lowmem_repairable new file mode 100644 index 00000000..e69de29b --- /dev/null +++ b/tests/fsck-tests/016-wrong-inode-nbytes/.lowmem_repairable diff --git a/tests/fsck-tests/017-missing-all-file-extent/.lowmem_repairable b/tests/fsck-tests/017-missing-all-file-extent/.lowmem_repairable new file mode 100644 index 00000000..e69de29b --- /dev/null +++ b/tests/fsck-tests/017-missing-all-file-extent/.lowmem_repairable diff --git a/tests/fsck-tests/020-extent-ref-cases/inline_regular_coexist.img b/tests/fsck-tests/020-extent-ref-cases/inline_regular_coexist.img Binary files differnew file mode 100644 index 00000000..cf15cc14 --- /dev/null +++ b/tests/fsck-tests/020-extent-ref-cases/inline_regular_coexist.img diff --git a/tests/fsck-tests/020-extent-ref-cases/keyed_data_ref_only.img b/tests/fsck-tests/020-extent-ref-cases/keyed_data_ref_only.img Binary files differnew file mode 100644 index 00000000..668589f4 --- /dev/null +++ b/tests/fsck-tests/020-extent-ref-cases/keyed_data_ref_only.img diff --git a/tests/fsck-tests/020-extent-ref-cases/keyed_data_ref_with_shared_leaf.img b/tests/fsck-tests/020-extent-ref-cases/keyed_data_ref_with_shared_leaf.img Binary files differnew file mode 100644 index 00000000..2ce5068f --- /dev/null +++ b/tests/fsck-tests/020-extent-ref-cases/keyed_data_ref_with_shared_leaf.img diff --git a/tests/fsck-tests/020-extent-ref-cases/ref_count_mismatch_false_alert.img b/tests/fsck-tests/020-extent-ref-cases/ref_count_mismatch_false_alert.img Binary files differnew file mode 100644 index 00000000..85110a81 --- /dev/null +++ b/tests/fsck-tests/020-extent-ref-cases/ref_count_mismatch_false_alert.img diff --git a/tests/fsck-tests/020-extent-ref-cases/shared_block_ref_only.raw.xz b/tests/fsck-tests/020-extent-ref-cases/shared_block_ref_only.raw.xz Binary files differnew file mode 100644 index 00000000..538fb4f2 --- /dev/null +++ b/tests/fsck-tests/020-extent-ref-cases/shared_block_ref_only.raw.xz diff --git a/tests/fsck-tests/020-extent-ref-cases/test.sh b/tests/fsck-tests/020-extent-ref-cases/test.sh index 1e1e4e23..0c4f7848 100755 --- a/tests/fsck-tests/020-extent-ref-cases/test.sh +++ b/tests/fsck-tests/020-extent-ref-cases/test.sh @@ -1,6 +1,6 @@ #!/bin/bash -# In order to confirm that btrfsck supports to check a variety of refs, add the -# following cases: +# In order to confirm that 'btrfs check' supports checking a variety of refs, +# add the following cases: # # * keyed_block_ref # * keyed_data_ref @@ -19,12 +19,11 @@ source "$TOP/tests/common" check_prereq btrfs -for img in *.img *.raw.xz -do - image=$(extract_image "$img") +check_image() { + local image - # Since the return value bug is already fixed, we don't need - # the old grep hack to detect bug. + image=$1 run_check "$TOP/btrfs" check "$image" - rm -f "$image" -done +} + +check_all_images diff --git a/tests/fsck-tests/021-partially-dropped-snapshot-case/test.sh b/tests/fsck-tests/021-partially-dropped-snapshot-case/test.sh index 44a33a63..5d997e24 100755 --- a/tests/fsck-tests/021-partially-dropped-snapshot-case/test.sh +++ b/tests/fsck-tests/021-partially-dropped-snapshot-case/test.sh @@ -1,18 +1,22 @@ #!/bin/bash -# confirm whether btrfsck supports to check a partially dropped snapshot +# confirm whether 'btrfs check' supports check ing of a partially dropped +# snapshot source "$TOP/tests/common" check_prereq btrfs -for img in *.img -do - image=$(extract_image "$img") +check_image() +{ + local image + + image=$1 run_check_stdout "$TOP/btrfs" check "$image" 2>&1 | grep -q "Errors found in extent allocation tree or chunk allocation" if [ $? -eq 0 ]; then rm -f "$image" _fail "unexpected error occurred when checking $img" fi - rm -f "$image" -done +} + +check_all_images diff --git a/tests/fsck-tests/024-clear-space-cache/test.sh b/tests/fsck-tests/024-clear-space-cache/test.sh index 6cf8440b..76ebcb6b 100755 --- a/tests/fsck-tests/024-clear-space-cache/test.sh +++ b/tests/fsck-tests/024-clear-space-cache/test.sh @@ -7,7 +7,7 @@ check_prereq btrfs check_prereq mkfs.btrfs setup_root_helper -prepare_test_dev 1G +prepare_test_dev run_check $SUDO_HELPER "$TOP/mkfs.btrfs" -f "$TEST_DEV" run_check_mount_test_dev diff --git a/tests/fsck-tests/027-bad-extent-inline-ref-type/bad-extent-inline-ref-type.raw.xz b/tests/fsck-tests/027-bad-extent-inline-ref-type/bad-extent-inline-ref-type.raw.xz Binary files differnew file mode 100644 index 00000000..09d82019 --- /dev/null +++ b/tests/fsck-tests/027-bad-extent-inline-ref-type/bad-extent-inline-ref-type.raw.xz diff --git a/tests/fsck-tests/027-tree-reloc-tree/test.sh b/tests/fsck-tests/027-tree-reloc-tree/test.sh new file mode 100755 index 00000000..afad1e8d --- /dev/null +++ b/tests/fsck-tests/027-tree-reloc-tree/test.sh @@ -0,0 +1,19 @@ +#!/bin/bash +# Make sure btrfs check won't report any false alerts for valid image with +# reloc tree. +# +# Also due to the short life span of reloc tree, save the as dump example for +# later usage. + +source "$TOP/tests/common" + +check_prereq btrfs + +check_image() { + local image + + image=$1 + run_check "$TOP/btrfs" check "$image" +} + +check_all_images diff --git a/tests/fsck-tests/027-tree-reloc-tree/tree_reloc_for_data_reloc.img.xz b/tests/fsck-tests/027-tree-reloc-tree/tree_reloc_for_data_reloc.img.xz Binary files differnew file mode 100644 index 00000000..66d8bde6 --- /dev/null +++ b/tests/fsck-tests/027-tree-reloc-tree/tree_reloc_for_data_reloc.img.xz diff --git a/tests/fsck-tests/027-tree-reloc-tree/tree_reloc_for_fs_tree.img.xz b/tests/fsck-tests/027-tree-reloc-tree/tree_reloc_for_fs_tree.img.xz Binary files differnew file mode 100644 index 00000000..22af324b --- /dev/null +++ b/tests/fsck-tests/027-tree-reloc-tree/tree_reloc_for_fs_tree.img.xz diff --git a/tests/fsck-tests/028-unaligned-super-dev-sizes/dev_and_super_mismatch_unaligned.raw.xz b/tests/fsck-tests/028-unaligned-super-dev-sizes/dev_and_super_mismatch_unaligned.raw.xz Binary files differnew file mode 100644 index 00000000..153e514a --- /dev/null +++ b/tests/fsck-tests/028-unaligned-super-dev-sizes/dev_and_super_mismatch_unaligned.raw.xz diff --git a/tests/fsck-tests/028-unaligned-super-dev-sizes/test.sh b/tests/fsck-tests/028-unaligned-super-dev-sizes/test.sh new file mode 100755 index 00000000..6f315fae --- /dev/null +++ b/tests/fsck-tests/028-unaligned-super-dev-sizes/test.sh @@ -0,0 +1,26 @@ +#!/bin/bash +# +# An image with mis-aligned superblock total_bytes, that will be found and +# fixed by 'check' or fixed by 'rescue fix-device-size' + +source "$TOP/tests/common" + +check_prereq btrfs +prepare_test_dev +setup_root_helper + +check_all_images + +image=$(extract_image "./dev_and_super_mismatch_unaligned.raw.xz") + +# detect and fix +run_check "$TOP/btrfs" rescue fix-device-size "$image" +# no problem found +run_check "$TOP/btrfs" rescue fix-device-size "$image" +# check if fix-device-size worked +run_check "$TOP/btrfs" check "$image" +# mount test +run_check_mount_test_dev +run_check_umount_test_dev + +rm -f "$image" |