This summer, as a part of his GSoC 2016 project, Nahim El Atmani has implemented[1] a prototype of syscall fault injection. Fault injection is a testing/debugging technique which tampers the system calls made by a program in order to check (correctness of) program's behaviour in presence of errors. In case of strace, syscalls are mangled in order to return failures of different kinds (with a kind of failure signalled by appropriate errno).
Now, this feature has been finally merged into strace's master branch and going to be part of the upcoming 4.15 release, which is expected somewhere in the beginning on December (as some may recall, strace's release cycle is now synchronised with kernel releases). Since this functionality is rather unorthodox in comparison with other features already present in strace, strace's development team encourages all enthusiastic strace users to give it a try in order to determine its readiness for the upcoming release. More specifically: * Check out the provided documentation. Whether it is clear enough? If not, please suggest improvements. * Try to actually use it. During the course of its development, fault injection already enabled discovery of several bugs ([2], for example), and any feedback regarding various usage cases is appreciated. * Try it on different architectures. It has been tested on aarch64, alpha, arm, hppa, ia64, ppc, ppc64, s390, s390x, sparc, sparc64, x32, x86, and x86_64; other architectures are still untested. How to get it: * Check out master branch of strace repository[3][4]. * Install package from Fedora rawhide[5]. * Install package from OBS[6]. --- [1] https://brokenpi.pe/tools/strace-fault-injection [2] https://sourceware.org/bugzilla/show_bug.cgi?id=20831 [3] https://sourceforge.net/p/strace/code/ci/master/tree/ [4] https://github.com/strace/strace [5] https://apps.fedoraproject.org/packages/strace [6] https://build.opensuse.org/package/show/home:ldv_alt/strace/ ------------------------------------------------------------------------------ _______________________________________________ Strace-devel mailing list Strace-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/strace-devel