The Perf Event Testsuite
by Vince Weaver
This series of test is meant to validate that the perf_event subsystem is working.
QUICKSTART
1. run "make"
2. run "./run_tests.sh"
If a test fails you can run the individual test to get more info on
why.
CROSS COMPILE
run "make CROSS_COMPILE=
e.g., "make CROSS_COMPILE=arm-linux-gnueabihf-"
LAYOUT
There are various subdirectories:
+ crashes -- these contain tests known to crash certain
kernel versions from userspace.
* USE CAUTION RUNNING THESE TESTS *
+ exploits -- perf_event code that can cause some sort of security exploit
+ fuzzer -- a fuzzer tool that tries to hit the extremes of
the perf_event interface and find bugs in the kernel
+ include -- common include files
+ lib -- common library code
+ papi -- tests for the PAPI library. Only compile/run
these if you have PAPI installed
+ perf_event_h -- an archive of perf_event.h files over the
history of the interface. Useful when
figuring out when a feature was added
+ results -- results of ./run_tests.sh across kernel versions
+ tests -- all of the various tests live under here
+ tools -- various perf_event related tools
WEBSITE
The most recent version of this code can be found here:
http://web.eece.maine.edu/~vweaver/projects/perf_events/validation/
Even more recent code can be obtained from the git tree:
git clone git://github.com/deater/perf_event_tests
Vince 17 September 2013