commit a840a11cc381e7f3eedf233b82615c218add557e Author: Alberto Bertogli Date: Mon Jul 28 23:58:51 2014 +0100 libfiu 0.93 commit ed26a7c1209e3dd94b7fb85ff447c082cce7227c Author: Alberto Bertogli Date: Mon Jun 16 02:06:19 2014 +0100 preload/run: Add a dry-run option to fiu-run This patch adds a new option, -n, to make fiu-run show the command line instead of executing the program. It can be useful when you need to run things manually (for example, under gdb). commit 15d666d2d304b37801bbafa46a3794b717cf9251 Author: Alberto Bertogli Date: Mon Jun 16 01:37:10 2014 +0100 preload/posix: Make the objects depend on codegen.h The objects depend on codegen.h, but the Makefile doesn't know this, so they're not rebuild after codegen.h changes. This patch fixes that by adding the file as a dependency in Makefile. commit 2c0cea6ce62fa63686619f421cc34e10fa91319d Author: Alberto Bertogli Date: Sun Jun 15 15:54:35 2014 +0100 preload/posix: Add a POSIX_TRACE build flag To make it easier to turn tracing on and off in the posix profile, this patch adds a build-time flag for it. It's only useful for debugging. commit 2d3c20e0d6a86d078f5354cd5eb9fc8412a98a56 Author: Alberto Bertogli Date: Mon May 26 00:53:06 2014 +0100 preload/posix: Remove profile-generated files on "make clean" commit bd1a774315244ef4321dda64f83520824849fe64 Author: Alberto Bertogli Date: Fri May 23 02:01:29 2014 +0100 bindings/python: Add a fiu_ctrl.py module This patch adds a new Python module, fiu_ctrl.py, which implements similar functionality to the fiu-run and fiu-ctrl shell utilities, but it can be used from within Python to control tests. commit 76326ceb468758fac59ad86e5d6eac0def6d190b Author: Alberto Bertogli Date: Sun May 25 20:01:08 2014 +0100 tests: Introduce tests/utils This patch introduces basic tests for the command-line utilities (fiu-run, fiu-ls, fiu-ctrl). They are not intended to cover all of libfiu's capabilities, but mostly check remote control handling from those utilities. commit fa8ae484ebd9431c0fc326372cd4626ab6803a7d Author: Alberto Bertogli Date: Sun May 25 20:02:16 2014 +0100 libfiu: Add a tracing mode to help debugging This patch adds two tracing printf()s that are only enabled when using "make TRACE=1". They can be very useful for debugging issues, and the code complexity impact is minimal. commit 5e3a2b4357a5b4bed091f70418612b3682e06257 Author: Alberto Bertogli Date: Sun May 25 20:01:18 2014 +0100 utils/fiu-ctrl: Remove non-existent -l option from the documentation commit 7ad3ac426e79311c790e4e7fe05dc6080fbf3d21 Author: Alberto Bertogli Date: Sun May 25 14:42:33 2014 +0100 tests: Add a few basic tests Looking at the test coverage, there were a few simple things that the existing tests were not covering; this patch fixes some of those by adding a couple of basic but useful tests. commit 8b7b0b3234c86e0653d54ca2bcbecd1579a1b2c9 Author: Alberto Bertogli Date: Sun May 25 14:21:25 2014 +0100 Do not use the dummy backtrace on profiling builds When building with PROFILE=1, the current USE_DUMMY_BACKTRACE test fails because the compiler tries to write to /dev/null.gcno. This patch fixes it by making it write to a local file instead, which we then not use. It also adds the profiling files to .gitignore while at it. commit 46bd609ef1f76655c560e8fae16b55c858da133d Author: Alberto Bertogli Date: Sun May 25 13:45:09 2014 +0100 tests/generated: Add a test for strdup() This patch adds an auto-generated test for strdup(). Note overriding strdup() does not work on some platforms where the libc defines it as a macro; the test accounts for that and will be skipped with a warning in those cases. commit a99308ff6b981fc575838b839e20b2a78b459c15 Author: Alberto Bertogli Date: Sun May 25 13:44:21 2014 +0100 tests/generated: Fix pread's configuration header This patch fixes pread's configuration header, just for aesthetical purposes (it's not actually used at the moment). commit 841c13e7782696611ba7796b2bba3d2ab5303780 Author: Alberto Bertogli Date: Sun May 25 13:40:52 2014 +0100 tests/generated: Use #if instead of #ifdef This patch makes the generated tests use #if instead of #ifdef, as it is more generic and can allow for more complex expressions that will be needed in future tests. It also updates the existing tests to make use of it. commit 3edecb69d7a7f9fda67e13ddb4024062c4c314f0 Author: Alberto Bertogli Date: Fri Jan 24 00:05:36 2014 +0000 preadv() takes off_t, not off64_t Signed-off-by: Alberto Bertogli commit e88562d52adebc98aaf77842d35bac1e8b8c31bc Author: Alberto Bertogli Date: Thu Jan 23 23:55:44 2014 +0000 Only generate off64_t variants when using glibc The off64_t variants only make sense in a glibc environment, because they serve as a work around for a glibc LFS implementation trick. This patch adjust the code generation to surround the off64_t variants with Signed-off-by: Alberto Bertogli commit ab0f7062d80049e95a98c2aba99a01de2727e0e3 Author: Alberto Bertogli Date: Thu Jan 23 23:20:41 2014 +0000 Add tests for pread() and pread64() This patch adds simple autogenerated tests for pread() and pread64(). Both functions share the same failure point, and are generated using the off64_t variant mechanism, so this serves as a test for both the variant code generation as well as the build environment. Signed-off-by: Alberto Bertogli commit 855d84b4b48324bafee37a9136eec98e4aeb5d6e Author: Pavel Borzenkov Date: Wed Jan 22 13:21:01 2014 +0400 preload/posix: mark some functions with 'variant: off64_t' Mark functions that use off_t type with off64_t to generate their 64-bit counterparts. Also, define _LARGEFILE64_SOURCE for all the modules to expose off64_t type. Signed-off-by: Pavel Borzenkov commit a592b6fb5d73c111747fe9f39915c97d0894a2d8 Author: Pavel Borzenkov Date: Thu Jan 23 16:08:09 2014 +0400 preload/posix: add a way to generate 64-bit counterparts Some functions (for example, pread()) have their 64-bit counterparts for the case when off_t is 64-bit on 32-bit system (e.g. FILE_OFFSET_BITS=64 macro is defined). If the macro is defined, a binary will be linked with 64() symbol instead of () and libfiu won't be able to hook it. This might not be that important since 32-bit systems are rare now, but, despite the fact that feature_test_macros(7) man states that there is no effect on 64-bit system, there actually is. Even on 64-bit systems when FILE_OFFSET_BITS=64 is defined, 64() symbols is used instead of (). Since it is a good practice to actually define this macro, libfiu can't hook any of such functions. To fix this, add a special keyword "variant: off64_t" to function description and output two variants of a function if such a keyword is present. Signed-off-by: Pavel Borzenkov commit 707081e93556c8a3233bfb434b3c270eaf89f9f7 Author: Pavel Borzenkov Date: Wed Jan 22 13:20:59 2014 +0400 preload/posix: correct sync_file_range() prototype sync_file_range() always use 64-bit types for offset regardless of host arch or _FILE_OFFSET_BITS macro. Signed-off-by: Pavel Borzenkov commit 6a1cd97805666f5fc62e6dc8065d0932a2158e3f Author: Pavel Borzenkov Date: Wed Jan 22 13:20:58 2014 +0400 preload/posix: add preadv()/pwritev() to posix.io Signed-off-by: Pavel Borzenkov commit 76c4fd2c5f3fba5638befe26484863bec7001203 Author: Pavel Borzenkov Date: Wed Jan 22 13:20:57 2014 +0400 preload/posix: correct errnos in some posix.io functions - read()/readv() can't set EOVERFLOW, drop it. - pread()/pwrite() can return ENXIO (from lseek(2)), add it. - all write functions can return EDQUOT which is quite an important error code, add it. Signed-off-by: Pavel Borzenkov