linux/tools/testing/selftests
Linus Torvalds c32809521d Updates for the ftrace self tests:
o Added kprobes on ftrace testcase
  o Sort test cases
  o Add file to hold helper functions
  o Use logfile name supported by busybox's mktemp
  o Clear trace buffer after running kprobe test
  o Fix show descriptions when run on dash shell
  o Add --verbose option for showing echo output
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEcBAABAgAGBQJUhbSvAAoJEEjnJuOKh9ldB84H+gNuE2PPvsxmgSxFP0bdo+Uw
 k/8C2QBU6xLXZFZvqXnH7P0gLP2OIjpOBOTKt+yjkB/Elm+XnMVV1Xy+k7VLBiMD
 g+DRoIcpJL2dOy/D8t/P4SjVNXt4Btwxf/tCTabbubLc+aBmvkEG4DL2Vk/Xl5+Y
 XH1dBgYvI9irAxgnYpBnPlN7WIWg1+WCshdOtqkNGRuyJ1G9gn0VlxGmNF7B+0ye
 cjFj19loPMGzmYBDgGCa9ypQHEP1F97t+WUEDrwCZsXLtaA7Z4bumXTrxKQWsmdT
 bDZQTEFcQ9EYQGvqbaz+nHb94P8cyFrSNvSiAAqhuc2ZqigYWUYDEvFjYxSSGAE=
 =eiD2
 -----END PGP SIGNATURE-----

Merge tag 'ftracetest-3.19' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace

Pull ftrace self-test updates from Steven Rostedt:
 "Updates for the ftrace self tests:

   - Added kprobes on ftrace testcase
   - Sort test cases
   - Add file to hold helper functions
   - Use logfile name supported by busybox's mktemp
   - Clear trace buffer after running kprobe test
   - Fix show descriptions when run on dash shell
   - Add --verbose option for showing echo output"

* tag 'ftracetest-3.19' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:
  ftracetest: Add --verbose option for showing echo output
  ftracetest: Fix to show descriptions on dash
  ftracetest: Add basic event tracing test cases
  ftracetest: Clear trace buffer after running kprobe testcases
  ftracetest: Use logfile name supported by busybox's mktemp
  ftracetest: Add a couple of ftrace test cases
  ftracetest: Add functions file that holds helper functions
  ftracetest: Sort testcases
  ftracetest: Add kprobes on ftrace testcase
2014-12-10 20:03:45 -08:00
..
breakpoints breakpoint selftests: print failure status instead of cause make error 2012-12-17 17:15:27 -08:00
cpu-hotplug tools: selftests - create a separate hotplug target for full range test 2014-07-11 18:13:06 -07:00
efivarfs efivars: efivarfs_valid_name() should handle pstore syntax 2013-03-06 14:46:04 +00:00
firmware test: add firmware_class loader test 2014-07-17 18:44:19 -07:00
ftrace ftracetest: Add --verbose option for showing echo output 2014-12-04 10:40:34 -05:00
ipc tools: selftests: fix build issue with make kselftests target 2014-08-29 16:28:17 -07:00
kcmp tools: selftests: fix build issue with make kselftests target 2014-08-29 16:28:17 -07:00
memfd selftests/memfd: Run test on all architectures 2014-09-17 08:00:16 -06:00
memory-hotplug tools: selftests - create a separate hotplug target for full range test 2014-07-11 18:13:06 -07:00
mount mnt: Add tests for unprivileged remount cases that have found to be faulty 2014-07-31 17:13:15 -07:00
mqueue tools: Fix mqueue Makefile compile linking order 2014-07-11 18:11:18 -07:00
net selftests/net: psock_fanout seg faults in sock_fanout_read_ring() 2014-11-11 21:43:34 -05:00
powerpc selftests/powerpc: Add test of load_unaligned_zero_pad() 2014-09-30 14:59:12 +10:00
ptrace tools/testing/selftests/ptrace/peeksiginfo.c: add PAGE_SIZE definition 2014-08-08 15:57:25 -07:00
rcutorture Merge branches 'torture.2014.11.03a', 'cpu.2014.11.03a', 'doc.2014.11.13a', 'fixes.2014.11.13a', 'signal.2014.10.29a' and 'rt.2014.10.29a' into HEAD 2014-11-13 10:39:04 -08:00
sysctl tools/testing/selftests/sysctl: validate sysctl_writes_strict 2014-06-06 16:08:13 -07:00
timers tools/testing/selftests: fix uninitialized variable 2013-10-16 21:35:53 -07:00
user test: check copy_to/from_user boundary validation 2014-01-23 16:36:57 -08:00
vm selftests/vm/transhuge-stress: stress test for memory compaction 2014-10-09 22:26:01 -04:00
Makefile ftracetest: Initial commit for ftracetest 2014-09-23 09:31:05 -04:00
README.txt tools: selftests - create a separate hotplug target for full range test 2014-07-11 18:13:06 -07:00

README.txt

Linux Kernel Selftests

The kernel contains a set of "self tests" under the tools/testing/selftests/
directory. These are intended to be small unit tests to exercise individual
code paths in the kernel.

On some systems, hot-plug tests could hang forever waiting for cpu and
memory to be ready to be offlined. A special hot-plug target is created
to run full range of hot-plug tests. In default mode, hot-plug tests run
in safe mode with a limited scope. In limited mode, cpu-hotplug test is
run on a single cpu as opposed to all hotplug capable cpus, and memory
hotplug test is run on 2% of hotplug capable memory instead of 10%.

Running the selftests (hotplug tests are run in limited mode)
=============================================================

To build the tests:

  $ make -C tools/testing/selftests


To run the tests:

  $ make -C tools/testing/selftests run_tests

- note that some tests will require root privileges.

To run only tests targeted for a single subsystem: (including
hotplug targets in limited mode)

  $  make -C tools/testing/selftests TARGETS=cpu-hotplug run_tests

See the top-level tools/testing/selftests/Makefile for the list of all possible
targets.

Running the full range hotplug selftests
========================================

To build the tests:

  $ make -C tools/testing/selftests hotplug

To run the tests:

  $ make -C tools/testing/selftests run_hotplug

- note that some tests will require root privileges.

Contributing new tests
======================

In general, the rules for for selftests are

 * Do as much as you can if you're not root;

 * Don't take too long;

 * Don't break the build on any architecture, and

 * Don't cause the top-level "make run_tests" to fail if your feature is
   unconfigured.