Don Porter 8631631c39 Bump up a few LTP timeouts %!s(int64=7) %!d(string=hai) anos
..
.gitignore 10f53979b5 Ignore output/temporary files from LTP %!s(int64=7) %!d(string=hai) anos
BLOCKED 872af4984c Futex bugfixes (may help #40), more enhancements to LTP framework. %!s(int64=7) %!d(string=hai) anos
Makefile 580e465b39 add Graphene-SGX building and non-SGX regression tests into .travis.yml %!s(int64=7) %!d(string=hai) anos
Makefile.testcases d2185bace0 a trivial change in LTP Makefile %!s(int64=7) %!d(string=hai) anos
PASSED f67fe09124 Fix a bug introduced by commit 3a40af399d1d85 (#94) %!s(int64=7) %!d(string=hai) anos
README 872af4984c Futex bugfixes (may help #40), more enhancements to LTP framework. %!s(int64=7) %!d(string=hai) anos
TIMEOUTS 8631631c39 Bump up a few LTP timeouts %!s(int64=7) %!d(string=hai) anos
block_tests.awk b6e06b5f79 - add linux-test-project to apps %!s(int64=7) %!d(string=hai) anos
edit_sys_tests.awk 9357833e52 Get LTP running again on SGX %!s(int64=7) %!d(string=hai) anos
fetch.py f67fe09124 Fix a bug introduced by commit 3a40af399d1d85 (#94) %!s(int64=7) %!d(string=hai) anos
manifest.template f6a2916462 Improve LTP output parsing and environment preparation %!s(int64=7) %!d(string=hai) anos
passed_tests_only.awk b6e06b5f79 - add linux-test-project to apps %!s(int64=7) %!d(string=hai) anos
run_in_graphene.awk 0ff2ac4f77 Squashed commit of the following: %!s(int64=7) %!d(string=hai) anos
runltp.patch b6e06b5f79 - add linux-test-project to apps %!s(int64=7) %!d(string=hai) anos
syscalls.sh 9357833e52 Get LTP running again on SGX %!s(int64=7) %!d(string=hai) anos

README

LTP FOR GRAPHENE
----------------

Running LTP test cases in Graphene :
1) run 'make' in LibOS/shim/test/apps/ltp
2) cd Graphene/LibOS/shim/test/regression
3) make regression

The above command will start running LTP system call test cases in Graphene.

It works in 2 steps:
1) Creates a testfile (Graphene/LibOS/shim/test/apps/ltp/syscalls.graphene) with all the LTP system call test cases to run, excluding the ones mentioned in Graphene/LibOS/shim/test/apps/ltp/BLOCKED. “BLOCKED” contains all the test cases which are hanging in the Graphene and thus are excluded from regression tests.
2) Calls Graphene/LibOS/shim/test/apps/ltp/fetch.py It runs the LTP test cases and display output on the terminal.
Some LTP testcases hangs in Graphene. This python script sets a timeout for each testcase referring the file 'TIMEOUTS'. Default timeout is set 20 seconds in the script.
It also shows, ‘new passed testcases’ (passed testcases which are not in Graphene/LibOS/shim/test/apps/ltp/PASSED) and ‘new failed testcases’ (failed testcases which are in ‘PASSED’).
It also creates files ‘run_output’, ‘Failed.csv’, ‘Passed.csv’, ‘Blocked.csv’ under Graphene/LibOS/shim/test/apps/ltp for reference.
Results are of 4 types :
[Pass] -> Testcase passed
[Failed] -> Testcase failed
[Hanged] -> Testcase hanged and thereafter killed
[Broken] -> Either system call is not implemented in Graphene or test preparation failed

To run one particular testcase, execute following :
~/Runtime/pal /opt/ltp/testcases/bin/

In this way, one can debug one particular syscall testcase.

As you fix bugs, keep updating PASSED BLOCKED lists.