1f08c3bdfSopenharmony_ci---------------------------------
2f08c3bdfSopenharmony_ciEnable CODE COVERAGE for your Kernel:
3f08c3bdfSopenharmony_ci---------------------------------
4f08c3bdfSopenharmony_ci1) Apply kernel-gcov patch(s) against the corresponding Kernel. They are available here:
5f08c3bdfSopenharmony_cihttp://ltp.cvs.sourceforge.net/viewvc/ltp/utils/analysis/gcov-kernel/linux-2.*.*-gcov.patch?view=log,
6f08c3bdfSopenharmony_ci2) Also enable the following options in your .config file before building the kernel
7f08c3bdfSopenharmony_ciCONFIG_GCOV_PROFILE=y
8f08c3bdfSopenharmony_ciCONFIG_GCOV_ALL=y
9f08c3bdfSopenharmony_ciCONFIG_GCOV_PROC=m
10f08c3bdfSopenharmony_ciCONFIG_GCOV_HAMMER=y
11f08c3bdfSopenharmony_ci
12f08c3bdfSopenharmony_ci---------------------------------
13f08c3bdfSopenharmony_ciEnabling Kernel Configuration to test Containers/Namespaces
14f08c3bdfSopenharmony_ci---------------------------------
15f08c3bdfSopenharmony_ciCONFIG_NAMESPACES=y
16f08c3bdfSopenharmony_ciCONFIG_UTS_NS=y
17f08c3bdfSopenharmony_ciCONFIG_IPC_NS=y
18f08c3bdfSopenharmony_ciCONFIG_USER_NS=y
19f08c3bdfSopenharmony_ciCONFIG_PID_NS=y
20f08c3bdfSopenharmony_ciCONFIG_NET_NS=y
21f08c3bdfSopenharmony_ciCONFIG_VETH=y
22f08c3bdfSopenharmony_ciCONFIG_MACVLAN=y
23f08c3bdfSopenharmony_ci
24f08c3bdfSopenharmony_ciThe IPC namespaces do not automatically enable IPC, so you may
25f08c3bdfSopenharmony_cialso want to have:
26f08c3bdfSopenharmony_ci
27f08c3bdfSopenharmony_ciCONFIG_SYSVIPC=y
28f08c3bdfSopenharmony_ciCONFIG_SYSVIPC_SYSCTL=y
29f08c3bdfSopenharmony_ciCONFIG_POSIX_MQUEUE=y
30f08c3bdfSopenharmony_ci
31f08c3bdfSopenharmony_ci---------------------------------
32f08c3bdfSopenharmony_ciEnabling Kernel Configuration to test Controllers
33f08c3bdfSopenharmony_ci---------------------------------
34f08c3bdfSopenharmony_ciCONFIG_CGROUPS=y
35f08c3bdfSopenharmony_ciCONFIG_CGROUP_DEBUG=y
36f08c3bdfSopenharmony_ciCONFIG_CGROUP_NS=y
37f08c3bdfSopenharmony_ciCONFIG_GROUP_SCHED=y
38f08c3bdfSopenharmony_ciCONFIG_FAIR_GROUP_SCHED=y
39f08c3bdfSopenharmony_ciCONFIG_RT_GROUP_SCHED=y
40f08c3bdfSopenharmony_ciCONFIG_CGROUP_SCHED=y
41f08c3bdfSopenharmony_ciCONFIG_CGROUP_MEM_RES_CTLR=y
42f08c3bdfSopenharmony_ciCONFIG_LOCKDEP=y
43f08c3bdfSopenharmony_ci---------------------------------
44f08c3bdfSopenharmony_ciEnabling Kernel Configuration to test Power Management features
45f08c3bdfSopenharmony_ci---------------------------------
46f08c3bdfSopenharmony_ciCONFIG_CPU_FREQ=y
47f08c3bdfSopenharmony_ciCONFIG_CPU_FREQ_TABLE=y
48f08c3bdfSopenharmony_ciCONFIG_CPU_FREQ_DEBUG=y
49f08c3bdfSopenharmony_ciCONFIG_CPU_FREQ_STAT=y
50f08c3bdfSopenharmony_ciCONFIG_CPU_FREQ_STAT_DETAILS=y
51f08c3bdfSopenharmony_ciCONFIG_CPU_IDLE=y
52f08c3bdfSopenharmony_ciCONFIG_CPU_IDLE_GOV_LADDER=y
53f08c3bdfSopenharmony_ciCONFIG_CPU_IDLE_GOV_MENU=y
54f08c3bdfSopenharmony_ciCONFIG_SCHED_MC=y
55f08c3bdfSopenharmony_ciCONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
56f08c3bdfSopenharmony_ciCONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE=y
57f08c3bdfSopenharmony_ciCONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE=y
58f08c3bdfSopenharmony_ciCONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y
59f08c3bdfSopenharmony_ciCONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE=y
60f08c3bdfSopenharmony_ciCONFIG_CPU_FREQ_GOV_PERFORMANCE=y
61f08c3bdfSopenharmony_ciCONFIG_CPU_FREQ_GOV_POWERSAVE=y
62f08c3bdfSopenharmony_ciCONFIG_CPU_FREQ_GOV_USERSPACE=y
63f08c3bdfSopenharmony_ciCONFIG_CPU_FREQ_GOV_ONDEMAND=y
64f08c3bdfSopenharmony_ciCONFIG_CPU_FREQ_GOV_CONSERVATIVE=y
65f08c3bdfSopenharmony_ci---------------------------------
66f08c3bdfSopenharmony_ciEnabling Kernel Configuration to test filecaps security feature
67f08c3bdfSopenharmony_ci---------------------------------
68f08c3bdfSopenharmony_ciCONFIG_SECURITY_FILE_CAPABILITIES=y
69f08c3bdfSopenharmony_ci---------------------------------
70f08c3bdfSopenharmony_ciEnabling Kernel Configuration to test SELinux security feature
71f08c3bdfSopenharmony_ci---------------------------------
72f08c3bdfSopenharmony_ciYour Kernel should have been built with the following options to
73f08c3bdfSopenharmony_citest SELinux:
74f08c3bdfSopenharmony_ci
75f08c3bdfSopenharmony_ciCONFIG_SECURITY=y
76f08c3bdfSopenharmony_ciCONFIG_SECURITY_NETWORK=y
77f08c3bdfSopenharmony_ciCONFIG_SECURITY_NETWORK_XFRM=y
78f08c3bdfSopenharmony_ci
79f08c3bdfSopenharmony_ciCONFIG_SECURITY_DEFAULT_MMAP_MIN_ADDR=0
80f08c3bdfSopenharmony_ciThis has to be set to a positive value if you want to test this check.
81f08c3bdfSopenharmony_ciFedora kernels set it to 65536.
82f08c3bdfSopenharmony_ci
83f08c3bdfSopenharmony_ciCONFIG_SECURITY_SELINUX=y
84f08c3bdfSopenharmony_ciCONFIG_SECURITY_SELINUX_BOOTPARAM=y
85f08c3bdfSopenharmony_ciCONFIG_SECURITY_SELINUX_BOOTPARAM_VALUE=1
86f08c3bdfSopenharmony_ciCONFIG_SECURITY_SELINUX_DEVELOP=y
87f08c3bdfSopenharmony_ciCONFIG_SECURITY_SELINUX_AVC_STATS=y
88f08c3bdfSopenharmony_ciCONFIG_SECURITY_SELINUX_CHECKREQPROT_VALUE=1
89f08c3bdfSopenharmony_ciCONFIG_SECURITY_SELINUX_ENABLE_SECMARK_DEFAULT=y
90f08c3bdfSopenharmony_ci
91f08c3bdfSopenharmony_ciCONFIG_SECURITY_SELINUX_POLICYDB_VERSION_MAX=y
92f08c3bdfSopenharmony_ciYou don't want this one unless you are running Fedora 3 or 4.
93f08c3bdfSopenharmony_ciOn anything newer, it will cause unnecessary policy expansion.
94f08c3bdfSopenharmony_ci
95f08c3bdfSopenharmony_ciCONFIG_SECURITY_SMACK=y
96f08c3bdfSopenharmony_ciCONFIG_SECURITY_SELINUX=y
97f08c3bdfSopenharmony_ci
98f08c3bdfSopenharmony_ciBy default, if you boot with multiple LSMs compiled into the kernel, the
99f08c3bdfSopenharmony_cikernel won't boot succesfully - there can be only one (aside from
100f08c3bdfSopenharmony_ciexplicit internal "stacking" e.g. as is done for combining SELinux or
101f08c3bdfSopenharmony_ciSmack with capabilities).  Unless you use the security= option to select
102f08c3bdfSopenharmony_cione at boot.  SELinux and Smack will honor the security= option.
103f08c3bdfSopenharmony_ci---------------------------------
104f08c3bdfSopenharmony_ci---------------------------------
105f08c3bdfSopenharmony_ciEnabling Kernel Configuration to test SMACK security feature
106f08c3bdfSopenharmony_ci---------------------------------
107f08c3bdfSopenharmony_ciCONFIG_NETLABEL=y
108f08c3bdfSopenharmony_ciCONFIG_SECURITY=y
109f08c3bdfSopenharmony_ciCONFIG_SECURITY_NETWORK=y
110f08c3bdfSopenharmony_ciCONFIG_SECURITY_SMACK=y
111f08c3bdfSopenharmony_ciCONFIG_SECURITY_SELINUX should not be set
112f08c3bdfSopenharmony_ci
113f08c3bdfSopenharmony_ciFor more information to build/install/run these tests, look through:
114f08c3bdfSopenharmony_ciltp/testcases/kernel/security/smack/README
115f08c3bdfSopenharmony_ci---------------------------------
116f08c3bdfSopenharmony_ci---------------------------------
117f08c3bdfSopenharmony_ciEnablement for Enhancement to kexec/kdump for implementing the following features:
118f08c3bdfSopenharmony_ci- Backup/restore memory used by the original kernel before/after kexec.
119f08c3bdfSopenharmony_ci- Save/restore CPU state before/after kexec.
120f08c3bdfSopenharmony_ciNow, only the i386 architecture is supported. More from the following git logs:
121f08c3bdfSopenharmony_cihttp://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3ab83521378268044a448113c6aa9a9e245f4d2f,
122f08c3bdfSopenharmony_cihttp://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=89081d17f7bb81d89fa1aa9b70f821c5cf4d39e9,
123f08c3bdfSopenharmony_ci---------------------------------
124f08c3bdfSopenharmony_ciCONFIG_X86_32=y
125f08c3bdfSopenharmony_ciCONFIG_RELOCATABLE=y
126f08c3bdfSopenharmony_ciCONFIG_KEXEC=y
127f08c3bdfSopenharmony_ciCONFIG_CRASH_DUMP=y
128f08c3bdfSopenharmony_ciCONFIG_PM=y
129f08c3bdfSopenharmony_ciCONFIG_HIBERNATION=y
130f08c3bdfSopenharmony_ciCONFIG_KEXEC_JUMP=y
131f08c3bdfSopenharmony_ci---------------------------------
132f08c3bdfSopenharmony_ciEnabling HOTPLUG for your Kernels
133f08c3bdfSopenharmony_ci---------------------------------
134f08c3bdfSopenharmony_ciCONFIG_HOTPLUG=y
135f08c3bdfSopenharmony_ciCONFIG_HOTPLUG_CPU=y
136f08c3bdfSopenharmony_ciCONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
137f08c3bdfSopenharmony_ciCONFIG_ACPI_HOTPLUG_CPU=y
138f08c3bdfSopenharmony_ciCONFIG_HOTPLUG_PCI_PCIE=y
139f08c3bdfSopenharmony_ciCONFIG_HOTPLUG_PCI=y
140f08c3bdfSopenharmony_ciCONFIG_HOTPLUG_PCI_FAKE=y
141f08c3bdfSopenharmony_ciCONFIG_HOTPLUG_PCI_COMPAQ=y
142f08c3bdfSopenharmony_ciCONFIG_HOTPLUG_PCI_COMPAQ_NVRAM=y
143f08c3bdfSopenharmony_ciCONFIG_HOTPLUG_PCI_IBM=y
144f08c3bdfSopenharmony_ciCONFIG_HOTPLUG_PCI_ACPI=y
145f08c3bdfSopenharmony_ciCONFIG_HOTPLUG_PCI_ACPI_IBM=y
146f08c3bdfSopenharmony_ciCONFIG_HOTPLUG_PCI_CPCI=y
147f08c3bdfSopenharmony_ciCONFIG_HOTPLUG_PCI_CPCI_ZT5550=y
148f08c3bdfSopenharmony_ciCONFIG_HOTPLUG_PCI_CPCI_GENERIC=y
149f08c3bdfSopenharmony_ciCONFIG_HOTPLUG_PCI_SHPC=y
150f08c3bdfSopenharmony_ci---------------------------------
151f08c3bdfSopenharmony_ciVideo For Linux Two API testing Requirements:
152f08c3bdfSopenharmony_ciYou need to have a video device (i.e. webcam, tuner card, etc.) connected to your system and available under /dev/video0. If you don't have any hardware device available, you can still test the "Virtual Video Driver". To compile this you need to compile your kernel with CONFIG_VIDEO_VIVI=m under:
153f08c3bdfSopenharmony_ci  -> Device Drivers
154f08c3bdfSopenharmony_ci    -> Multimedia devices
155f08c3bdfSopenharmony_ci      -> Video For Linux
156f08c3bdfSopenharmony_ci        -> Video capture adapters
157f08c3bdfSopenharmony_ci         -> Virtual Video Driver
158f08c3bdfSopenharmony_ci
159f08c3bdfSopenharmony_ciThe tests also require CUnit Framework to be installed before compiling the tests. Download & Install the same from:
160f08c3bdfSopenharmony_cihttp://sourceforge.net/projects/cunit/
161f08c3bdfSopenharmony_ci---------------------------------
162f08c3bdfSopenharmony_ci---------------------------------
163f08c3bdfSopenharmony_ciNative language support (nls) testsuite requirements
164f08c3bdfSopenharmony_ci----------------------------------------------------
165f08c3bdfSopenharmony_ciCONFIG_NLS=m
166f08c3bdfSopenharmony_ciCONFIG_BLOCK=y
167f08c3bdfSopenharmony_ci---------------------------------
168f08c3bdfSopenharmony_ciEnabling Controller area network (CAN) protocol support for your Kernels
169f08c3bdfSopenharmony_ci---------------------------------
170f08c3bdfSopenharmony_ciCONFIG_NET=y
171f08c3bdfSopenharmony_ciCONFIG_CAN=m
172f08c3bdfSopenharmony_ciCONFIG_CAN_RAW=m
173f08c3bdfSopenharmony_ciCONFIG_CAN_BCM=m
174f08c3bdfSopenharmony_ci# CAN Device Drivers
175f08c3bdfSopenharmony_ciCONFIG_CAN_VCAN=m
176f08c3bdfSopenharmony_ci---------------------------------
177f08c3bdfSopenharmony_ciEnabling Fault Injection Support for your kernel (version 2.6.29).
178f08c3bdfSopenharmony_ciPlease check with the original kernel for the fault injection
179f08c3bdfSopenharmony_citypes it supports. Following supports will be available:
180f08c3bdfSopenharmony_ci
181f08c3bdfSopenharmony_ci/sys/kernel/debug/fail_io_timeout/interval
182f08c3bdfSopenharmony_ci/sys/kernel/debug/fail_io_timeout/probability
183f08c3bdfSopenharmony_ci/sys/kernel/debug/fail_io_timeout/reject-end
184f08c3bdfSopenharmony_ci/sys/kernel/debug/fail_io_timeout/reject-start
185f08c3bdfSopenharmony_ci/sys/kernel/debug/fail_io_timeout/require-end
186f08c3bdfSopenharmony_ci/sys/kernel/debug/fail_io_timeout/require-start
187f08c3bdfSopenharmony_ci/sys/kernel/debug/fail_io_timeout/space
188f08c3bdfSopenharmony_ci/sys/kernel/debug/fail_io_timeout/stacktrace-depth
189f08c3bdfSopenharmony_ci/sys/kernel/debug/fail_io_timeout/task-filter
190f08c3bdfSopenharmony_ci/sys/kernel/debug/fail_io_timeout/times
191f08c3bdfSopenharmony_ci/sys/kernel/debug/fail_io_timeout/verbose
192f08c3bdfSopenharmony_ci
193f08c3bdfSopenharmony_ci/sys/kernel/debug/fail_make_request/interval
194f08c3bdfSopenharmony_ci/sys/kernel/debug/fail_make_request/probability
195f08c3bdfSopenharmony_ci/sys/kernel/debug/fail_make_request/reject-end
196f08c3bdfSopenharmony_ci/sys/kernel/debug/fail_make_request/reject-start
197f08c3bdfSopenharmony_ci/sys/kernel/debug/fail_make_request/require-end
198f08c3bdfSopenharmony_ci/sys/kernel/debug/fail_make_request/require-start
199f08c3bdfSopenharmony_ci/sys/kernel/debug/fail_make_request/space
200f08c3bdfSopenharmony_ci/sys/kernel/debug/fail_make_request/stacktrace-depth
201f08c3bdfSopenharmony_ci/sys/kernel/debug/fail_make_request/task-filter
202f08c3bdfSopenharmony_ci/sys/kernel/debug/fail_make_request/times
203f08c3bdfSopenharmony_ci/sys/kernel/debug/fail_make_request/verbose
204f08c3bdfSopenharmony_ci
205f08c3bdfSopenharmony_ci/sys/kernel/debug/fail_page_alloc/ignore-gfp-highmem
206f08c3bdfSopenharmony_ci/sys/kernel/debug/fail_page_alloc/ignore-gfp-wait
207f08c3bdfSopenharmony_ci/sys/kernel/debug/fail_page_alloc/interval
208f08c3bdfSopenharmony_ci/sys/kernel/debug/fail_page_alloc/min-order
209f08c3bdfSopenharmony_ci/sys/kernel/debug/fail_page_alloc/probability
210f08c3bdfSopenharmony_ci/sys/kernel/debug/fail_page_alloc/reject-end
211f08c3bdfSopenharmony_ci/sys/kernel/debug/fail_page_alloc/reject-start
212f08c3bdfSopenharmony_ci/sys/kernel/debug/fail_page_alloc/require-end
213f08c3bdfSopenharmony_ci/sys/kernel/debug/fail_page_alloc/require-start
214f08c3bdfSopenharmony_ci/sys/kernel/debug/fail_page_alloc/space
215f08c3bdfSopenharmony_ci/sys/kernel/debug/fail_page_alloc/stacktrace-depth
216f08c3bdfSopenharmony_ci/sys/kernel/debug/fail_page_alloc/task-filter
217f08c3bdfSopenharmony_ci/sys/kernel/debug/fail_page_alloc/times
218f08c3bdfSopenharmony_ci/sys/kernel/debug/fail_page_alloc/verbose
219f08c3bdfSopenharmony_ci
220f08c3bdfSopenharmony_ci/sys/kernel/debug/failslab/ignore-gfp-wait
221f08c3bdfSopenharmony_ci/sys/kernel/debug/failslab/interval
222f08c3bdfSopenharmony_ci/sys/kernel/debug/failslab/probability
223f08c3bdfSopenharmony_ci/sys/kernel/debug/failslab/reject-end
224f08c3bdfSopenharmony_ci/sys/kernel/debug/failslab/reject-start
225f08c3bdfSopenharmony_ci/sys/kernel/debug/failslab/require-end
226f08c3bdfSopenharmony_ci/sys/kernel/debug/failslab/require-start
227f08c3bdfSopenharmony_ci/sys/kernel/debug/failslab/space
228f08c3bdfSopenharmony_ci/sys/kernel/debug/failslab/stacktrace-depth
229f08c3bdfSopenharmony_ci/sys/kernel/debug/failslab/task-filter
230f08c3bdfSopenharmony_ci/sys/kernel/debug/failslab/times
231f08c3bdfSopenharmony_ci/sys/kernel/debug/failslab/verbose
232f08c3bdfSopenharmony_ci
233f08c3bdfSopenharmony_ciwhen the below kernel config options are set:
234f08c3bdfSopenharmony_ci
235f08c3bdfSopenharmony_ciCONFIG_FAULT_INJECTION=y
236f08c3bdfSopenharmony_ciCONFIG_DEBUG_KERNEL=y
237f08c3bdfSopenharmony_ciCONFIG_FAILSLAB=y (Fault-injection capability for kmalloc)
238f08c3bdfSopenharmony_ci(CONFIG_SLAB=y || CONFIG_SLUB=y) if CONFIG_FAILSLAB=y
239f08c3bdfSopenharmony_ciCONFIG_FAIL_PAGE_ALLOC=y (Fault-injection capabilitiy for alloc_pages())
240f08c3bdfSopenharmony_ciCONFIG_FAIL_MAKE_REQUEST=y (Fault-injection capability for disk IO)
241f08c3bdfSopenharmony_ciCONFIG_BLOCK=y if CONFIG_FAIL_MAKE_REQUEST=y
242f08c3bdfSopenharmony_ciCONFIG_FAIL_IO_TIMEOUT=y (Faul-injection capability for faking disk interrupts)
243f08c3bdfSopenharmony_ciCONFIG_BLOCK=y if CONFIG_FAIL_IO_TIMEOUT=y
244f08c3bdfSopenharmony_ciCONFIG_FAULT_INJECTION_DEBUG_FS=y (Debugfs entries for fault-injection capabilities)
245f08c3bdfSopenharmony_ci(CONFIG_SYSFS=y && CONFIG_DEBUG_FS=y) if CONFIG_FAULT_INJECTION_DEBUG_FS=y
246f08c3bdfSopenharmony_ciCONFIG_FAULT_INJECTION_STACKTRACE_FILTER=y (stacktrace filter for fault-injection capabilities)
247f08c3bdfSopenharmony_ci(CONFIG_FAULT_INJECTION_DEBUG_FS=y && CONFIG_STACKTRACE_SUPPORT=y && !CONFIG_X86_64) if
248f08c3bdfSopenharmony_ci	CONFIG_FAULT_INJECTION_STACKTRACE_FILTER=y
249f08c3bdfSopenharmony_ci
250f08c3bdfSopenharmony_ciFor more information on Fault injection, please refer to:
251f08c3bdfSopenharmony_cilinux-2.6/Documentation/fault-injection/fault-injection.txt,
252f08c3bdfSopenharmony_ci
253f08c3bdfSopenharmony_ciYou should also have made the following entries in your /etc/fstab file
254f08c3bdfSopenharmony_cionce the kernel is booted with the above CONFIG options set:
255f08c3bdfSopenharmony_ci
256f08c3bdfSopenharmony_cidebugfs		/sys/kernel/debug/		debugfs
257f08c3bdfSopenharmony_ci
258f08c3bdfSopenharmony_ci# How the Kernel Fault Injection works for LTP ?
259f08c3bdfSopenharmony_ci
260f08c3bdfSopenharmony_ci1) Build Kernel with all the above possible kernel CONFIG Options,
261f08c3bdfSopenharmony_ci2) Create the above entry in /etc/fstab file,
262f08c3bdfSopenharmony_ci3) Reboot in the new kernel,
263f08c3bdfSopenharmony_ci4) Goto LTPROOT. Build and Install LTP as per ltp/INSTALL file,
264f08c3bdfSopenharmony_ci5) Choose your own test(or default) to run with fault injection as follows:
265f08c3bdfSopenharmony_ci	./runltp -f <command_file> -F <LOOPS>,<FAULT_PROBABILITY>
266f08c3bdfSopenharmony_ci
267f08c3bdfSopenharmony_ciThe algorithm functions like:
268f08c3bdfSopenharmony_ciloop (for each testcase)
269f08c3bdfSopenharmony_cibegin
270f08c3bdfSopenharmony_ci	execute_testcase(inside_stable_kernel)
271f08c3bdfSopenharmony_ci	begin
272f08c3bdfSopenharmony_ci		insert_fault_into_kernel()
273f08c3bdfSopenharmony_ci		loop X Times
274f08c3bdfSopenharmony_ci		begin
275f08c3bdfSopenharmony_ci			execute_testcase(inside_fault_kernel)
276f08c3bdfSopenharmony_ci		end
277f08c3bdfSopenharmony_ci		restore_kernel_to_normal()
278f08c3bdfSopenharmony_ci	end
279f08c3bdfSopenharmony_ciend
280f08c3bdfSopenharmony_ci
281f08c3bdfSopenharmony_ci# External TODOs:
282f08c3bdfSopenharmony_ci1) Add or modify testcases when relevant kernel functionality changes.
283f08c3bdfSopenharmony_ci---------------------------------
284f08c3bdfSopenharmony_ci
285f08c3bdfSopenharmony_ci---------------------------------
286f08c3bdfSopenharmony_ciEnabling Kernel Configuration to test ext4 new features
287f08c3bdfSopenharmony_ci---------------------------------
288f08c3bdfSopenharmony_ciCONFIG_EXT4_FS=y
289f08c3bdfSopenharmony_ciCONFIG_EXT4DEV_COMPAT=y
290f08c3bdfSopenharmony_ciCONFIG_EXT4_FS_XATTR=y
291f08c3bdfSopenharmony_ciCONFIG_EXT4_FS_POSIX_ACL=y
292f08c3bdfSopenharmony_ciCONFIG_EXT4_FS_SECURITY=y
293f08c3bdfSopenharmony_ci
294f08c3bdfSopenharmony_ciBeside that, the following packages are necessary.
295f08c3bdfSopenharmony_ci  e2fsprogs
296f08c3bdfSopenharmony_ci  e2fsprogs-devel
297f08c3bdfSopenharmony_ci  e2fsprogs-libs
298f08c3bdfSopenharmony_ciAnd the version of packages must be 1.41.4 or above.
299f08c3bdfSopenharmony_ci
300f08c3bdfSopenharmony_ciFor more information to build/install/run these tests, look through:
301f08c3bdfSopenharmony_ciltp/testcases/kernel/fs/ext4-new-features/README
302f08c3bdfSopenharmony_ci---------------------------------
303