You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
128 lines
4.5 KiB
128 lines
4.5 KiB
/******************************************************************************/
|
|
/* */
|
|
/* Copyright (c) International Business Machines Corp., 2007 */
|
|
/* */
|
|
/* This program is free software; you can redistribute it and/or modify */
|
|
/* it under the terms of the GNU General Public License as published by */
|
|
/* the Free Software Foundation; either version 2 of the License, or */
|
|
/* (at your option) any later version. */
|
|
/* */
|
|
/* This program is distributed in the hope that it will be useful, */
|
|
/* but WITHOUT ANY WARRANTY; without even the implied warranty of */
|
|
/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See */
|
|
/* the GNU General Public License for more details. */
|
|
/* */
|
|
/* You should have received a copy of the GNU General Public License */
|
|
/* along with this program; if not, write to the Free Software */
|
|
/* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */
|
|
/* */
|
|
/******************************************************************************/
|
|
|
|
realtime tests is an open-source testsuite for testing real-time Linux. It is
|
|
licensed under the GPL. The latest version of this testsuite is available
|
|
from http://rt.wiki.kernel.org. This testsuite is maintained by the IBM
|
|
Real-Time team. Please send bug reports, contributions, questions to
|
|
the discussion list also available at: http://rt.wiki.kernel.org.
|
|
|
|
The testsuite contains some functional tests and a few performance
|
|
and latency measurement tests. This is still a work in (early) progress!
|
|
|
|
|
|
DEPENDENCIES
|
|
============
|
|
The testsuite expects glibc ("C" library) (version 2.4 onwards) and
|
|
the underlying kernel (version 2.6.18 onwards) to support
|
|
Robust and Priority Inheritance (PI) Mutexes.
|
|
|
|
Most of the tests need the user to have a privileges that allow
|
|
him/her to create SCHED_FIFO threads of priorities upto 99
|
|
|
|
RUNNING TESTS THROUGH LTP
|
|
=========================
|
|
Simplest method to run realtime tests through LTP is:
|
|
The command will configure,build and run tests specified through
|
|
argument provided to the script.
|
|
|
|
Run command below from LTP root directory with argument:
|
|
|
|
$./testscripts/test_realtime.sh -t $arg
|
|
|
|
or
|
|
|
|
$./test_realtime.sh -t $arg # From $LTPROOT/testscripts directory
|
|
|
|
Here $arg takes values as :
|
|
|
|
func = all functional tests will be run "
|
|
stress = all stress tests will be run "
|
|
perf = all perf tests will be run "
|
|
all = all tests will be run "
|
|
list = all available tests will be listed "
|
|
clean = all logs deleted, make clean performed "
|
|
test_name = only test_name subdir will be run (e.g: func/pi-tests) "
|
|
|
|
|
|
BUILD
|
|
=====
|
|
To build the tests execute the following command:
|
|
|
|
$make
|
|
|
|
|
|
RUNNING THE TESTS
|
|
==================
|
|
The top level script run.sh can be used to invoke all or a subset of tests.
|
|
|
|
1. Running the script with no arguments will list usage:
|
|
|
|
$run.sh
|
|
|
|
|
|
2. Running the script with the list option will list the available tests.
|
|
|
|
$run.sh -t list
|
|
|
|
Note that the tests available are determined by the presence
|
|
of a local script run_auto.sh in the individual test subdirectories
|
|
at this time.
|
|
|
|
|
|
3. Individual tests can also be run. For example, to run the prio-wake tests
|
|
for 20 iterations:
|
|
|
|
$run.sh -t func/prio-wake -l 20
|
|
|
|
Note, the test must be specified with the path relative to the test
|
|
home (where run.sh lives).
|
|
|
|
|
|
4. Alternatively, you can run the individual tests from their local directory.
|
|
For example, to run the prio-wake tests:
|
|
|
|
$cd func/prio-wake
|
|
$./run_auto.sh
|
|
|
|
|
|
5. You can also run sets of tests:
|
|
|
|
$run.sh -t func
|
|
|
|
will run all the functional tests once
|
|
|
|
$run.sh -t perf -l 3
|
|
|
|
will run all the perf tests (if any!) thrice
|
|
|
|
Use the -h option to see the various arguments taken.
|
|
|
|
6. Or you can run the binaries...
|
|
|
|
|
|
|
|
RESULTS
|
|
=======
|
|
All the automated run scripts set up logging in the logs/ directory. Not all
|
|
the tests have a clear PASS/FAIL outcome quite yet. Work on parsing results
|
|
is ongoing.
|
|
|