Introduction
LTP is freely available testsuite used for validating the reliability and stability of Linux systems. It has functionality, stress as well as regression tests. Thus far it has been mainly run on Linux systems running glibc for C library, and its natural that there will be areas in the project which would have assumptions on glibc coded in. We have ported LTP to run on MUSL based systems. The patches are still being upstreamed. A recent series is ported to LTP mailing list
http://lists.linux.it/pipermail/ltp/2016-July/002259.html
Patches
LTP patches are currently residing on a branch ‘oe/master’ on git://github.com/kraj/ltp repository, There still are few more patches in addition to above patchset ported to mailing list.
Building and Running LTP
Prerequisites
LTP depends on ftw library and we need to install external ftw on musl based systems
On OpenEmbedded based systems just add “libfts-dev” to IMAGE_INSTALL
Building
git clone git://github.com/kraj/ltp -b oe/master cd ltp make autotools ./configure --without-numa --without-tirpc --with-power-management-testsuite --with-realtime-testsuite make LIBC=musl -j8 all make LIBC=musl install rm /opt/ltp/testcases/bin/getdents01
getdents01 runs into infinite loop and fills the disk. This would install the ltp test suite under /opt/ltp
Running
hst=`hostname` /opt/ltp/runltp -p -l "${hst}-$(date +%FT%T).log" -o "${hst}-$(date +%FT%T).out"
Conclusion
We can build and execute the testsuite on raspberryPI3, however the results dont look good. Many tests fail. Here are results of a run on raspberrypi3 running OpenEmbedded/Yocto
https://uclibc.org/~kraj/LTP_RUN_ON-2016_07_22-04h_19m_30s.log