aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorTheodore Ts'o <tytso@mit.edu>2011-09-28 15:12:55 -0400
committerTheodore Ts'o <tytso@mit.edu>2011-09-28 18:34:33 -0400
commit96a8afa7c134ef9239a70f264c35e709737f42cd (patch)
treea9ae562ae8b7760ac72dc23b0683915c97109b5d /tests
parent20d7949583a7efbf9b93f7e3d47983e10629530e (diff)
downloade2fsprogs-96a8afa7c134ef9239a70f264c35e709737f42cd.tar.gz
e2fsprogs-96a8afa7c134ef9239a70f264c35e709737f42cd.tar.xz
e2fsprogs-96a8afa7c134ef9239a70f264c35e709737f42cd.zip
e2fsck: check for invalid bad block inode
In some cases the bad block inode gets corrupted. If it looks insane, offer to clear it before trying to interpret it does more harm than good. Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Diffstat (limited to 'tests')
-rw-r--r--tests/f_invalid_bad_inode/expect.111
-rw-r--r--tests/f_invalid_bad_inode/expect.27
-rw-r--r--tests/f_invalid_bad_inode/image.gzbin0 -> 623 bytes
-rw-r--r--tests/f_invalid_bad_inode/name1
4 files changed, 19 insertions, 0 deletions
diff --git a/tests/f_invalid_bad_inode/expect.1 b/tests/f_invalid_bad_inode/expect.1
new file mode 100644
index 00000000..5a37cb07
--- /dev/null
+++ b/tests/f_invalid_bad_inode/expect.1
@@ -0,0 +1,11 @@
+Pass 1: Checking inodes, blocks, and sizes
+The bad block inode looks invalid. Clear? yes
+
+Pass 2: Checking directory structure
+Pass 3: Checking directory connectivity
+Pass 4: Checking reference counts
+Pass 5: Checking group summary information
+
+test_filesys: ***** FILE SYSTEM WAS MODIFIED *****
+test_filesys: 11/16 files (0.0% non-contiguous), 21/100 blocks
+Exit status is 1
diff --git a/tests/f_invalid_bad_inode/expect.2 b/tests/f_invalid_bad_inode/expect.2
new file mode 100644
index 00000000..41ceefb4
--- /dev/null
+++ b/tests/f_invalid_bad_inode/expect.2
@@ -0,0 +1,7 @@
+Pass 1: Checking inodes, blocks, and sizes
+Pass 2: Checking directory structure
+Pass 3: Checking directory connectivity
+Pass 4: Checking reference counts
+Pass 5: Checking group summary information
+test_filesys: 11/16 files (0.0% non-contiguous), 21/100 blocks
+Exit status is 0
diff --git a/tests/f_invalid_bad_inode/image.gz b/tests/f_invalid_bad_inode/image.gz
new file mode 100644
index 00000000..5dac1470
--- /dev/null
+++ b/tests/f_invalid_bad_inode/image.gz
Binary files differ
diff --git a/tests/f_invalid_bad_inode/name b/tests/f_invalid_bad_inode/name
new file mode 100644
index 00000000..f981e8d9
--- /dev/null
+++ b/tests/f_invalid_bad_inode/name
@@ -0,0 +1 @@
+check for bogus bad inode