• Home
Name Date Size #Lines LOC

..--

erst-inj/12-May-2024-502387

kinclude/12-May-2024-7346

MakefileD12-May-20241.5 KiB7649

READMED12-May-20242 KiB6041

erst-inject.shD12-May-20242.9 KiB10951

hugepage.hD12-May-20244.2 KiB199167

random_offlineD12-May-20243.1 KiB157113

run-huge-test.shD12-May-20244.9 KiB169143

run-transhuge-test.shD12-May-20242.1 KiB9866

tcases.cD12-May-20241.8 KiB10274

thugetlb.cD12-May-20247.3 KiB322272

tinjpage.cD12-May-202421 KiB970774

tkillpoison.cD12-May-2024439 2218

tprctl.cD12-May-20242.3 KiB9780

tring.cD12-May-20241.6 KiB8867

tsimpleinj.cD12-May-20243.6 KiB166134

tsoft.cD12-May-2024519 3019

tsoftinj.cD12-May-20244.8 KiB200159

ttable.cD12-May-20245.5 KiB261217

ttranshuge.cD12-May-202410.7 KiB433260

utils.hD12-May-202434 21

README

1These are some standalone test programs for various parts of the
2machine check code:
3
4They can be all tested together by running "make test"
5This requires root rights and a kernel with soft offlining and hard
6offlining support.
7
8To use ttable and tcases you need to specify a linux source tree
9with the mce improvements patchkit added with make LSRC=/path/to/linux
10or symlink the linux tree to ../linux
11
12The programs requiring kernel sources are not in the all make target.
13If you want to build them use make requireskernel after you
14set up the kernel sources or specified LSRC.
15
16tcases
17
18Simple tester of a few test cases by running the machine check grader code
19in user space. This is an alternative to the more complete coverage
20in the main mce-test test cases.
21
22Doesn't aim to be complete, but more a quick sanity check, that
23can be done without booting a kernel.
24
25ttable
26
27Generate a table of the output of the machine check grader. This gives
28an overview how all the status bits in the machine check architecture
29are processed. Note that a few bits are tested outside the grader
30and this doesn't apply to corrected machine check interrupts.
31
32Use make see to render the output  using links -g (note this doesn't work
33with elinks as it is used on many distributions, in this case specify
34a different browser with make BROWSER=browserbinary see)
35
36tinjpage
37
38tinjpage is a coverage test for the hwpoison page recovery code
39in the kernel. It tests different cases by putting pages
40into different stages, triggering poison injection on them
41and verifies the results.
42
43tinjpage requires a kernel with MADV_POISON injection support and the
44hwpoison testkit, but doesn't require a kernel tree and can be built directly with
45make tinjpage
46
47A few of the test cases are timing dependent and might require adjustment
48to run successfully.
49
50tinjpage-working
51
52Old version of tinjpage that tests much less cases, but might be more reliable.
53
54tring
55
56Old unit test program for the ring buffer used in mca recovery.
57Not in default Makefile target.
58
59-Andi Kleen
60