README
1 ==============================================================
2 Test Suite for the Control Group Freezer and Signal Subsystems
3 ==============================================================
4 Author: Matt Helsley
5 Date: June, 2008
6 Last update: January 19th, 2009
7
8 About:
9 ------
10 These tests exercise the freezer and signal subsystems (aka controllers)
11 available since kernel 2.6.28 or later.
12
13 These tests exercise the freezer control group controller. This controller is
14 a useful for implementing container checkpointing or if you wish to gradually
15 freeze tasks in cgroups before doing a suspend.
16
17 The common case is embodied in the freeze_thaw.sh test file. However,
18 the scripts are also designed to test a few obscure cases such as:
19 freeze self -- freeze the control group that the current process is
20 in
21 freeze cancellation -- freeze but then backout of the freeze processing
22 and issue a "thaw" command before reaching the frozen state
23 signalling freezing/frozen tasks -- this should delay delivery of the
24 signal until the task is unfrozen
25 vfork -- The vfork system call introduces an obscure special case for
26 the freezer kernel code. This test case attempts to trigger any
27 unanticipated corner cases involving vfork.
28
29
30 NOTES:
31
32 Using the cgroup freezer prevents the tasks from being automatically
33 woken up upon a "Power Management Resume". You will need to
34 manually unfreeze cgroups.
35
36 These tests assume that most of the library functions in
37 libcgroup_subsys take much less than $sample_sleep time to execute. If
38 this assumption is incorrect then many of these tests may fail in
39 unusual ways. So make sure $sample_sleep is a "reasonable" amount of
40 time.
41
42 Building:
43 ---------
44
45 Run the command line:
46 make all
47
48
49 Installing:
50 -----------
51
52 Run the command line:
53
54
55 Cleaning:
56 ---------
57
58 Run the command line:
59
60 make clean
61
62
63 Running:
64 --------
65
66 Run the command line:
67
68 ./run.sh
69
70 Results:
71 --------
72
73 The results should show up as PASS/FAIL in the LTP logs for each script. The
74 output frequently will be more specific (beyond which test script failed)
75 about where and what failure occurred.
76
77