The Linux Test Project (LTP) is an open source project with a goal to deliver test suites to the open source community that validate the reliability, robustness, and stability of Linux. The LTP test suite is a collection of automated and semi-automated tests for testing various aspects of the Linux operating system. The goal of LTP is to deliver a suite of automated testing tools for Linux as well as publishing the results of tests we run. LTP invites Internal & External community to contribute to new horizons. For more detailed information about "Linux Test Project"(LTP), visit the following websites http://ltp.sourceforge.net/ & http://sourceforge.net/projects/ltp/, and , IRC on irc.freenode.org #ltp {i}.
This wiki has been mainly designed to get more feedback from LTP users regarding their feel about LTP. Anybody can update this page about various ways by which we can improve this project and also post their willingness to contribute to this project. We as an integrated LTP team will make sure that your contribution(s) become(s) part of LTP test suite with little wastage of time. As with every project we promise to evolve on better lines and seek suggestions from you in this regard. For any issue(s) regarding LTP, kindly contact subrata@linux.vnet.ibm.com.
LTP for the month of NOVEMBER 2008 has been released. You can pick your copy from here
OCTOBER 2008 release can be found here
SEPTEMBER 2008 release can be found here
Task Title |
Task Description |
librttest fix |
librttest.c: enhancement and fixes for options handling. - simplified check for duplicate options,- better handling of unknown options and missing args: report missing args and exit, - exit if any option is wrong, - indent fix, Verified on all rt tests. Signed-off-by: Gilles Carry gilles.carry@bull.net>, Acked-by: Darren Hart <dvhltc@us.ibm.com>. |
matrix_mult.c fix |
matrix_mult.c: set_affinity to work when there are offline cpus: Syscall sched_setaffinity fails if choosen cpu is not online. In set_affinity, thread_id value is used as cpuid when calling sched_setaffinity. This fails when disabling cpus because threads ids and online cpu ids don't necessarly match. This patch simply increments cpuid (max. 8192) until it finds an online cpu. This guaranties that no more than one thread is assigned to one cpu. If set_affinity is called more times than there are online cpus then matrix_mult.c fails. Signed-off-by: Gilles Carry <gilles.carry@bull.net>, Acked-by: Darren Hart <dvhltc@us.ibm.com>, |
matrix_mult.c fix |
matrix_mult.c: dynamic iterations configuration. Dimension (128) of statistics arrays must be a multiple of number of cpu. This is a hassle as you have to recompile every time your arch changes or if you want to disable cpus. Failing to do so causes segfault when requiring statistics if 128 modulo nr_cpus != 0. This patch adds option -i to specify how many iterations are wanted (still defaulting to 128). It rounds up iterations to the nearest multiple of online cpus. Signed-off-by: Gilles Carry <gilles.carry@bull.net>, Acked-by: Darren Hart <dvhltc@us.ibm.com. |
matrix_mult.c fix |
matrix_mult.c: thread synchronisation simplification: In concurrent calculations: - use a single pthread_barrier to start all threads together instead of a combination of barrier/mutex/condvar. - main thread no longer participates to concurrent calculations and simply performs rt_gettime(s) for global time spent evaluation. Signed-off-by: Gilles Carry <gilles.carry@bull.net>, Acked-by: Darren Hart <dvhltc@us.ibm.com>. |
matrix_mult.c fix |
matrix_mult.c: concurrent calculation stats fix: Array size for stats was iterations/numcpus. Concurrent threads used to write their stats in the same rows, overwriting each other's results. This patch makes array size = iterations and threads not overlapping their results by shifting their index. Signed-off-by: Gilles Carry <gilles.carry@bull.net>, Acked-by: Darren Hart <dvhltc@us.ibm.com>. |
spawn_ptrace_child.h fix |
use feedback from Jan Kratochvil so we wait for the child to be stopped before we attempt to ptrace it |
ptrace06.c fix |
base {PEEK,POKE}USER on sizeof(user) rather than sizeof(pt_regs) and add a few more corner cases |
Rpc-tirpc fix |
drop backup file configure~ |
.gitignore file added |
start a .gitignore |
cron_tests.sh fix |
This patch fixes what I believe is a wrong logic in test 3 of this script right after the last "crontab -l ..." command. In my system the cron table is empty; this command will return false and the else clause will never be executed. If the command returns true (0) then the cron table is not empty as it was supposed to be and the script must indicate an error. Signed-Off-By: Elder Costa <elder.costa@terra.com.br>. |
NUMA fix |
Stop building numa test in cross environment: None of the tests for the existence of numa prereqs work in a cross build environment. This is a patch to skip erroneously checking for these prereqs on a host system if the $CROSS_COMPILER variable is set per the runltp script. Without this patch, the existing script checks for the existence of aheader file on the /usr/include, but our compiler only looks within the include directories of the target system, and stops cross building of the entire ltp suite, if the target does not have numa.h/no numa support. Signed-Off-By: Henry Yei <hyei@mvista.com>. |
SIGNALFD fix for ARM |
The following are errors while compiling ltp-full-20081031 with ARM architecture: Here I am attaching the patch to resolve above error. Signed-Off-By: naresh kamboju <naresh.kernel@gmail.com>. |
PTEM01 fix |
Alan Cox [alan@lxorguk.ukuu.org.uk] wrote: The test changes the window size using the slave-fd and expects that it won't affect the window-size on master-fd. With this change, we return the slave's window size and test fails. I've no idea why anyone would have thought the existing behaviour was correct. The pty/tty pair code tries to share the size and other information at all times and the old test was I think verifying a bug existed. Sukadev <sukadev@linux.vnet.ibm.com> wrote: We are referring to the last window size check in test2() of testcases/kernel/pty/ptem01.c. This check will cause the test to fail when some of the planned ttydev changes are merged. Would you happen to know if the check is really required or if it should be dropped ? Subrata Modak <subrata@linux.vnet.ibm.com> wrote: I would want the test to remain there, but introduce some checkings before running the test. As test2() is valid under present circumstances, we should retain it as people will keep using LTP on lower kernels. Having said that, i would like to come with a solution where test2() of testcases/kernel/pty/ptem01.c is not run after the planned ttydev changes are merged. Something compile/run time checking to either not to build that part of code and run it. Can we do something like that by checking some glibc/kernel exported definitions ? Sukadev <sukadev@linux.vnet.ibm.com> wrote: Just to be clear, the entire test2() is not broken. Only the last part (see patch below) Other parts of test2() should be fine even with new changes. Other than the kernel version when the changes are merged, I am not sure there is a way. Besides, it is not clear which assertion that part of test2() is testing and if it is even needed for older kernels. Here is the part of test2() I am referring to: Signed-Off-By: Sukadev <sukadev@linux.vnet.ibm.com>. |
FILECAPS fix |
Enable Kernel with the Option during build to test filecaps support. Subrata. |
REGEN.sh fix |
check input files and abort if broken line is found |
kernel/include/sh.in fix |
remove bogus line |
HTML file generation fix |
The attached Patch defines more about the keywords:i) TPASS - Indicates that the test case had the expected result and passed. ii) TFAIL - Indicates that the test case had an unexpected result and failed. iii) TBROK - Indicates that the remaining test cases are broken and will not execute correctly, because some precondition not met, such as a resource not being available. iv) TCONF - Indicates that the test case was not written to run on the current harware or software configuration such as machine type, or, kernel version. v) TRETR - Indicates that the test cases has been retired and should not be executed any longer. vi) TWARN - Indicates that the test case experienced an unexpected or undesirable event that should not affect the test itself such as being unable to cleanup resources after the test finished. vii) TINFO - Specifies useful information about the status of the test that does not affect the result and does not indicate a problem. in the HTML file generated after test run. I believe it will be very useful for deciphering results better: Signed-Off-By: Subrata Modak <subrata@linux.vnet.ibm.com>. |
checking cpuidle sysfs files tests added for Power Management |
Added test case for checking cpuidle sysfs files. Signed-Off-By: Nageswara R Sastry <rnsastry@linux.vnet.ibm.com>. |
linux-2.6.27-gcov.patch fix |
gcov-kernel: change comment to recommend CONFIG_GCOV_HAMMER=n. Background: CONFIG_GCOV_HAMMER indicates a modified gcc version which is not the majority of cases: Some Linux distributions ship a modified version of GCC 3.3.x that produces GCOV data incompatible with the format of the standard GCC 3.3.x. If you are using such a distribution, you need to enable this option for the GCOV kernel support to work correctly. Signed-Off-By: Peter Oberparleiter <oberpapr@users.sourceforge.net>. |
23 syscalls tests Addition for _16 & _64 bits |
Following the footsteps of Masatake Yamato, i have decided to enable building, installing & running of some _16 & _64 bit syscalls tests in LTP. I have taken this trivial ones, and, would leave other porting to you. Signed-Off-By: Subrata Modak <subrata@linux.vnet.ibm.com>. |
FILECAPS run addition to RUNALLTESTS.sh |
The following Patch adds the option to run filecaps tests from runalltests.sh and also provisions for installation of required libraries not present in the system. Also systematic execution of all tests run through runalltests.sh is added. Signed-Of-By: Subrata Modak <subrata@linux.vnet.ibm.com>. |
ADDED 1 PIDNS test |
Submitting the testcase, which would try to kill the parent namespace pid from the container init. Also this tests a scenario of killing non existent pid from the container. Signed-off-by: Veerendra C <vechandr@in.ibm.com>. Acked-by: Sukadev Bhattiprolu <sukadev@linux.vnet.ibm.com>. |
Kernel Build options for SELinux |
Added Kernel .config options for building LTP SECURITY TESTS. Signed-Off-By: Subrata Modak <subrata@linux.vnet.ibm.com>. Reviewd-By: Stephen Smalley <sds@tycho.nsa.gov>. |
NETNS Fix |
This patch fixes an issue with the sort command in netns testcases. Because of this all network namespace testcases were failing. Signed-off-by: Sudhir Kumar <skumar@linux.vnet.ibm.com>. |
Aio-runtest file modification |
(previous mail got accidentally line-wrapped, sorry.). Attachted patch changes the location of the test-binaries of aio-stress and aiodio runtest-files. Instead of the relative-build location just the binary get called,which is in the PATH of testcases/bin/ anyway when called by "pan". This patch should have no impact on testing inside ltp-build-tree. The idea of this patch is to allow easier packaging of LTP. (No runtest-file modification required when installting into the system environment). Signed-off-by: Daniel Gollub <dgollub@suse.de>. |
Aio Makefile modification |
Subrata and Daniel, moving from ia64 to x86_64 arch I have got this at linking time: so , if you could have a look to the suggested following patch. Signed-Off-By: Jacky Malcles <Jacky.Malcles@bull.net>. |
GET_ROBUST_LIST01 Fix |
on SLES10 SP2 NR_get_robust_list is not defined and cause following compiler warning: Attached patch avoids "random"/43 return value. Signed-off-by: Daniel Gollub <dgollub@suse.de>. |
TIMERFD01 Warning Fix |
This patch fixes a compilation warning: timerfd01.c: In function main': timerfd01.c:128: warning: unused variable tfd2' Signed-off-by: CAI Qian <caiqian@cclom.cn>. |
BASHISM & TYPOS Fixes |
Hello, these are some little fixes I've created for ltp. They are typos, fixes for compiler warning, bashisms in the makefiles etc. Signed-off-by: Jiri Palecek <jpalecek@web.de>. |
NON-EXISTANT SYSCALLS handling Fixes |
when building Debian ltp package on alpha, the package failed to build, because alpha lacks some of the syscalls (the xxx_16 ones). See: http://experimental.debian.net/fetch.php?&pkg=ltp&ver=20081031%2Bdfsg-1&arch=alpha&stamp=225968365&file=log&as=raw. I have created some patches, which fix this behaviour (ie. the build doesn't fail then). They work like this: 1. Syscalls which are potentially missing on some architectures are listed in the stub-list, 2. If a syscall(x) is called and x is 0 (a value of undefined stub syscalls), the test is aborted by tst_brk(). This is accomplished by a macro wrapper over the syscall() function (this almost eliminates the need of changing the tests in question, and allows the compiler to eliminate parts of tests of nonexistent syscalls as dead code). The attached patches implement this. Some remarks: - the syscalls added to the stub list are the ones which appear in the kernel sources as IGNORE_name-of-syscall, - the macro is for gcc only. The test using this mechanism (ie. #including linux_syscall_numbers.h and calling syscall()) must define static function void cleanup(void) to be called when the syscall is missing (the patch also handles this for tests that lack it). Signed-off-by: Jiri Palecek <jpalecek@web.de>. |
EXECVE04 Fixes |
Fix success detection in execve04 test: The execve04 test works like this: It sets up the environment, calls execve() and expects failure. However, this has two bad consequences if the call actually succeeds: 1. The failure (ie. success of the call) is unnoticed, 2. The test leaves loads of files in the temporary directory. all of them being caused by the fact that the test no longer runs after a succesful exec(). This patch fixes the situation by calling exec in a child only. The failure (or success) is gathered from the child's exit value. Signed-off-by: Jiri Palecek <jpalecek@web.de>. This patch fixes the error, that code exhausting the file descriptor table in execve04 test actually doesn't exhaust the fd table at all. Signed-off-by: Jiri Palecek <jpalecek@web.de>. |
CHOWN Fixes |
Don't break chown tests on non-catastrophic failures. Signed-off-by: Jiri Palecek <jpalecek@web.de>. |
tst_brkm Fixes |
Do not call tst_brkm from the cleanup function in some tests: It is bad for the cleanup function to abort by calling tst_brkm, because in that case, further cleanup will not be performed. This patch fixes it in some chmod*, chown*, fchmod* and fchown* tests by substituting tst_resm for tst_brkm. Signed-off-by: Jiri Palecek <jpalecek@web.de>. |
FALLOCATE Fixes |
Call cleanup() at the right places to prevent fallocate tests leaving files in the temporary directory. Signed-off-by: Jiri Palecek <jpalecek@web.de>. |
AUTOCONF introduced for SIGNALFD test |
|
SCTP Fix |
Use the SO_REUSEADDR option in sctp tests to prevent bind error shortly after another test ended: I've noticed a bunch of errors in the SCTP tests, all of them being for the same reason, "bind: address already in use". I tried using the SO_REUSEADDR option on the socket, as if it was TCP, and it helped. However, I know almost nothing about SCTP, and don't know whether the same situation (applications binding to the same port quickly one after another) has the same problems and solution, or if it is just a kernel bug/misconfiguration/whatever else. Signed-off-by: Jiri Palecek <jpalecek@web.de>. |
PIPEIO Fix |
Quick and dirty fix to overflow in pipeio when computing the number of writes: the computation of the number of writes in pipeio can overflow, eg. if you want to run more than 4 GB through the pipe. The attached patch fixes that. Signed-off-by: Jiri Palecek <jpalecek@web.de>. |
linux_syscall_numbers.h fix |
regen linux_syscall_numbers.h whenever regen.sh changes |
regen.sh fix |
make syscall() wrapper a bit more readable |
linux_syscall_numbers.h fix |
only create symlink if it doesnt exist already |
regen.sh fix |
generate stub list on the fly based on *.in files |
SIGNALFD01 fix |
cleanup style with Lindent |
configure.ac fix |
fill out AC_INIT() |
ltp-signalfd.m4 fix |
use AC_CHECK_HEADERS_ONCE() |
ltp/Makefile fix |
make autotools optional and start a sane config.h by default |
.gitignore fix |
add some compiled objects to the ignore list |
UNZIP tests Integration |
Integrate unzip tests to runtest/commands file. Signed-Off-By: Subrata Modak <subrata@linux.vnet.ibm.com>. |
TPM_TOOLS Integration |
Integrate tpm_tools into runalltests.sh. Signed-Off-By: Subrata Modak <subrata@linux.vnet.ibm.com>. |
GZIP tests Integration |
Integrate gzip tests to runtest/commands file. Signed-Off-By: Subrata Modak <subrata@linux.vnet.ibm.com>. |
FILEUTILS tests Integration |
Integrate fileutils tests to runtest/commands file. Signed-Off-By: Subrata Modak <subrata@linux.vnet.ibm.com>. |
runtest/commands Integration to ltp/runltp |
Add ltp/runtest/commands file to ltp/runltp. Signed-Off-By: Subrata Modak <subrata@linux.vnet.ibm.com>. |
hugemmap02 Segmentation fix |
Adam Litke <agl@us.ibm.com> Replied: Unfortunately, when you mmap using the MAP_FIXED flag, you can overwrite an existing mmap in the address space. Please do the following to check if this has happened: 1. Insert a 'getchar();' call above line 155 in the test source code above and recompile the test. 2. Run the test. When it pauses (waiting for input at the getchar() call), hit <ctrl>-z to background the test. 3. Determine the pid of the test case using ps. 4. Collect the /proc/<pid>/maps for the appropriate pid. 5. Paste that output here in this bug. My suspicion is confirmed. This is a LTP test case bug. All of the above mappings will have been overwritten by the mmap call on the hugetlbfs file at address 0. This will most certainly cause your program to crash and burn. To fix the test case, I would recommend removing the MAP_FIXED flag from that mmap call and checking the address you get from mmap. If it's zero, you'll know a mapping could be created at the bottom of the address space. If it's -1, the mmaping failed. But if it's >0, you'll have to decide how to handle the case where the mapping could not be placed in the spot you requested. This case would not be a failure, just a failure to test the scenario you wanted to test. I assume the LTP test harness has a way to represent an insignificant test result. You might just treat this case in the same way you handle mmap() == 0. Signed-Off-By: Cijurajan Kollanoor <cijurajan@in.ibm.com>, |
CREAT07 fix for running in a private directory |
This test case requires write permission for the dummy program. It would fail for those who put LTP on an read-only environment. So this patch copies the dummy test program to and performs the test in a private directory. p.s. this patch copy the one Renaud Lottiaux sent for execve02.c. Signed-Off-By: Roy Lee <roylee17@gmail.com>. |
SIGNALFD01 fix for build error |
Only define signalfd() when it actually gets used -- i.e. when !USE_STUB. Mike Frysinger <vapier@users.sourceforge.net>. |
configure.ac fix |
require autoconf-2.61+. Mike Frysinger <vapier@users.sourceforge.net>. |
LCOV Updates |
lcov: preparations for release 1.7. Mike Frysinger <vapier@users.sourceforge.net>. |
LCOV Updates |
lcov: update error and warning messages. Peter Oberparleiter <oberpapr@users.sourceforge.net>. |
LCOV Updates |
lcov: fix spec file bug. Peter Oberparleiter <oberpapr@users.sourceforge.net>. |
LCOV Updates |
lcov: version + date updates. Peter Oberparleiter <oberpapr@users.sourceforge.net>. |
LCOV Updates |
lcov: updated CVS version to 1.8. Peter Oberparleiter <oberpapr@users.sourceforge.net>. |
AUTOCONF fix for MODIFY_LDT |
I've introduced autoconf to modify_ldt test cases. The modification is very similar to the modification to signalfd. Signed-off-by: Masatake YAMATO<yamato@redhat.com>. |
PIDNS fix |
Please accept the patch for running the pidns tests for the containers. Also modified, to run all the testcases even when other testcase's fails. This patch contains the patches to run new tests pidns05 and pidns06. Also this patch will run all the pidns tests. And return back the exit code of the test, which failed first. Signed-off-by: Veerendra C <vechandr@in.ibm.com>. Acked-by: Serge Hallyn <serue@us.ibm.com>. |
FCNTL17 fix |
[Bug # 2305878] fcntl17: fix short pid problem. Process ids (pids) are not necessary in "short" range, they might be larger (and are in SLES 10 e.g.). Signed_off-By: Marcus Meissner <marcusmeissner@users.sourceforge.net>. |
READLINK03 fix |
Change "Buffer size is not positive" testcase readlink03 to use 0 as non-positive buffer size, instead of -1. To avoid a fortify-check-fail when using glibc and _FORTIFY_SOURCE=2. See discussion: http://lkml.org/lkml/2008/10/23/229. Signed-off-by: Daniel Gollub <dgollub@suse.de>. |
LCOV-1.7 Release |
|
MALLOCSTRESS fix |
Andrew Vagin Replied <avagin@gmail.com>: Thanks. I found error for help valgrind. I use valgrind first time. Thanks for this possibility:). see the attached patch. test passed and valgrind don't report errors after my patch Thread [34]: allocate_free() returned 0, succeeded. Thread exiting. main(): test passed. Signed-Off-By: "avagin@gmail.com" <avagin@gmail.com>. |
ACCEPT4() syscall test addition |
Initial Porting of accept4() syscall test to LTP by Subrata Modak <subrata@linux.vnet.ibm.com>. Originally written by Michael Kerrisk <mtk.manpages@gmail.com>. Later modified to suite compilation on different systems by Jiri Palecek <jpalecek@web.de>, who wrote the following:I have some nitpicks, in decreasing severity: First, the syscall, I believe, is not targeted at i386 and x86-64 only. Therefore, it is not wise to have these explicitly mentioned in the code. Also, it would be better not to "#error" if the arch isn't one of those fortunate, because ltp should build on others too. This should be fixed by patch 1. Disclaimer: This patch should make it compile (and fail at runtime with TCONF) on all kernels that don't have the syscall, and actually run the test on all kernels that do, depending on kernel headers version. However, I didn't test this (especially the selection of the syscall), so it needs to be checked. Second, if any of the syscalls vital for the test fails, it's preferable to output the error message too, and call tst_brk() for cleanup (patch 2). Third, there it would probably be better to use TFAIL/TPASS for recording success and failure instead of manual boolean flags (patch 3). Last, I think a successful test should print as little as possible and multiline messages like "calling syscall..." are really not that useful. Patch 4 disables them. |
POWER MGMNT fix |
I guess you want ">/dev/null 2>&1" to eliminate both STDERR and STDOUT. Attaching a small patch with the above change. Signed-Off-By: Nageswara R Sastry <rnsastry@linux.vnet.ibm.com>. |
SIGNALFD01 fix for autoconf |
A small Fix. Signed-off-by: Masatake YAMATO<yamato@redhat.com>. |
SIGNALFD01 fix for compilation error |
- Type definitions defined in header files included from sys/signalfd.h and type definitions defined in sys/signalfd.h are conflicted. - s/SIGNALFD_REFIX/SIGNALFD_PREFIX/ - if HAVE_SIGNALFD is not defined, use stub. - if HAVE_LINUX_TYPES_H is defined, use our own implemention to call signalfd syscall. Signed-of-by: Masatake YAMATO<yamato@redhat.com>. |
Update to OpenHPI 2.13.1 |
|
README update |
Add Kernel Config Info for compiling KDUMP/KEXEC kernel. Signed-Off-By: Subrata Modak <subrata@linux.vnet.ibm.com>. |
RT Tests update |
This patch ensures that prio-preempt uses the librt debug mechanism. Tested: Running the test: ./prio_preempt ./prio_preempt -v3 ./run_auto Signed-Off-By: Chirag <chirag@linux.vnet.ibm.com>. Acked-by: Darren Hart <dvhltc@us.ibm.com>. |
RT Tests update |
This patch adds librt debug support for prio-wake. The log level selected is 0, as it necessary to print all the buffered information. Tested: ./prio-wake ./run_auto. Signed-Off-By: Chirag <chirag@linux.vnet.ibm.com>. Acked-by: Darren Hart <dvhltc@us.ibm.com>. |
PIPEIO stack overflow fix |
OK. I have implemented such a patch which does not overflow anymore. However, I could not test it, because: pipeio -s 5000 -i 2000000000 -c 5. just runs too long. Signed-off-by: Jiri Palecek <jpalecek@web.de>. |
RT Tests update |
The test case gtod_latency in realtime causes soft lockups on some machines. This is because the test hogs the cpus for a long time, because it's main loop runs at SCHED_FIFO, 99. We have seen soft lockups mainly on LS20 machines (x86_64, Opterons). The following patch introduces a sleep after some iterations of the test. This ensures that the test doesn't hog the cpu completely and hence avoids soft lockups. Testing done: Compiled with the patch and observed that the soft lockups are gone. Also observed that the latencies are not affected. In fact latencies improve with this patch on most hardware. Changelog: * Introduce periodic sleeps in the busy loop of gtod_latency to avoid soft lockups. Signed-off-by: Sripathi Kodi <sripathik@in.ibm.com>. Acked-by: John Stultz <johnstul@us.ibm.com>. |
NETNS fixes |
Here is a patch to fix the error below. /root/ltp-full-20081031/testcases/kernel/containers/netns/parentns.sh: 42: source: not found Some shells are not having the cmd 'source' which inturn are failing the tests for netns in containers. I found few other ltp scripts are using the source cmd. Have others reported the same issue ? Just curious to know this. The below patch would replace the 'source with .' for containers in netns.Signed-Off-By: Veerendra <veeren@linux.vnet.ibm.com>. |
I386.in fix |
The file testcases/kernel/include/stub-list was recently removed. It contained the list of syscall numbers which, if not present in the kernel headers or in one of the architecture-specific lists, should be defined as 0 (a stub value). Now, this list is automatically generated as union of the architecture-specific lists. However, some syscalls only appeared in stub-list, which means they are not stubbed now, so architectures lacking them will probably fail to build (alpha...). To overcome this, I have added these syscalls to the i386 list, which means they will be defined whenever they are defined in the kernel sources, on i386, and stubbed otherwise. See the attached patch. BTW, the list of syscalls is not exhaustive. In the attachment filtered-syscalls, there is a list of syscalls which appear as IGNORE_syscall-nr in the kernel sources (which means they are missing on some architecture), but are not used in ltp or their use is guarded by an #ifdef. They would have to be added too, if some test explicitely mentions them (eg. getresgid16). Signed-off-by: Jiri Palecek <jpalecek@web.de>. |
FS_BIND fix |
umount can return error if /etc/mtab link to /proc/mounts. My patch fixed testcase fs_bind/regression/test02, that execute all umount commands with target directories. Signed-Off-By: Andrew Vagin <avagin@parallels.com>. |
RT Tests Fixes |
Fix busy loop in realtime: The routine busy_work_us(), which is the busy work loop function in realtime test suite is supposed run for as many microseconds as requested for. However, I have observed that it runs too fast on some hardware. I looked at the code and saw that we are statically setting the loop counters, which means the duration of the busy loop varies with the cpu speed. Further, the busy loop is affected by compiler optimizations. On some hardware it provides only 50% of requested delay, whereas with -O3, it finishes even faster. What we need is a method to dynamically tune the delay loop based on the machine where the test is being run. It should not be affected by compiler optimizations as well. The following patch does that. It applies on the latest cvs. Signed-off-by: Sripathi Kodi <sripathik@in.ibm.com>, Acked-by: Chirag <chirag at linux.vnet.ibm.com>. |
AUTOCONF Updates |
I've added new Makefile target to run both autoconf and autoheader. Signed-off-by: Masatake YAMATO <yamato@redhat.com>. |
CONTROLLERS Fixes |
CONTROLLERS: Patches to modify the existing cpu controller testcases |
TI-RPC Fixes |
Re-enablement of TI-RPC tests to build/install/run in LTP: Le Rouzic <aime.le-rouzic@bull.net> wrote: I get a first patch to deliver which improves the Sun-RPC and TIRPC Test Suite. The Sun-RPC tests part works quite well. About the TIRPC I still have some FAILED I am working on that I will fix in a second patch. There is no much time now for the November delivery so let me know if you want me to deliver right now the first patch. Subrata Modak <subrata@linux.vnet.ibm.com> replied: I am not worried if the test case(s) of TI-RPC fails. The point is they should be able to build, install and run - irrespective of whether many of the tests fail. The issue(s) like linking to proper libraries while building and finding those libraries to run should be properly resolved. If they require specific libraries to to build/run, that should be properly documented. Users should be able to find those libraries and install them (if it does not come with the system in first place), so that they can start using those tests. If people can start using those tests, then there will be more people who can help fix issues related to tests themselves. It would be nice if you can send a patch (against latest CVS) which would re-enable the TI-RPC tests to build/install/run in LTP properly. We can see the test fails later. Le Rouzic <aime.le-rouzic@bull.net> replied: OK. Here is the patch I tested against ltp-full-20081031.tgz. Signed-Off-By: Le Rouzic <aime.le-rouzic@bull.net>. |
New PIDNS test addition |
Please find the testcase for the below assertion. Assertions 1: Steps: a) Create a container . b) Create many levels of child containers inside this container. c) Now do kill -9 init , outside of the contaier. d) This should kill all the child containers . (containers created at the level below ). Signed-Off-By: Veerendra <veeren@linux.vnet.ibm.com>. |
Typo Fix runtest/syscalls |
Fix typo in pselect01_64 testcase: pselect0_64->pselect01_64. Signed-Off-By: Dmitry Guryanov <dguryanov@parallels.com>. |
Remove libjvmsim in RT Tests |
Remove references of jvmsim from the tests: Most of the testcases, have an option (-j) which runsthe jvmsim as a background load so as to simulate the behavior of the JVM.This patch removes the references of jvmsim from all the testcases. Signed-Off-By: Chirag <chirag@linux.vnet.ibm.com>, Acked-by: Sripathi Kodi <sripathik@in.ibm.com>. |
Remove libjvmsim in RT Tests |
Remove libjvmsim: This patch removes the libjvmsim itself. Hence no testcase can use it anymore. Signed-Off-By: Chirag <chirag@linux.vnet.ibm.com>, Acked-By: Sripathi Kodi <sripathik@in.ibm.com>. |
IPTABLES fix for Network tests |
ltp iptables testcase failed: Manas Kumar Nayak <maknayak@in.ibm.com> reported: While executing iptables testcases from ltp ,it failed to list iptables chain rules. iptables test case gets failed with following errors: Vinay Sridhar <vinay@linux.vnet.ibm.com> replied: I looked through the iptables test. It fails because of mismatch in the number of chains after firewall is enabled. Under RH, enabling firewall adds a new chain to the "filter" table and under SLES, 3 new chains are added. This patch can change this test accordingly. Signed-Off-By: Vinay Sridhar <vinay@linux.vnet.ibm.com>. |
Work Archives of LTP for Previous Releases can be found here
Recently we have embarked on a Major Collaboration initiative, where we would be porting major chunk of existing System Call test cases from the Crackerjack Project to Linux Test Project. Leading this initiative is Masatake Yamato<yamato@redhat.com> from Red Hat. He has already ported some of the test cases to LTP. The following table will depict the status of our work in this regard, which we plan to finish by 2008 end. We would like to welcome other volunteers, who can help us in this porting effort. We appreciate you to add you name inthe following list as an
Willing LTP contributor
.
Remaining test cases like shmget, shmat, msgsnd, shmctl & shmdt can be investigated later, and once all the above i) and ii) are done. We can see whether there is something additional functionality testing in Crackerjack for them. If yes, we can then include 1 or 2 tests for each of them. But that is at the end.
I think this should be something like:
No. |
System Call |
Comment on its position w.r.t LTP |
To-be-Ported-by |
Status |
1 |
We have ftruncate at testcases/kernel/syscalls/ftruncate/. But this may not be doing the ftruncate64() test. You may need to include/port ftruncate64 on similar lines to sendfile64 and fadvise64 |
Masatake YAMATO <yamato@redhat.com> |
Completed on 05/08/2008 |
|
2 |
We have setgid at testcases/kernel/syscalls/setgid. You may need to include/port setgid16 on similar lines to sendfile64 and fadvise64. |
Masatake YAMATO <yamato@redhat.com> |
Completed on 04/08/2008 |
|
3 |
shmget |
We have this at testcases/kernel/syscalls/ipc/shmget. Need not look into this right now. May be after the porting is over, we can see whether there is some additional functionality that Crackerjack shmget is covering over LTP-shmget. We may then need to add 1/2 test cases in this regard. But, not to be prioritized immediately. |
Need Volunteer |
N/A |
4 |
mbind |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
5 |
removexattr |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
6 |
exit_group |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
7 |
We need this from Crackerjack as we do not have this in LTP anywhere |
Masatake YAMATO<yamato@redhat.com> |
Completed on 26/06/2008 |
|
8 |
migrate_pages |
We have a different form of this at recently added Memory Hotplug testcases at testcases/kernel/hotplug/memory_hotplug/. But i would like to see this tested inside testcases/kernel/syscalls, as hotplug testing presently is optional. So, please include/port this as well |
Need Volunteer |
N/A |
9 |
We have setgroups at testcases/kernel/syscalls/setgroups. You may need to include/port setgroups16 on similar lines to ssendfile64 and fadvise64 |
Masatake YAMATO<yamato@redhat.com> |
Completed on 27/08/2008 |
|
10 |
getdents64 |
We have getdents at testcases/kernel/syscalls/getdents. You may need to include/port getdents64 on similar lines to sendfile64 and fadvise64 |
Subrata Modak |
Completed on 07/11/2008 |
11 |
add_key |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
12 |
We have getegid at testcases/kernel/syscalls/getegid. You may need to include/port getegid16 on similar lines to sendfile64 and fadvise64 |
Masatake YAMATO<yamato@redhat.com> |
Completed on 04/09/2008 |
|
13 |
We need this from Crackerjack as we do not have this in LTP anywhere |
Masatake YAMATO <yamato@redhat.com> |
Completed on 12/07/2008 |
|
14 |
newfstat |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
15 |
set_mempolicy |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
16 |
timer_getoverrun |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
17 |
fadvise64_64 |
We have fadvise64 support added by Masatake Yamato. But i am not sure what this fadvise64_64 is. May need to include/port this as well |
Already Taken Care by Masatake Yamato |
Completed |
18 |
We need this from Crackerjack as we do not have this in LTP anywhere |
Masatake YAMATO <yamato@redhat.com> |
Completed on 12/07/2008 |
|
19 |
newlstat |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
20 |
rt_sigaction |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
21 |
sigreturn |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
22 |
timer_gettime |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
23 |
geteuid16 |
We have geteuid at testcases/kernel/syscalls/geteuid. You may need to include/port geteuid16 on similar lines to sendfile64 and fadvise64 |
Subrata Modak |
Completed on 07/11/2008 |
24 |
newuname |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
25 |
rt_sigprocmask |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
26 |
bdflush |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
27 |
getgid16 |
We have getgid at testcases/kernel/syscalls/getgid. You may need to include/port getgid16 on similar lines to sendfile64 and fadvise64 |
Subrata Modak |
Completed on 07/11/2008 |
28 |
rt_sigqueueinfo |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
29 |
ioprio_get |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
30 |
rt_sigsuspend |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
31 |
setregid16 |
We have setregid at testcases/kernel/syscalls/setregid. You may need to include/port setregid16 on similar lines to sendfile64 and fadvise64 |
Subrata Modak |
Completed on 07/11/2008 |
32 |
tkill |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
33 |
getgroups16 |
We have getgroups at testcases/kernel/syscalls/getgroups. You may need to include/port getgroups16 on similar lines to sendfile64 and fadvise64 |
Subrata Modak |
Completed on 07/11/2008 |
34 |
ioprio_set |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
35 |
sched_getaffinity |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
36 |
ssetmask |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
37 |
fchown16 |
We have fchown at testcases/kernel/syscalls/fchown. You may need to include/port fchown16 on similar lines to sendfile64 and fadvise64 |
Subrata Modak |
Completed on 07/11/2008 |
38 |
We need this from Crackerjack as we do not have this in LTP anywhere |
Masatake YAMATO <yamato@redhat.com> |
Completed on 12/07/2008 |
|
39 |
mmap2 |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
40 |
setresgid16 |
We have setresgid at testcases/kernel/syscalls/setresgid. You may need to include/port setresgid16 on similar lines to sendfile64 and fadvise64 |
Subrata Modak |
Completed on 07/11/2008 |
41 |
We have truncate at testcases/kernel/syscalls/truncate. You may need to include/port truncate64 on similar lines to sendfile64 and fadvise64 |
Masatake YAMATO <yamato@redhat.com> |
Completed on 05/08/2008 |
|
42 |
get_mempolicy |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
43 |
We need this from Crackerjack as we do not have this in LTP anywhere |
Masatake YAMATO <yamato@redhat.com> |
Completed on 12/07/2008 |
|
44 |
stat64 |
We have stat at testcases/kernel/syscalls/stat. You may need to include/port stat64 on similar lines to sendfile64 and fadvise64 |
Subrata Modak |
Completed on 07/11/2008 |
45 |
keyctl |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
46 |
setresuid16 |
We have setresuid at testcases/kernel/syscalls/setresuid. You may need to include/port setresuid16 on similar lines to sendfile64 and fadvise64 |
Subrata Modak |
Completed on 07/11/2008 |
47 |
chown16 |
We have chown at testcases/kernel/syscalls/chown. You may need to include/port chown16 on similar lines to sendfile64 and fadvise64 |
Subrata Modak |
Completed on 07/11/2008 |
48 |
fcntl64 |
We have fcntl at testcases/kernel/syscalls/fcntl. You may need to include/port fcntl64 on similar lines to sendfile64 and fadvise64 |
Subrata Modak |
Completed on 07/11/2008 |
49 |
But work for this has been already initiated. Need not consider this |
Vijay Kumar B. <vijaykumar@bravegnu.org> |
Completed on 26/07/2008. This was not ported, but written by him |
|
50 |
statfs64 |
We have statfs at testcases/kernel/syscalls/statfs. You may need to include/port statfs64 on similar lines to sendfile64 and fadvise64 |
Subrata Modak |
Completed on 07/11/2008 |
51 |
clock_getres |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
52 |
lchown16 |
We have lchown at testcases/kernel/syscalls/lchown. You may need to include/port lchown16 on similar lines to sendfile64 and fadvise64 |
Subrata Modak |
Completed on 07/11/2008 |
53 |
setreuid16 |
We have setreuid at testcases/kernel/syscalls/setreuid. You may need to include/port setreuid16 on similar lines to sendfile64 and fadvise64 |
Subrata Modak |
Completed on 07/11/2008 |
54 |
fgetxattr |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
55 |
lgetxattr |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
56 |
mq_getsetattr |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
57 |
unshare |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
58 |
clock_nanosleep |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
59 |
flistxattr |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
60 |
mq_notify |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
61 |
ppoll |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
62 |
useclock_settime |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
63 |
mq_open |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
64 |
set_thread_area |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
65 |
listxattr |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
66 |
mq_timedreceive |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
67 |
pread64 |
We have pread at testcases/kernel/syscalls/pread. You may need to include/port pread64 on similar lines to sendfile64 and fadvise64 |
Subrata Modak |
Completed on 07/11/2008 |
68 |
set_tid_address |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
69 |
fremovexattr |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
70 |
llistxatt |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
71 |
mq_timedsend |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
72 |
pselect64 |
We have pselect at testcases/kernel/syscalls/pselect. You may need to include/port pselect64 on similar lines to sendfile64 and fadvise64 |
Subrata Modak |
Completed on 07/11/2008 |
73 |
utimes |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
74 |
fsetxattr |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
75 |
mq_unlink |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
76 |
We need this from Crackerjack as we do not have this in LTP anywhere |
Masatake YAMATO <yamato@redhat.com> |
Completed on 17/06/2008 |
|
77 |
lremovexattr |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
78 |
quotactl |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
79 |
setuid16 |
We have setuid at testcases/kernel/syscalls/setuid and testcases/kernel/syscalls/mount. You may need to include/port setuid16 on similar lines to sendfile64 and fadvise64 |
Subrata Modak |
Completed on 07/11/2008 |
80 |
fstat64 |
We have fstat at testcases/kernel/syscalls/fstat. You may need to include/port fstat64 on similar lines to sendfile64 and fadvise64 |
Subrata Modak |
Completed on 07/11/2008 |
81 |
setxattr |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
82 |
fstatat64 |
We have fstatat at testcases/kernel/syscalls/fstatat. You may need to include/port fstatat64 on similar lines to ssendfile64 and fadvise64 |
Subrata Modak |
Completed on 07/11/2008 |
83 |
lsetxattr |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
84 |
readahead |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
85 |
setfsgid16 |
We have setfsgid at testcases/kernel/syscalls/setfsgid. You may need to include/port setfsgid16 on similar lines to sendfile64 and fadvise64 |
Subrata Modak |
Completed on 07/11/2008 |
86 |
sgetmask |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
87 |
waitid |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
88 |
fstatfs64 |
We have fstatfs at testcases/kernel/syscalls/fstatfs. You may need to include/port fstatfs64 on similar lines to ssendfile64 and fadvise64 |
Subrata Modak |
Completed on 07/11/2008 |
89 |
getuid16 |
We have getuid at testcases/kernel/syscalls/getuid. You may need to include/port getuid16 on similar lines to sendfile64 and fadvise64 |
Subrata Modak |
Completed on 07/11/2008 |
90 |
getxattr |
We need this from Crackerjack as we do not have this in LTP anywhere |
Need Volunteer |
N/A |
91 |
lstat64 |
We have lstat at testcases/kernel/syscalls/lstat. You may need to include/port lstat64 on similar lines to sendfile64 and fadvise64 |
Subrata Modak |
Completed on 07/11/2008 |
92 |
setfsuid16 |
We have setfsuid at testcases/kernel/syscalls/setfsuid. You may need to include/port setfsuid16 on similar lines to sendfile64 and fadvise64 |
Subrata Modak |
Completed on 07/11/2008 |
Investigators may/need also to concentrate on the following points:
Investigate & understand what the testcase is supposed to do, and increase documentation content/comments on the same testcase,
Following Testcases are already part of LTP from 1st Jan 2008 till date
fallocate() syscall tests,
Filecaps tests,
CPU & Memory Controllers tests,
Message Queue (msgctl) test,
timerfd() syscall tests,
CPU and Memory Hotplug tests,
utimensat() syscall tests,
gettid() syscall tests,
Process Event Connectors tests,
io_cancel() syscall tests,
hackbench test,
io_destroy() syscall test,
io_getevents() syscall test,
io_setup() syscall test,
io_submit() syscall test,
IO Controllers tests,
move_pages() syscall test,
setgid16() syscall test,
ftruncate64() syscall test,
truncate64() syscall test,
RO Bind Mount tests,
eventfd() syscall tests,
get_robust_list() syscall tests,
set_robust_list() syscall tests,
sync_file_range() syscall tests,
setfsuid04 test for syscall setfsuid(