Improve syscall errors test Rework the test to first register with the original 32 byte ABI and then with the current feature size if it's greater. This ensures we test the 'legacy' registration size on newer kernels. Also add a test that registers an rseq area with a non-null rseq_cs pointer to a valid structure. This ensures we don't break compatibility with older libc that reuses rseq areas without clearing the rseq_cs pointer. Change-Id: Iefbf1a6fef77e3ae7bf1218ecff77b74a56dc180 Signed-off-by: Michael Jeanson <mjeanson@efficios.com> Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
by Mathieu Desnoyers
The following dependencies are optional:
./configure with --disable-numaThis source tree is based on the Autotools suite from GNU to simplify portability. Here are some things you should have on your system in order to compile the Git repository tree:
automake points to a recent version!)If you get the tree from the Git repository, you will need to run
./bootstrap
in its root. It calls all the GNU tools needed to prepare the tree configuration.
To build and install, do:
./configure make sudo make install sudo ldconfig
Note: the configure script sets /usr/local as the default prefix for files it installs. However, this path is not part of most distributions' default library path, which will cause builds depending on librseq to fail unless -L/usr/local/lib is added to LDFLAGS. You may provide a custom prefix to configure by using the --prefix switch (e.g., --prefix=/usr).
cd /path/to/kernel/sources make headers_install cd /path/to/librseq CPPFLAGS=-I/path/to/kernel/sources/usr/include ./configure make sudo make install sudo ldconfig
To run the test suite after a successful build:
make check
The default list of tests to run can be overriden by the TESTS variable:
make check TESTS="run_unregistered_test.tap"