Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Further testsuite speedups and fixes #860

Draft
wants to merge 24 commits into
base: dev
Choose a base branch
from
Draft

Conversation

arichardson
Copy link
Member

No description provided.

@arichardson arichardson changed the base branch from master to dev December 11, 2020 17:10
@arichardson arichardson changed the title Futher testsuite speedups and fixes Further testsuite speedups and fixes Dec 11, 2020
@arichardson arichardson marked this pull request as draft December 11, 2020 17:16
@arichardson arichardson force-pushed the more-testsuite-speedup branch from da44680 to 4c6161c Compare December 11, 2020 18:44
@arichardson arichardson force-pushed the more-testsuite-speedup branch from 04d9f30 to 182cf3a Compare December 22, 2020 10:45
@arichardson arichardson force-pushed the more-testsuite-speedup branch from 182cf3a to 914d686 Compare January 25, 2021 20:54
@arichardson arichardson marked this pull request as ready for review January 25, 2021 20:57
@arichardson arichardson force-pushed the more-testsuite-speedup branch from 914d686 to c924cbf Compare January 27, 2021 15:55
@arichardson arichardson mentioned this pull request Jan 28, 2021
10 tasks
This just slows down running the testsuite, and we are unlikely to
download these coredumps since we can just manually run the individual
failing tests.
Summary:
These files were not installed in r367350, so the testsuite has been
failing since then. I noticed this while comparing looking at the CheriBSD
test results and saw that these two tests were also failing upstream.

Reviewers: se

Subscribers: imp

Differential Revision: https://reviews.freebsd.org/D27568
@arichardson arichardson force-pushed the more-testsuite-speedup branch from fedfcd3 to f781fb3 Compare July 25, 2021 10:50
@arichardson arichardson marked this pull request as draft July 25, 2021 10:50
arichardson and others added 16 commits July 25, 2021 11:51
Many of these are broken/flaky and would take many hours to run on QEMU
On slow systems (e.g. QEMU), we might get a single SIGCHILD, so we'd have
to perform multiple waitpid() calls in the signal handler. Instead of
changing the signal handler, just call waitpid in the test function instead.
This is less fragile and also simplifies the tests.
It appears that the stackframe layout is slightly different, so we can
actually overflow the buffer by up to 8 bytes without SSP detecting it.
Also use an _Atomic(int) for cross-thread communication.
These tests are basic fuzz tests that permute input to trigger crashes
rather than regression or unit tests. Additionally, some of them take a
rather long time to run and should probably be run on a dedicated fuzzing
job instead. Moreover, these simple tests use rand() instead of a real
fuzzing tool that generates interesting inputs (e.g. LLVM libFuzzer) so are
unlikely to find anything interesting when run in CI.

This allows removing one BROKEN_TESTS case due to timeouts and speeds up
running tests on emulated platforms such as QEMU.

Reviewed By:	lwhsu, mm
Differential Revision: https://reviews.freebsd.org/D27153

(cherry picked from commit 3454fa1)
This fixes -Wcast-align warnings caused by the underaligned `struct ip`.
This also silences them in the public functions by changing the function
signature from char * to void *. This is source and binary compatible and
avoids the -Wcast-align warning.

Reviewed By:	ae, gbe (manpages)
Differential Revision: https://reviews.freebsd.org/D27882

(cherry picked from commit bc596e5)
This fixes some sign-compare warnings and adds a missing static to a
variable declaration.

Differential Revision: https://reviews.freebsd.org/D27883

(cherry picked from commit be59726)
In the CheriBSD CI, we run the testsuite with /tmp as tmpfs. This causes
the extattr audit tests to fail since tmpfs does not (yet) support
extattrs. XFAIL those tests if the target path is on a tmpfs mount.

While touching these two files also convert the ATF_REQUIRE_EQ(-1, checks
to use ATF_REQURIE_ERRNO().
Right now they are only cleaned up on success.
This fixes the closefrom test in sys/audit.

Includes cherry-picks of the following commits from openbsm:

openbsm/openbsm@4dfc628
openbsm/openbsm@99ff6fe
openbsm/openbsm@da48a03
This makes the `kyua report --verbose` output a lot easier to parse when
looking at failed tests.
Each of the 400+ audit tests end up running logger at least once. I'm not
sure using casper for a tool that opens syslog and writes a single message
is particularly useful.
…n tmpfs

It appears tmpfs does not handle this case (it works on a UFS mount)
This avoids a SIGILL when running these tests on QEMU.
This fixes running the du tests with /tmp as tmpfs.
To avoid ENOTCAPABLE errors later. This fixes capsicum-test's mmap tests.
See contrib/capsicum-test/capability-fd.cc
@arichardson arichardson force-pushed the more-testsuite-speedup branch from f781fb3 to e868426 Compare July 25, 2021 10:52
@paulmetzger paulmetzger deleted the more-testsuite-speedup branch July 11, 2022 10:37
@jrtc27 jrtc27 restored the more-testsuite-speedup branch July 11, 2022 14:53
@jrtc27 jrtc27 reopened this Jul 11, 2022
@jrtc27
Copy link
Member

jrtc27 commented Aug 16, 2023

Are any of these still needed, or was everything useful upstreamed?

@arichardson
Copy link
Member Author

Hmm I believe there were a few that might be relevant, let me see what remains when I rebase

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants