README
1 TEST SUITE:
2
3 The directory ext4-new-features contains the tests related to the ext4
4 filesystem's new features.
5
6 Ext4 is an advanced level of the ext3 filesystem which incorporates scalability
7 and reliability enhancements for supporting large filesystems(64 bit) in keeping
8 with increasing disk capacities and state-of-the-art feature requirements. More
9 extensive information of ext4 can be found at the ext4 wiki site at the URL:
10 http://ext4.wiki.kernel.org
11
12 There are total 117 testcases for ext4 new features test that have been added.
13 Now, these testcases can test multi-block alloc/delayed alloc, inode version
14 field on disk, journal checksumming, nanosec timestamps, online defrag, persist
15 prealloc, subdirectory limit and uninit groups of ext4.
16 The detail information of ext4 new features can be found at the URL:
17 http://ext4.wiki.kernel.org/index.php/New_ext4_features
18
19
20 TESTS AIM:
21
22 The aim of the tests is to test ext4 new features.
23
24
25 TEST STEPS:
26 # cd LTPROOT/testcases/kernel/fs/ext4-new-features
27 # make
28 # make install
29 # cd LTPROOT
30 # ./runltp -f fs_ext4 -z 'big unmounted block device partition'
31
32
33 NOTE:
34
35 1. This test can be run by root only.
36
37 2. These tests need a big unmounted block device partition. You MUST run runltp
38 with "-z" option to specify such a big block device, if not, these tests
39 will exit with TCONF.
40
41 Be CAREFUL the data on the specified partition would be DESTROYED.
42
43 The recommended size of partition is between 5G and 10G. If the partition is
44 too big, the test will run for a long time, which is unnecessary.
45
46 3. Before starting test ext4 new features, please check whether ext4 filesystem
47 is compiled into the kernel or not, and the kernel version is *2.6.31* or
48 above.
49
50 4. A snapshot of config file options is given below:
51 ONFIG_EXT4_FS=y
52 CONFIG_EXT4DEV_COMPAT=y
53 CONFIG_EXT4_FS_XATTR=y
54 CONFIG_EXT4_FS_POSIX_ACL=y
55 CONFIG_EXT4_FS_SECURITY=y
56
57 5. Beside that, the following packages are necessary:
58 e2fsprogs
59 (http://www.rpmfind.net/linux/rpm2html/search.php?query=e2fsprogs)
60 e2fsprogs-devel
61 (http://www.rpmfind.net/linux/rpm2html/search.php?query=e2fsprogs-devel)
62 e2fsprogs-libs
63 (http://www.rpmfind.net/linux/rpm2html/search.php?query=e2fsprogs-libs)
64 and the version of these packages should be 1.41.4 or above, otherwise the
65 test will fail.
66
67
68 FILES DESCRIPTION:
69
70 ext4-delalloc-mballoc
71 ---------------------
72 Directory containing the shell script which is used to test multi-block
73 allocation and delayed allocation of ext4.
74
75 ext4-ffsb-config
76 ----------------
77 Directory containing the config of ffsb for test.
78
79 ext4-inode-version
80 ------------------
81 Directory containing the shell script which is used to test inode version field
82 on disk of ext4.
83
84 ext4-journal-checksum
85 ---------------------
86 Directory containing the shell script which is used to test journal checksumming
87 of ext4.
88
89 ext4-nsec-timestamps
90 --------------------
91 Directory containing the shell script which is used to test nanosec timestamps
92 of ext4.
93
94 ext4-online-defrag
95 ------------------
96 Directory containing the shell script which is used to test online defrag
97 feature of ext4.
98
99 ext4-persist-prealloc
100 ---------------------
101 Directory containing the shell script which is used to test persist prealloc
102 feature of ext4.
103
104 ext4-subdir-limit
105 -----------------
106 Directory containing the shell script which is used to test subdirectory limit
107 of ext4. According to the kernel documentation, we create more than 32000
108 subdirectorys on the ext4 filesystem.
109
110 ext4-uninit-groups
111 ------------------
112 Directory containing the shell script which is used to test uninitialized groups
113 feature of ext4.
114
115 ext4_funcs.sh
116 -------------
117 This script contains some functions for ext4 new features test script.
118 such as: ext4_setup, ext4_cleanup
119
120 Makefile
121 --------
122 Each directory in this directory has its usual makefile, it is for its
123 directory.
124
125 README
126 ------
127 The one you have gone through.
128