Whamcloud - gitweb
tests: add basic e2fsck regression test for fixing the quota inode
authorTheodore Ts'o <tytso@mit.edu>
Sun, 11 May 2014 04:01:33 +0000 (00:01 -0400)
committerTheodore Ts'o <tytso@mit.edu>
Tue, 13 May 2014 14:13:26 +0000 (10:13 -0400)
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Reviewed-by: Aditya Kali <adityakali@google.com>
tests/f_quota/debugfs-cmds [new file with mode: 0644]
tests/f_quota/expect.0 [new file with mode: 0644]
tests/f_quota/expect.1 [new file with mode: 0644]
tests/f_quota/expect.2 [new file with mode: 0644]
tests/f_quota/image.gz [new file with mode: 0644]
tests/f_quota/name [new file with mode: 0644]
tests/f_quota/script [new file with mode: 0644]

diff --git a/tests/f_quota/debugfs-cmds b/tests/f_quota/debugfs-cmds
new file mode 100644 (file)
index 0000000..112a3ff
--- /dev/null
@@ -0,0 +1,7 @@
+list_quota user
+list_quota group
+get_quota user 0
+get_quota user 100
+get_quota user 34
+get_quota group 0
+
diff --git a/tests/f_quota/expect.0 b/tests/f_quota/expect.0
new file mode 100644 (file)
index 0000000..c0ad63d
--- /dev/null
@@ -0,0 +1,21 @@
+debugfs: list_quota user
+ user id     blocks    quota    limit      inodes    quota    limit
+       0      13312        0        0           2        0        0
+      34       1024        0        0           1        0        0
+     100       2048       32       50           2       20       30
+debugfs: list_quota group
+group id     blocks    quota    limit      inodes    quota    limit
+       0      16384        0        0           5        0        0
+debugfs: get_quota user 0
+ user id     blocks    quota    limit      inodes    quota    limit
+       0      13312        0        0           2        0        0
+debugfs: get_quota user 100
+ user id     blocks    quota    limit      inodes    quota    limit
+     100       2048       32       50           2       20       30
+debugfs: get_quota user 34
+ user id     blocks    quota    limit      inodes    quota    limit
+      34       1024        0        0           1        0        0
+debugfs: get_quota group 0
+group id     blocks    quota    limit      inodes    quota    limit
+       0      16384        0        0           5        0        0
+debugfs: 
diff --git a/tests/f_quota/expect.1 b/tests/f_quota/expect.1
new file mode 100644 (file)
index 0000000..0b3b4cf
--- /dev/null
@@ -0,0 +1,13 @@
+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
+[QUOTA WARNING] Usage inconsistent for ID 0:actual (13312, 2) != expected (14336, 3)
+[QUOTA WARNING] Usage inconsistent for ID 100:actual (2048, 2) != expected (1024, 1)
+Update quota info for quota type 0? yes
+
+
+test_filesys: ***** FILE SYSTEM WAS MODIFIED *****
+test_filesys: 14/16 files (14.3% non-contiguous), 36/100 blocks
+Exit status is 1
diff --git a/tests/f_quota/expect.2 b/tests/f_quota/expect.2
new file mode 100644 (file)
index 0000000..bfc558d
--- /dev/null
@@ -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: 14/16 files (14.3% non-contiguous), 36/100 blocks
+Exit status is 0
diff --git a/tests/f_quota/image.gz b/tests/f_quota/image.gz
new file mode 100644 (file)
index 0000000..9cea655
Binary files /dev/null and b/tests/f_quota/image.gz differ
diff --git a/tests/f_quota/name b/tests/f_quota/name
new file mode 100644 (file)
index 0000000..27ea8ba
--- /dev/null
@@ -0,0 +1 @@
+fix incorrect usage stats in quota
diff --git a/tests/f_quota/script b/tests/f_quota/script
new file mode 100644 (file)
index 0000000..bf25e07
--- /dev/null
@@ -0,0 +1,4 @@
+AFTER_CMD='$DEBUGFS -f $test_dir/debugfs-cmds $TMPFILE 2>&1 | sed -f $cmd_dir/filter.sed > $test_name.0.log'
+PASS_ZERO=true
+
+. $cmd_dir/run_e2fsck