e2fsprogs/tests
Andreas Dilger a2292f8a51 tune2fs: reset MMP state on error exit
If tune2fs cannot perform the requested change, ensure that the MMP
block is reset to the unused state before exiting.  Otherwise, the
filesystem will be left with mmp_seq = EXT4_MMP_SEQ_FSCK set, which
prevents it from being mounted afterward:

    EXT4-fs warning (device dm-9): ext4_multi_mount_protect:311:
        fsck is running on the filesystem

Add a test to try some failed tune2fs operations and verify that the
MMP block is left in a clean state afterward.

Lustre-bug-id: https://jira.whamcloud.com/browse/LU-13672
Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
2020-10-01 16:51:46 -04:00
..
d_bad_ostype tests: dumpe2fs against an image with bad os_type 2017-07-22 17:52:56 -04:00
d_corrupt_journal_nr_users libe2p: avoid segfault when s_nr_users is too high 2018-10-02 21:47:10 -04:00
d_dumpe2fs_group_only tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
d_fallocate tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
d_fallocate_bigalloc tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
d_fallocate_blkmap tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
d_inline_dump tests: clean up $DEBUGFS_EXE usage in scripts 2018-06-22 12:31:42 -04:00
d_loaddump tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
d_punch e2fsck: use "Optimize?" prompt for PR_1E_CAN_{COLLAPSE,NARROW}_EXTENT_TREE 2018-12-15 22:37:53 -05:00
d_punch_bigalloc e2fsck: use "Optimize?" prompt for PR_1E_CAN_{COLLAPSE,NARROW}_EXTENT_TREE 2018-12-15 22:37:53 -05:00
d_special_files tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
d_xattr_edits tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
d_xattr_sorting tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
defaults tests: test writing and recovering checksum-free 32/64bit journals 2014-09-11 16:52:39 -04:00
e_brel_bma tests: shorten test descriptions to fit in 80 columns 2017-10-15 16:23:24 -04:00
e_icount_normal tests: use make rules to run tests in parallel 2012-05-29 08:41:26 -04:00
e_icount_opt Many files: 1997-04-29 17:48:10 +00:00
e_irel_ima tests: shorten test descriptions to fit in 80 columns 2017-10-15 16:23:24 -04:00
f_8192_block Do sanity checking of the number of blocks and inodes in a group for 2002-06-10 11:05:56 -06:00
f_16384_block Do sanity checking of the number of blocks and inodes in a group for 2002-06-10 11:05:56 -06:00
f_bad_bbitmap tests: add regression tests for group descriptors with bad checksums 2014-08-02 23:50:52 -04:00
f_bad_bmap_csum tests: add regression tests for group descriptors with bad checksums 2014-08-02 23:50:52 -04:00
f_bad_disconnected_inode e2fsck: check the validity of the casefold flag 2019-09-03 10:37:51 -04:00
f_bad_gdt_csum tests: add regression tests for group descriptors with bad checksums 2014-08-02 23:50:52 -04:00
f_bad_ibitmap tests: add regression tests for group descriptors with bad checksums 2014-08-02 23:50:52 -04:00
f_bad_inode_csum tests: add regression tests for inodes with bad checksums 2014-08-02 23:51:31 -04:00
f_bad_local_jnl libe2p: avoid segfault when s_nr_users is too high 2018-10-02 21:47:10 -04:00
f_badbblocks e2fsck: Interpret negative blkcount in file system problem reports 2009-10-04 18:02:24 -04:00
f_badcluster tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
f_baddir e2fsck: fix mysterious "FILE SYSTEM WAS MODIFIED" with no changes 2011-06-16 01:22:02 -04:00
f_baddir2 e2fsck: Interpret negative blkcount in file system problem reports 2009-10-04 18:02:24 -04:00
f_baddotdir Many files: 1997-10-03 17:48:10 +00:00
f_badinode On-disk format definition for huge files 2006-11-11 06:32:03 -05:00
f_badjour_indblks tests: remove unnecessary uncompressed image file 2020-09-30 17:18:35 -04:00
f_badjourblks e2fsck: fix message when the journal is deleted and regenerated 2015-01-27 13:12:52 -05:00
f_badorphan Add support for backing up the journal inode location in the 2003-08-21 00:40:26 -04:00
f_badprimary Clean up e2fsck problem description messages for typo's and to make them 2005-06-19 09:45:36 -04:00
f_badroot libext2fs: display partial path if fs corrupted in ext2fs_get_pathname() 2012-01-17 15:38:31 -05:00
f_badsymlinks Overhaul extended attribute handling. Should now be correct with 2002-08-17 10:19:44 -04:00
f_badsymlinks2 tests: test e2fsck's handling of bad symlinks 2018-03-03 23:21:57 -05:00
f_badtable Overhaul extended attribute handling. Should now be correct with 2002-08-17 10:19:44 -04:00
f_bb_in_bb e2fsck: ignore badblocks if it says badblocks inode is bad 2014-09-11 18:08:26 -04:00
f_bbfile e2fsck: print runs of duplicate blocks instead of all of them 2014-03-15 12:12:37 -04:00
f_bbinode E2fsck now prints ranges in pass 5 when printing deltas in 2002-03-07 02:47:07 -05:00
f_big_sparse libext2fs: provide a function to set inode size 2014-07-26 14:34:56 -04:00
f_bigalloc_badinode tests: clean up $DEBUGFS_EXE usage in scripts 2018-06-22 12:31:42 -04:00
f_bigalloc_orphan_list tests: fix f_bigalloc_orphan_list so it is not dependant on umask 2018-06-23 17:54:28 -04:00
f_bigalloc_symlink_with_xattr tests: shorten test descriptions to fit in 80 columns 2017-10-15 16:23:24 -04:00
f_bitmaps e2fsck: check and fix tails of all bitmap blocks 2019-05-06 10:15:29 -04:00
f_boundscheck tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
f_clear_xattr Fix e2fsck to not delete symlinks that contain an extended attribute after 2005-01-27 14:28:41 -05:00
f_cloneblock_alloc_error e2fsck: decrement bad count _after_ remapping a duplicate block 2015-01-28 08:53:54 -05:00
f_collapse_extent_tree e2fsck: use "Optimize?" prompt for PR_1E_CAN_{COLLAPSE,NARROW}_EXTENT_TREE 2018-12-15 22:37:53 -05:00
f_compress_extent_tree_level e2fsck: use "Optimize?" prompt for PR_1E_CAN_{COLLAPSE,NARROW}_EXTENT_TREE 2018-12-15 22:37:53 -05:00
f_convert_bmap tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
f_convert_bmap_and_extent tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
f_convert_bmap_sparse tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
f_corrupt_dirent_tail e2fsck: make insert_dirent_tail more robust 2014-07-27 19:46:15 -04:00
f_crashdisk e2fsck: allow to fix some superblock corruptions 2018-06-19 11:27:27 -04:00
f_create_symlinks tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
f_del_dup_quota tests: add new test f_del_dup_quota 2017-06-23 17:28:12 -04:00
f_deleted_inode_bad_csum tests: shorten test descriptions to fit in 80 columns 2017-10-15 16:23:24 -04:00
f_desc_size_128 debugfs, e2fsck: fix s_desc_size handling 2013-12-24 22:50:19 -05:00
f_desc_size_bad tests: clean up $DEBUGFS_EXE usage in scripts 2018-06-22 12:31:42 -04:00
f_detect_junk tests: fix up f_detect_junk and f_detect_xfs 2018-06-25 09:43:18 -04:00
f_detect_xfs tests: fix up f_detect_junk and f_detect_xfs 2018-06-25 09:43:18 -04:00
f_dir_bad_csum libext2fs: make ext2fs_dirent_has_tail() more strict 2020-03-14 23:24:39 -04:00
f_dir_bad_mode e2fsck: Recover a special file which looks an awful lot like a directory 2007-04-02 10:08:59 -04:00
f_dirlink Many files: 1997-04-29 14:53:37 +00:00
f_dup e2fsck: check and fix tails of all bitmap blocks 2019-05-06 10:15:29 -04:00
f_dup2 e2fsck: check and fix tails of all bitmap blocks 2019-05-06 10:15:29 -04:00
f_dup3 e2fsck: check and fix tails of all bitmap blocks 2019-05-06 10:15:29 -04:00
f_dup4 tests: clean up $DEBUGFS_EXE usage in scripts 2018-06-22 12:31:42 -04:00
f_dup_ba e2fsck: print runs of duplicate blocks instead of all of them 2014-03-15 12:12:37 -04:00
f_dup_de tests: clean up $DEBUGFS_EXE usage in scripts 2018-06-22 12:31:42 -04:00
f_dup_de2 e2fsck: Fix duplicate directory entries for non-indexed directories 2009-11-16 21:56:24 -05:00
f_dup_resize tests: clean up $DEBUGFS_EXE usage in scripts 2018-06-22 12:31:42 -04:00
f_dupdot libext2fs: display partial path if fs corrupted in ext2fs_get_pathname() 2012-01-17 15:38:31 -05:00
f_dupfsblks e2fsck: print runs of duplicate blocks instead of all of them 2014-03-15 12:12:37 -04:00
f_dupsuper e2fsck: print runs of duplicate blocks instead of all of them 2014-03-15 12:12:37 -04:00
f_ea_bad_csum tests: add regression tests for EA blocks with bad checksums 2014-08-02 23:18:37 -04:00
f_ea_checks e2fsprogs-tests-f_ea_checks.patch 2008-02-18 21:45:33 -05:00
f_ea_inode e2fsck: add test for ea_inode feature 2017-07-04 23:53:59 -04:00
f_ea_inode_self_ref tests: add new test f_ea_inode_self_ref 2018-04-07 01:12:00 -04:00
f_ea_value_crash libext2fs: check ea value offset when loading 2014-09-11 18:10:23 -04:00
f_emptydir e2fsck: always submit logical block 0 of a directory for pass 2 2014-07-25 08:39:45 -04:00
f_encrypted_lpf e2fsck: check for an encrypted lost+found directory 2015-07-16 15:07:59 -04:00
f_end-bitmap e2fsck: check and fix tails of all bitmap blocks 2019-05-06 10:15:29 -04:00
f_eofblocks e2fsck: do not allow initialized blocks pass i_size 2018-06-28 17:22:06 -04:00
f_expand libext2fs: display partial path if fs corrupted in ext2fs_get_pathname() 2012-01-17 15:38:31 -05:00
f_expandroot_create_lnf e2fsck: expand root dir if linking l+f fails 2014-09-11 18:09:14 -04:00
f_ext_journal tests: use make rules to run tests in parallel 2012-05-29 08:41:26 -04:00
f_ext_zero_len e2fsck: check for zero length extent 2012-03-11 23:31:38 -04:00
f_extent_bad_node e2fsck: use "Optimize?" prompt for PR_1E_CAN_{COLLAPSE,NARROW}_EXTENT_TREE 2018-12-15 22:37:53 -05:00
f_extent_htree tests, mke2fs: add option to suppress xattr copying to fix f_extent_htree 2018-06-26 15:21:28 -04:00
f_extent_int_bad_csum e2fsck: remove 'invalid' wording from error when extent block fails checksum 2014-12-03 00:01:44 -05:00
f_extent_int_bad_extent tests: add tests for handling of corrupt extents 2014-08-02 23:46:15 -04:00
f_extent_int_bad_magic e2fsck: use "Optimize?" prompt for PR_1E_CAN_{COLLAPSE,NARROW}_EXTENT_TREE 2018-12-15 22:37:53 -05:00
f_extent_interior_start_lblk tests: add test of an incorrect interior node in an extent tree 2012-12-20 21:48:08 -05:00
f_extent_leaf_bad_csum e2fsck: remove 'invalid' wording from error when extent block fails checksum 2014-12-03 00:01:44 -05:00
f_extent_leaf_bad_extent tests: add tests for handling of corrupt extents 2014-08-02 23:46:15 -04:00
f_extent_leaf_bad_magic e2fsck: use "Optimize?" prompt for PR_1E_CAN_{COLLAPSE,NARROW}_EXTENT_TREE 2018-12-15 22:37:53 -05:00
f_extent_oobounds e2fsck: use "Optimize?" prompt for PR_1E_CAN_{COLLAPSE,NARROW}_EXTENT_TREE 2018-12-15 22:37:53 -05:00
f_extent_too_deep tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
f_extents e2fsck: mark device inodes with EXT4_EXTENTS_FL bad 2018-06-23 17:54:01 -04:00
f_extents2 libext2fs: set interior tree block goal more intelligently 2014-12-13 20:14:14 -05:00
f_extra_journal e2fsck: make a prompt message simpler and thus translatable 2014-06-03 22:04:28 -04:00
f_fast_symlink_extents Add new test case to check e2fsck's response to fast symlinks w/ EXTENTS_FL 2008-03-24 08:24:45 -04:00
f_file_acl_high e2fsck: On a 32-bit filesystem, make sure i_file_acl_high is zero 2009-04-23 21:31:16 -04:00
f_filetype Overhaul extended attribute handling. Should now be correct with 2002-08-17 10:19:44 -04:00
f_first_meta_bg_too_big tests: add f_first_meta_bg_too_big test 2014-08-10 16:21:31 -04:00
f_full_bg e2fsck: Fix check to see if an extent-based file is fragmented 2008-08-10 22:43:24 -04:00
f_h_badnode e2fsck: fix e2fsck -fD directory truncation 2015-11-30 15:26:35 -05:00
f_h_badroot tests: use make rules to run tests in parallel 2012-05-29 08:41:26 -04:00
f_h_normal tests: use make rules to run tests in parallel 2012-05-29 08:41:26 -04:00
f_h_reindex tests: use make rules to run tests in parallel 2012-05-29 08:41:26 -04:00
f_h_unsigned tests: use make rules to run tests in parallel 2012-05-29 08:41:26 -04:00
f_holedir e2fsck: Fix directory i_size handling 2008-03-13 00:58:54 -04:00
f_holedir2 e2fsck: collapse holes in extent-based directories 2014-07-25 08:30:11 -04:00
f_holedir3 e2fsck: collapse holes in extent-based directories 2014-07-25 08:30:11 -04:00
f_holedir4 e2fsck: fix sliding the directory block down on bigalloc 2014-09-18 21:29:21 -04:00
f_htree_bad_csum tests: shorten test descriptions to fit in 80 columns 2017-10-15 16:23:24 -04:00
f_htree_leaf_csum e2fsck: check htree leaf block checksums 2015-07-22 00:06:43 -04:00
f_hugedir_blocks tests: shorten test descriptions to fit in 80 columns 2017-10-15 16:23:24 -04:00
f_hurd ChangeLog, problem.c, problem.h, super.c: 2000-05-08 13:33:17 +00:00
f_idata_and_extents e2fsck: fix conflicting extents|inlinedata inode flags 2014-08-10 18:43:24 -04:00
f_illbbitmap e2fsck: check and fix tails of all bitmap blocks 2019-05-06 10:15:29 -04:00
f_illibitmap e2fsck: check and fix tails of all bitmap blocks 2019-05-06 10:15:29 -04:00
f_illitable e2fsck: reserve blocks for root/lost+found directory repair 2014-07-26 15:45:42 -04:00
f_illitable_flexbg e2fsck: check and fix tails of all bitmap blocks 2019-05-06 10:15:29 -04:00
f_imagic Overhaul extended attribute handling. Should now be correct with 2002-08-17 10:19:44 -04:00
f_imagic_fs tests: clean up $DEBUGFS_EXE usage in scripts 2018-06-22 12:31:42 -04:00
f_ind_inode_collision e2fsck: quiet some harmless bitmap warnings 2017-07-23 00:07:58 -04:00
f_inlinedata_dirblocks e2fsck: inspect inline dir data as two directory blocks 2015-01-28 09:00:13 -05:00
f_inlinedata_flags e2fsck: check xattr 'system.data' before setting inline_data feature 2018-11-15 13:02:34 -05:00
f_inlinedata_repair e2fsck: turn inline data symlink into a fast symlink when possible 2015-04-20 21:48:02 -04:00
f_inlinedir_detector e2fsck: improve the inline directory detector 2015-01-28 11:37:44 -05:00
f_inode_ea_collision e2fsck: check ea-in-inode regions for overlap 2014-08-10 18:34:43 -04:00
f_invalid_bad_inode e2fsck: check for invalid bad block inode 2011-09-28 18:34:33 -04:00
f_invalid_extent_symlink e2fsck: correctly deallocate invalid extent-mapped symlinks 2013-07-28 22:03:01 -04:00
f_itable_collision tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
f_jnl_32bit tests: clean up sed filtering of test output 2013-06-15 18:44:09 -04:00
f_jnl_64bit debugfs: teach logdump to deal with 64bit revoke tables 2014-05-11 21:04:17 -04:00
f_jnl_errno e2fsck: exit with exit status 0 if no errors were fixed 2017-02-16 22:02:35 -05:00
f_jnl_etb_alloc_fail tests: shorten test descriptions to fit in 80 columns 2017-10-15 16:23:24 -04:00
f_journal e2fsck: exit with exit status 0 if no errors were fixed 2017-02-16 22:02:35 -05:00
f_large_dir e2fsck: set dir_nlink feature if large dir exists 2018-06-22 18:08:54 -04:00
f_lotsbad Check for inodes which are too big (either too many blocks, or 2002-05-21 21:19:14 -04:00
f_lpf e2fsck: check and fix tails of all bitmap blocks 2019-05-06 10:15:29 -04:00
f_lpf2 Fix bug in e2fsck: When reconnecting a directory, we may 2003-12-12 03:00:56 -05:00
f_lpffile Overhaul extended attribute handling. Should now be correct with 2002-08-17 10:19:44 -04:00
f_messy_inode E2fsck now prints ranges in pass 5 when printing deltas in 2002-03-07 02:47:07 -05:00
f_miss_blk_bmap e2fsck: report ext2fs_open2() and ext2fs_check_desc() errors 2012-03-21 23:40:24 -04:00
f_miss_journal e2fsck: fix message when the journal is deleted and regenerated 2015-01-27 13:12:52 -05:00
f_misstable e2fsck: report ext2fs_open2() and ext2fs_check_desc() errors 2012-03-21 23:40:24 -04:00
f_mke2fs2b Overhaul extended attribute handling. Should now be correct with 2002-08-17 10:19:44 -04:00
f_mke2fs_baddisk tests: fix d_inline_dump and f_mke2fs_baddisk from leaving behind temp files 2017-10-15 16:19:04 -04:00
f_mmp libext2fs: don't use O_DIRECT for files on tmpfs 2020-03-07 11:14:02 -05:00
f_mmp_garbage libext2fs: don't use O_DIRECT for files on tmpfs 2020-03-07 11:14:02 -05:00
f_no e2fsck: make the low dtime check consistent when using the backup superblock 2019-09-02 20:40:45 -04:00
f_no_cache_corrupt_inode libext2fs: don't cache inodes that fail checksum verification 2014-08-02 22:49:23 -04:00
f_noroot Overhaul extended attribute handling. Should now be correct with 2002-08-17 10:19:44 -04:00
f_nospc_create_lnf e2fsck: convert 'delete files' warning to a proper fix_problem error 2014-08-10 18:21:15 -04:00
f_okgroup e2fsck: avoid unnecessary reboots in some cases when checking the root fs 2011-09-30 23:12:37 -04:00
f_opt_extent tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
f_opt_extent_ext3 tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
f_orphan e2fsck: exit with exit status 0 if no errors were fixed 2017-02-16 22:02:35 -05:00
f_orphan_dotdot_ft libext2fs: display partial path if fs corrupted in ext2fs_get_pathname() 2012-01-17 15:38:31 -05:00
f_orphan_extents_inode e2fsck: exit with exit status 0 if no errors were fixed 2017-02-16 22:02:35 -05:00
f_orphan_indirect_inode tests: clean up sed filtering of test output 2013-06-15 18:44:09 -04:00
f_orphquot e2fsck: adjust quota counters when clearing orphaned inodes 2018-03-29 23:37:32 -04:00
f_overfsblks e2fsck: check and fix tails of all bitmap blocks 2019-05-06 10:15:29 -04:00
f_pre_1970_date_encoding tests: don't use "debugfs -f /dev/stdin" 2017-02-16 11:18:46 -05:00
f_preen tests: clean up sed filtering of test output 2013-06-15 18:44:09 -04:00
f_quota e2fsprogs: enable project quota reporting in debugfs 2017-01-30 12:34:16 -05:00
f_quota_extent_opt e2fsck: use "Optimize?" prompt for PR_1E_CAN_{COLLAPSE,NARROW}_EXTENT_TREE 2018-12-15 22:37:53 -05:00
f_quota_invalid_inum e2fsck: fix the message printed for the project quota type 2017-08-22 15:40:23 -04:00
f_readonly_fsck tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
f_rebuild_csum_rootdir libext2fs: make ext2fs_dirent_has_tail() more strict 2020-03-14 23:24:39 -04:00
f_recnect_bad e2fsprogs: supersede i_dir_acl with i_size_high for all cases 2017-04-13 11:53:32 -04:00
f_reconnect Many files: 1997-04-29 16:17:09 +00:00
f_rehash_dir e2fsck: exit with exit status 0 if no errors were fixed 2017-02-16 22:02:35 -05:00
f_resize_inode tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
f_resize_inode_meta_bg libext2fs: make ext2fs_dirent_has_tail() more strict 2020-03-14 23:24:39 -04:00
f_salvage_dir e2fsck: Interpret negative blkcount in file system problem reports 2009-10-04 18:02:24 -04:00
f_sb_extra_isize e2fsck: enforce that the extra isize fields in the superblock are sane 2016-09-04 17:41:20 -04:00
f_selinux Add f_selinux test case. 2004-01-30 01:59:42 -05:00
f_shared_blocks_ok AOSP: e2fsck: Skip duplicate blocks when RO_COMPAT_SHARED_BLOCKS is set. 2018-06-21 09:47:57 -04:00
f_short_encrypted_dirent e2fsck: check for encrypted directory entries with too-short file names 2015-07-16 18:02:58 -04:00
f_special_ea Add support for backing up the journal inode location in the 2003-08-21 00:40:26 -04:00
f_summary_counts e2fsck: fix mysterious "FILE SYSTEM WAS MODIFIED" with no changes 2011-06-16 01:22:02 -04:00
f_super_bad_csum e2fsck: check and fix tails of all bitmap blocks 2019-05-06 10:15:29 -04:00
f_toobig_extent_dir e2fsck: check extent-mapped directories with really large logical blocks 2013-07-28 21:03:00 -04:00
f_trunc_dirent_header e2fsck: salvage under-sized dirents by removing them 2015-01-29 11:09:07 -05:00
f_uninit_cat tests: remove pre-generated f_extent_htree image 2018-06-22 17:59:48 -04:00
f_uninit_dir e2fsck: clear uninit flag on directory extents 2014-07-25 08:50:23 -04:00
f_uninit_ext_past_eof tests: add new test f_zero_extent_length 2012-06-11 01:06:50 -04:00
f_uninit_ext_past_eof2 tests: shorten test descriptions to fit in 80 columns 2017-10-15 16:23:24 -04:00
f_uninit_last_uninit tests: clean up $DEBUGFS_EXE usage in scripts 2018-06-22 12:31:42 -04:00
f_unshare_blocks_no_space AOSP: e2fsck: imply -f when using -E unshare_blocks 2018-06-21 10:14:47 -04:00
f_unshare_blocks_ok AOSP: e2fsck: imply -f when using -E unshare_blocks 2018-06-21 10:14:47 -04:00
f_unsorted_EAs e2fsck: exit with exit status 0 if no errors were fixed 2017-02-16 22:02:35 -05:00
f_unused_itable tests: use make rules to run tests in parallel 2012-05-29 08:41:26 -04:00
f_valid_ea_in_inode tests: fix f_valid_ea_in_inode to use the ea_feature 2019-03-24 02:36:08 -04:00
f_verity tests: add test for e2fsck of verity file 2019-05-30 17:08:08 -04:00
f_write_ea_no_extra_isize e2fsck: make sure system.data xattr is present 2017-01-31 14:05:45 -05:00
f_write_ea_toobig_extra_isize e2fsck: make sure system.data xattr is present 2017-01-31 14:05:45 -05:00
f_write_ea_toosmall_extra_isize tests: shorten test descriptions to fit in 80 columns 2017-10-15 16:23:24 -04:00
f_yes e2fsck: make the low dtime check consistent when using the backup superblock 2019-09-02 20:40:45 -04:00
f_yesall e2fsck: make the low dtime check consistent when using the backup superblock 2019-09-02 20:40:45 -04:00
f_yesthenall e2fsck: make the low dtime check consistent when using the backup superblock 2019-09-02 20:40:45 -04:00
f_yesthenno e2fsck: make the low dtime check consistent when using the backup superblock 2019-09-02 20:40:45 -04:00
f_zero_group e2fsck: report ext2fs_open2() and ext2fs_check_desc() errors 2012-03-21 23:40:24 -04:00
f_zero_inode_size e2fsck: report ext2fs_open2() and ext2fs_check_desc() errors 2012-03-21 23:40:24 -04:00
f_zero_super e2fsck: report ext2fs_open2() and ext2fs_check_desc() errors 2012-03-21 23:40:24 -04:00
f_zero_xattr tests: add new test f_zero_xattr 2013-04-25 00:29:09 -04:00
f_zeroed_ext_header e2fsck: zap extent-format inode with no extent header 2015-11-30 15:22:07 -05:00
i_bad_csum tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
i_bitmaps tests: don't leave temp files behind after running i_bitmaps 2018-04-09 16:20:53 -04:00
i_qcow tests: fix i_qcow test to properly test e2image's qcow-to-raw functionality 2018-06-24 18:30:50 -04:00
i_zero_super tests: suppress e2image version number from being printed 2019-07-14 10:07:24 -04:00
j_corrupt_commit_csum tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
j_corrupt_commit_tid tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
j_corrupt_descr_csum tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
j_corrupt_descr_tid tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
j_corrupt_ext_jnl_sb_block tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
j_corrupt_ext_jnl_sb_csum e2fsck: check and fix tails of all bitmap blocks 2019-05-06 10:15:29 -04:00
j_corrupt_journal_block tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
j_corrupt_revoke_block tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
j_corrupt_revoke_csum tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
j_corrupt_revoke_rcount e2fsck: clean up error messages when journal is corrupted 2016-04-17 00:44:06 -04:00
j_corrupt_sb_csum tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
j_corrupt_sb_magic tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
j_ext_dumpe2fs e2fsck: only retry to open the file system when the superblock is corrupt 2018-06-24 21:09:59 -04:00
j_ext_long_revoke_trans tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
j_ext_long_trans e2fsck: check and fix tails of all bitmap blocks 2019-05-06 10:15:29 -04:00
j_long_revoke_trans tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
j_long_revoke_trans_mcsum_32bit tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
j_long_revoke_trans_mcsum_64bit tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
j_long_trans e2fsck: check and fix tails of all bitmap blocks 2019-05-06 10:15:29 -04:00
j_long_trans_mcsum_32bit e2fsck: check and fix tails of all bitmap blocks 2019-05-06 10:15:29 -04:00
j_long_trans_mcsum_64bit e2fsck: check and fix tails of all bitmap blocks 2019-05-06 10:15:29 -04:00
j_recover_csum2_32bit e2fsck: check and fix tails of all bitmap blocks 2019-05-06 10:15:29 -04:00
j_recover_csum2_64bit e2fsck: check and fix tails of all bitmap blocks 2019-05-06 10:15:29 -04:00
j_recover_csum3_64bit tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
j_short_revoke_trans tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
j_short_revoke_trans_mcsum_64bit tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
j_short_trans e2fsck: check and fix tails of all bitmap blocks 2019-05-06 10:15:29 -04:00
j_short_trans_64bit e2fsck: check and fix tails of all bitmap blocks 2019-05-06 10:15:29 -04:00
j_short_trans_mcsum_64bit e2fsck: check and fix tails of all bitmap blocks 2019-05-06 10:15:29 -04:00
j_short_trans_old_csum e2fsck: check and fix tails of all bitmap blocks 2019-05-06 10:15:29 -04:00
j_short_trans_open_recover e2fsck: check and fix tails of all bitmap blocks 2019-05-06 10:15:29 -04:00
j_short_trans_recover e2fsck: check and fix tails of all bitmap blocks 2019-05-06 10:15:29 -04:00
j_short_trans_recover_mcsum_64bit e2fsck: check and fix tails of all bitmap blocks 2019-05-06 10:15:29 -04:00
j_short_uncommitted_trans tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
j_short_uncommitted_trans_mcsum_64bit tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
m_64bit_flexbg dumpe2fs: reduce dumpe2fs output to 80 columns or less 2014-12-13 21:51:48 -05:00
m_bigjournal Add project quota support 2016-03-06 17:33:39 -05:00
m_dasd_bs dumpe2fs: reduce dumpe2fs output to 80 columns or less 2014-12-13 21:51:48 -05:00
m_desc_size_128 dumpe2fs: reduce dumpe2fs output to 80 columns or less 2014-12-13 21:51:48 -05:00
m_devdir tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
m_error_behavior tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
m_extent_journal dumpe2fs: reduce dumpe2fs output to 80 columns or less 2014-12-13 21:51:48 -05:00
m_hugefile tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
m_hugefile_slack tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
m_image_mmp libext2fs: don't use O_DIRECT for files on tmpfs 2020-03-07 11:14:02 -05:00
m_large_file Add project quota support 2016-03-06 17:33:39 -05:00
m_mcsum_extjournal tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
m_meta_bg dumpe2fs: reduce dumpe2fs output to 80 columns or less 2014-12-13 21:51:48 -05:00
m_minrootdir tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
m_mkfs_overhead tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
m_mmp libext2fs: don't use O_DIRECT for files on tmpfs 2020-03-07 11:14:02 -05:00
m_mmp_bad_csum libext2fs: don't use O_DIRECT for files on tmpfs 2020-03-07 11:14:02 -05:00
m_mmp_bad_magic libext2fs: don't use O_DIRECT for files on tmpfs 2020-03-07 11:14:02 -05:00
m_no_opt dumpe2fs: reduce dumpe2fs output to 80 columns or less 2014-12-13 21:51:48 -05:00
m_offset Search for GNU-compatible dd for self-tests. 2017-08-29 01:05:58 -04:00
m_quota Add project quota support 2016-03-06 17:33:39 -05:00
m_raid_opt dumpe2fs: reduce dumpe2fs output to 80 columns or less 2014-12-13 21:51:48 -05:00
m_resize_inode_meta_bg tests: mke2fs must not create fs with resize_inode and meta_bg 2018-08-14 13:06:19 -04:00
m_root_owner dumpe2fs: reduce dumpe2fs output to 80 columns or less 2014-12-13 21:51:48 -05:00
m_rootdir tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
m_std dumpe2fs: reduce dumpe2fs output to 80 columns or less 2014-12-13 21:51:48 -05:00
m_uninit dumpe2fs: reduce dumpe2fs output to 80 columns or less 2014-12-13 21:51:48 -05:00
progs Fix function declarations for ss commands to fix LTO warnings 2018-08-08 19:59:40 -04:00
r_32to64bit tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
r_32to64bit_expand_full tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
r_32to64bit_meta tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
r_32to64bit_move_itable tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
r_64bit_big_expand tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
r_64to32bit tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
r_64to32bit_meta tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
r_1024_small_bg tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
r_bigalloc_big_expand tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
r_expand_full tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
r_ext4_big_expand tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
r_ext4_small_bg tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
r_fixup_lastbg tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
r_fixup_lastbg_big tests: explicitly force resize2fs's use of lazy (or not) 2018-06-26 09:59:19 -04:00
r_inline_xattr tests: use grep -E for better portability in r_inline_xattr 2020-03-23 21:21:05 -04:00
r_meta_bg_shrink tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
r_min_itable tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
r_move_inode_int_extent tests: move inode and its interior extent tree block 2018-10-20 10:11:21 -04:00
r_move_itable tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
r_move_itable_nostride tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
r_move_itable_realloc tests: explicitly force resize2fs's use of lazy (or not) 2018-06-26 09:59:19 -04:00
r_resize_inode tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
scripts tests: generate test_data.tmp file from a script 2019-01-03 14:10:32 -05:00
t_change_uuid tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
t_change_uuid_mcsum tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
t_change_uuid_mcsum_mounted tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
t_change_uuid_mcsum_seed_mounted tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
t_change_uuid_mounted tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
t_dangerous tune2fs: fix false warning that a UUID change will take a long time 2018-11-23 22:47:08 -05:00
t_disable_changed_csum_seed tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
t_disable_changed_csum_seed_mounted tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
t_disable_csum_seed tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
t_disable_mcsum tests: testcases for enabling/disabling metadata_csum via tune2fs 2014-12-13 21:59:18 -05:00
t_disable_mcsum_noinitbg tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
t_disable_mcsum_yesinitbg tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
t_disable_meta_csum_and_seed tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
t_enable_csum_seed tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
t_enable_mcsum tune2fs: explain why an fsck is needed 2017-08-23 11:20:01 -04:00
t_enable_mcsum_ext3 libext2fs: use fallocate for creating journals and hugefiles 2015-06-10 19:57:52 -04:00
t_enable_mcsum_initbg tune2fs: explain why an fsck is needed 2017-08-23 11:20:01 -04:00
t_ext_jnl_fail tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
t_ext_jnl_rm tests: use make rules to run tests in parallel 2012-05-29 08:41:26 -04:00
t_format_csum_seed tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
t_iexpand_full tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
t_iexpand_mcsum tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
t_mmp_1on libext2fs: don't use O_DIRECT for files on tmpfs 2020-03-07 11:14:02 -05:00
t_mmp_2off tune2fs: reset MMP state on error exit 2020-10-01 16:51:46 -04:00
t_mmp_fail tune2fs: reset MMP state on error exit 2020-10-01 16:51:46 -04:00
t_project_1on tests: don't use "debugfs -f /dev/stdin" 2018-03-31 16:59:48 -04:00
t_project_2off tune2fs: fix BUGs of tuning project quota 2017-05-29 20:41:54 -04:00
t_project_3on tests: don't use "debugfs -f /dev/stdin" 2018-03-31 16:59:48 -04:00
t_project_4off tune2fs: fix BUGs of tuning project quota 2017-05-29 20:41:54 -04:00
t_quota_1on tests: don't use "debugfs -f /dev/stdin" 2017-02-16 11:18:46 -05:00
t_quota_2off quota: fix disabling quota, add quota tests 2013-10-14 09:54:28 -04:00
t_replay_and_set e2fsck: check and fix tails of all bitmap blocks 2019-05-06 10:15:29 -04:00
t_uninit_bg_rm tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
u_compound_bad_rollback tests: test various features of the new e2undo format 2015-05-05 10:42:34 -04:00
u_compound_rollback tests: test undo file creation in e2fsck/resize2fs/tune2fs/mke2fs 2015-05-05 10:42:19 -04:00
u_corrupt_blk_csum tests: test various features of the new e2undo format 2015-05-05 10:42:34 -04:00
u_corrupt_blk_csum_force tests: test various features of the new e2undo format 2015-05-05 10:42:34 -04:00
u_corrupt_hdr_csum tests: test various features of the new e2undo format 2015-05-05 10:42:34 -04:00
u_corrupt_key_csum tests: test various features of the new e2undo format 2015-05-05 10:42:34 -04:00
u_debugfs_opt tests: clean up $DEBUGFS_EXE usage in scripts 2018-06-22 12:31:42 -04:00
u_dryrun tests: test various features of the new e2undo format 2015-05-05 10:42:34 -04:00
u_e2fsck_opt tests: test undo file creation in e2fsck/resize2fs/tune2fs/mke2fs 2015-05-05 10:42:19 -04:00
u_errorout tests: test various features of the new e2undo format 2015-05-05 10:42:34 -04:00
u_force tests: test various features of the new e2undo format 2015-05-05 10:42:34 -04:00
u_force_dryrun tests: test various features of the new e2undo format 2015-05-05 10:42:34 -04:00
u_incomplete tests: test various features of the new e2undo format 2015-05-05 10:42:34 -04:00
u_mke2fs tests: test undo file creation in e2fsck/resize2fs/tune2fs/mke2fs 2015-05-05 10:42:19 -04:00
u_mke2fs_opt tests: test undo file creation in e2fsck/resize2fs/tune2fs/mke2fs 2015-05-05 10:42:19 -04:00
u_mke2fs_opt_oddsize tests: test undo file creation in e2fsck/resize2fs/tune2fs/mke2fs 2015-05-05 10:42:19 -04:00
u_mke2fs_opt_offset Search for GNU-compatible dd for self-tests. 2017-08-29 01:05:58 -04:00
u_not_undo tests: test various features of the new e2undo format 2015-05-05 10:42:34 -04:00
u_offset tests: testcases for the offset handling in e2undo and undo_io.c 2016-05-12 15:26:09 -04:00
u_onefile_bad tests: test various features of the new e2undo format 2015-05-05 10:42:34 -04:00
u_resize2fs_opt tests: test undo file creation in e2fsck/resize2fs/tune2fs/mke2fs 2015-05-05 10:42:19 -04:00
u_revert_64bitmcsum_onefile tests: shorten test descriptions to fit in 80 columns 2017-10-15 16:23:24 -04:00
u_revert_all_onefile tests: shorten test descriptions to fit in 80 columns 2017-10-15 16:23:24 -04:00
u_revert_upgrade_to_64bitmcsum tests: shorten test descriptions to fit in 80 columns 2017-10-15 16:23:24 -04:00
u_tune2fs tests: test undo file creation in e2fsck/resize2fs/tune2fs/mke2fs 2015-05-05 10:42:19 -04:00
u_tune2fs_opt tests: test undo file creation in e2fsck/resize2fs/tune2fs/mke2fs 2015-05-05 10:42:19 -04:00
u_undo_undo tests: test various features of the new e2undo format 2015-05-05 10:42:34 -04:00
u_wrong_fs tests: test various features of the new e2undo format 2015-05-05 10:42:34 -04:00
filter.sed mmp: don't assume NUL termination for MMP strings 2020-01-24 23:06:58 -05:00
Makefile.in tests: generate test_data.tmp file from a script 2019-01-03 14:10:32 -05:00
mke2fs.conf.in mke2fs.conf: remove legacy entry for ext4dev 2017-08-23 11:06:33 -04:00
README Add extra checks for bad symlinks, including zero length symlinks, 2001-08-04 00:51:18 -06:00
run_e2fsck tests: don't run sed multiple times on test output 2018-06-22 17:59:35 -04:00
run_mke2fs tests: remove redundant sed filtering 2018-06-22 14:06:53 -04:00
test_config tests: generate test_data.tmp file from a script 2019-01-03 14:10:32 -05:00
test_one.in test_one: make sure the tmpfile is cleaned up if the test script exits 2018-10-10 22:56:12 -04:00
test_post tests: use make rules to run tests in parallel 2012-05-29 08:41:26 -04:00
test_script.in tests: fix test_script so that it will run all tests if w/o arguments 2019-07-13 17:42:30 -04:00

These images contain various forms of corrupted filesystem which
e2fsck will correct.  They are used as a regression test for e2fsck.

The test_script program will automatically run e2fsck against the
filesystem images.  It will run them two times, and display the exit
status for each run.  The meaning of the exit status codes are as
follows:

	0		No filesystem errors were detected
	1		Filesystem errors detected, but corrected
	2		System should be rebooted
	4		Filesystem errors left uncorrected
	8		Operational error (generally means internal error,
				or filesystem error that the e2fsck was not
				prepared to deal with)
	16		Usage or syntax error

During the regression test, the first exit code should be 1, and the
second exit code should be 0.  In other words, all (with one
exception) of the test filesystems in this directory have some sort of
filesystem corruption, which e2fsck should fix on the first pass.
After the first pass, e2fsck should leave a fully consistent
filesystem with no detectable errors found in the second pass.  The
exception is the okgroup.img filesystem, which contains no errors, and
so both exit codes should be 0.

NOTE: It appears that at least some versions of the original e2fsck do
not exit with an exit status code of 1 after correcting filesystem
errors.  So if you modify the test_script to try running these
filesystems against the original e2fsck, you will have to inspect the
test_script.log file manually.

--------------------------------------------------------------
Here's a one-line descriptons of the various test images in this
directory:

baddir.img		Filesystem with a corrupted directory
badbblocks.img		Filesystem with illegal blocks in the bad block inode.
badinode.img		Filesystem with various different corrupted inode
				entries.
badlkcnt.img		Filesystem with deleted files with non-zero link count
badroot.img		Filesystem with a file for a root directory
badtable.img		Filesystem with blocks shared between the bitmaps and
				inode table blocks and the bad block inode
bbfile.img		Filesystem with files containing bad blocks
bitmaps.img		Filesystem with corrupted inode and block bitmaps
dirlink.img		Filesystem with a hard link to a directory
dup.img			Filesystem with blocks claimed by two different files
dup2.img		Filesystem with blocks claimed by three different files
dupfsblks.img		Filesystem with blocks claimed by a file and
				inode/block bitmaps and inode tables
dupsuper.img		Filesystem with blocks claimed by a file and
				the superblock / group descriptors
end-bitmap.img		Filesystem with corruption at the end of the block 
				bitmap
expand.img		Tests e2fsck's ability to expand lost+found if 
				necessary
lpf.img			Filesystem with disconnected files and no /lost+found 
				directory
mke2fs2b.img		Filesystem with corruption similar to that
				created by mke2fs version 0.2b
noroot.img		Filesystem with a deleted root directory
okgroup.img		Filesystem that's exactly 8193 blocks long 
				(otherwise OK)
overfsblks.img		Filesystem with overlapping inode and block bitmaps
symlinks.img		Filesystem with bad symlink sizes