1 Linux Ftrace Testcases 2 3 This is a collection of testcases for ftrace tracing feature in the Linux 4 kernel. Since ftrace exports interfaces via the debugfs, we just need 5 shell scripts for testing. Feel free to add new test cases. 6 7 Running the ftrace testcases 8 ============================ 9 10 At first, you need to be the root user to run this script. 11 To run all testcases: 12 13 $ sudo ./ftracetest 14 15 To run specific testcases: 16 17 # ./ftracetest test.d/basic3.tc 18 19 Or you can also run testcases under given directory: 20 21 # ./ftracetest test.d/kprobe/ 22 23 Contributing new testcases 24 ========================== 25 26 Copy test.d/template to your testcase (whose filename must have *.tc 27 extension) and rewrite the test description line. 28 29 * The working directory of the script is <debugfs>/tracing/. 30 31 * Take care with side effects as the tests are run with root privilege. 32 33 * The tests should not run for a long period of time (more than 1 min.) 34 These are to be unit tests. 35 36 * You can add a directory for your testcases under test.d/ if needed. 37 38 * The test cases should run on dash (busybox shell) for testing on 39 minimal cross-build environments. 40 41 * Note that the tests are run with "set -e" (errexit) option. If any 42 command fails, the test will be terminated immediately. 43 44 * The tests can return some result codes instead of pass or fail by 45 using exit_unresolved, exit_untested, exit_unsupported and exit_xfail. 46 47 Result code 48 =========== 49 50 Ftracetest supports following result codes. 51 52 * PASS: The test succeeded as expected. The test which exits with 0 is 53 counted as passed test. 54 55 * FAIL: The test failed, but was expected to succeed. The test which exits 56 with !0 is counted as failed test. 57 58 * UNRESOLVED: The test produced unclear or intermidiate results. 59 for example, the test was interrupted 60 or the test depends on a previous test, which failed. 61 or the test was set up incorrectly 62 The test which is in above situation, must call exit_unresolved. 63 64 * UNTESTED: The test was not run, currently just a placeholder. 65 In this case, the test must call exit_untested. 66 67 * UNSUPPORTED: The test failed because of lack of feature. 68 In this case, the test must call exit_unsupported. 69 70 * XFAIL: The test failed, and was expected to fail. 71 To return XFAIL, call exit_xfail from the test. 72 73 There are some sample test scripts for result code under samples/. 74 You can also run samples as below: 75 76 # ./ftracetest samples/ 77 78 TODO 79 ==== 80 81 * Fancy colored output :) 82
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.