Don't include audit-tests in the source, because it is an external piece of software...
[ltp-debian.git] / README
blob16558ae5e3fb2a58077870f131be3bf10121518c
1 Linux Test Project
2 (Maintained by: Subrata Modak<subrata@linux.vnet.ibm.com>)
4 The latest image is always available at http://ltp.sf.net
7 About the Linux Test Project
9 The Linux Test Project is a joint project with SGI, IBM, OSDL, and Bull with a
10 goal to deliver test suites to the open source community that validate the
11 reliability, robustness, and stability of Linux. The Linux Test Project is a
12 collection of tools for testing the Linux kernel and related features. Our goal
13 is to improve the Linux kernel by bringing test automation to the kernel testing
14 effort. Interested open source contributors are encouraged to join the project.
17 In the Package
18 --------------
19 Here is a short description of what is included in this package
21 INSTALL
22         Installation documentation and quick start guide
24 README
25         This document
27 CREDITS
28         Credits to those who have contributed to the project.
30 COPYING
31                  GNU General Public License
33 ChangeLog
34         An incomplete list of changes to the project.  We will try harder to
35         keep this up to date.
37 Makefile
38                  Top level make file for LTP.
40 runalltests.sh
41         A simple script to run all of the packaged tests in sequential order and
42                  report the overall result.
44 diskio.sh
45         A simple script to run all the diskio tests that pertain to the CD-ROM
46         and floppy disk file systems.
48 networktests.sh
49         A simple script to run all the network related tests that require
50         another remote machine.
52 doc/*
53         Documentation for the project including man pages for some of the
54         tools & library functions, as well as descriptions of every test.
57 include/*
58 lib/*
59         The include and lib directories contain headers and codes for common
60         routines used by many of the tests.  We have tried to keep this to a
61                  minimum.
63 testcases/*
64         Contains all tests that run under the LTP as well as the "bin"
65                  directory, which has hardlinks to all the test executables.
67 runtest/*
68         It houses command lists that are used by pan for automated testing.
70 pan/*
71         The pan directory contains a simple, lightweight test harness.  pan
72         has the ability to run tests randomly and in parallel.  See pan's man
73         page for more information.
75 scratch/*
76         The scratch directory is a dumping ground for snippets and test cases
77         that we found but haven't integrated into LTP yet.  Feel free to suggest
78         new snippets to be added, or take one of these and finish it off.
80 testcases/kernel/containers/*
81         Contains all the testcases related to container functionality ( e.g: sysvipc, utsname etc..)
82         For further information on the each of the container functionality refer
83         the following file: testcases/kernel/containers/README
86 Warning!
87 --------
88 Be careful with these tests!
90 Don't run them on production systems.  Growfiles, doio, and iogen in particular
91 stress the I/O capabilities of systems and while they should not cause problems
92 on properly functioning systems, they are intended to find (or cause) problems.
95 Contact Information and Updates
96 -------------------------------
98 URL: http://ltp.sf.net
100 Questions and comments should be sent to the LTP mailing list located on the
101 project page.
103 Using KDUMP test automation suite
104 ---------------------------------
105 For more information on how to use the kdump test automation suite please refer
106 to file testcases/kdump/README.
108 Using NUMA test automation suite
109 ---------------------------------
110 For more information on how to use the 'numa' test automation suite please refer
111 to file testcases/kernel/numa/README.
113 ---------------------------------
114 Enable CODE COVERAGE for your Kernel:
115 ---------------------------------
116 1) Apply kernel-gcov patch(s) against the corresponding Kernel. They are available here:
117 http://ltp.cvs.sourceforge.net/viewvc/ltp/utils/analysis/gcov-kernel/linux-2.*.*-gcov.patch?view=log,
118 2) Also enable the following options in your .config file before building the kernel
119 CONFIG_GCOV_PROFILE=y
120 CONFIG_GCOV_ALL=y
121 CONFIG_GCOV_PROC=m
122 CONFIG_GCOV_HAMMER=y
124 ---------------------------------
125 Enabling Kernel Configuration to test Containers/Namespaces
126 ---------------------------------
127 CONFIG_NAMESPACES=y
128 CONFIG_UTS_NS=y
129 CONFIG_IPC_NS=y
130 CONFIG_USER_NS=y
131 CONFIG_PID_NS=y
132 CONFIG_NET_NS=y
133 CONFIG_VETH=y
134 CONFIG_MACVLAN=y
137 ---------------------------------
138 Enabling Kernel Configuration to test Controllers
139 ---------------------------------
140 CONFIG_CGROUPS=y
141 CONFIG_CGROUP_DEBUG=y
142 CONFIG_CGROUP_NS=y
143 CONFIG_GROUP_SCHED=y
144 CONFIG_FAIR_GROUP_SCHED=y
145 CONFIG_RT_GROUP_SCHED=y
146 CONFIG_CGROUP_SCHED=y
147 CGROUP_MEM_RES_CTLR=y
148 ---------------------------------
149 Enabling Kernel Configuration to test Power Management features
150 ---------------------------------
151 CONFIG_CPU_FREQ=y
152 CONFIG_CPU_FREQ_TABLE=y
153 CONFIG_CPU_FREQ_DEBUG=y
154 CONFIG_CPU_FREQ_STAT=y
155 CONFIG_CPU_FREQ_STAT_DETAILS=y
156 CONFIG_CPU_IDLE=y
157 CONFIG_CPU_IDLE_GOV_LADDER=y
158 CONFIG_CPU_IDLE_GOV_MENU=y
159 CONFIG_SCHED_MC=y
160 CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
161 CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE=y
162 CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE=y
163 CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y
164 CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE=y
165 CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
166 CONFIG_CPU_FREQ_GOV_POWERSAVE=y
167 CONFIG_CPU_FREQ_GOV_USERSPACE=y
168 CONFIG_CPU_FREQ_GOV_ONDEMAND=y
169 CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y
170 ---------------------------------
171 Enabling Kernel Configuration to test filecaps security feature
172 ---------------------------------
173 CONFIG_SECURITY_CAPABILITIES=y
174 ---------------------------------
175 Enabling Kernel Configuration to test SELinux security feature
176 ---------------------------------
177 Your Kernel should have been built with the following options to
178 test SELinux:
180 CONFIG_SECURITY=y
181 CONFIG_SECURITY_NETWORK=y
182 CONFIG_SECURITY_NETWORK_XFRM=y
183 CONFIG_SECURITY_FILE_CAPABILITIES=y
185 CONFIG_SECURITY_DEFAULT_MMAP_MIN_ADDR=0
186 This has to be set to a positive value if you want to test this check.
187 Fedora kernels set it to 65536.
189 CONFIG_SECURITY_SELINUX=y
190 CONFIG_SECURITY_SELINUX_BOOTPARAM=y
191 CONFIG_SECURITY_SELINUX_BOOTPARAM_VALUE=1
192 CONFIG_SECURITY_SELINUX_DEVELOP=y
193 CONFIG_SECURITY_SELINUX_AVC_STATS=y
194 CONFIG_SECURITY_SELINUX_CHECKREQPROT_VALUE=1
195 CONFIG_SECURITY_SELINUX_ENABLE_SECMARK_DEFAULT=y
197 CONFIG_SECURITY_SELINUX_POLICYDB_VERSION_MAX=y
198 You don't want this one unless you are running Fedora 3 or 4.  
199 On anything newer, it will cause unnecessary policy expansion.
201 CONFIG_SECURITY_SMACK=y
202 CONFIG_SECURITY_SELINUX=y
204 By default, if you boot with multiple LSMs compiled into the kernel, the
205 kernel won't boot succesfully - there can be only one (aside from
206 explicit internal "stacking" e.g. as is done for combining SELinux or
207 Smack with capabilities).  Unless you use the security= option to select
208 one at boot.  SELinux and Smack will honor the security= option.
209 ---------------------------------
210 Enablement for Enhancement to kexec/kdump for implementing the following features:
211 - Backup/restore memory used by the original kernel before/after kexec.
212 - Save/restore CPU state before/after kexec.
213 Now, only the i386 architecture is supported. More from the following git logs:
214 http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3ab83521378268044a448113c6aa9a9e245f4d2f,
215 http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=89081d17f7bb81d89fa1aa9b70f821c5cf4d39e9,
216 ---------------------------------
217 CONFIG_X86_32=y
218 CONFIG_RELOCATABLE=y
219 CONFIG_KEXEC=y
220 CONFIG_CRASH_DUMP=y
221 CONFIG_PM=y
222 CONFIG_HIBERNATION=y
223 CONFIG_KEXEC_JUMP=y
224 ---------------------------------
225 ---------------------------------