Commit Graph

5271 Commits

Author SHA1 Message Date
Peter Holm
90c5fd4875 stress2: Added a regression test 2022-01-16 07:48:55 +01:00
Peter Holm
5691cbec52 stress2: Added one more unionfs test 2022-01-16 07:33:45 +01:00
Peter Holm
3266a0c5d5 stress2: Added a new unionfs test scenario 2022-01-15 10:21:29 +01:00
Stefan Eßer
82bfeeff10 tools/portconflicts/port_conflicts_check.lua: detect port conflicts
This tool can be used to detect install conflicts (ports/packages that
conflict with each other because of identically named files).

MFC after:	3 days
2022-01-13 22:36:09 +01:00
Peter Holm
b1ddfd080a stress2: Updated the exclude list 2022-01-13 08:08:33 +01:00
Peter Holm
48031e6caf stress2: Added two new tests 2022-01-13 08:08:05 +01:00
Peter Holm
6b0ab59570 stress2: Added timeout to test. Added cleanup. 2022-01-13 08:07:25 +01:00
Jason A. Harmening
a565cc81c0 unionfs: add stress2 scenarios for write references
Add some test cases, based on the existing nullfs10 scenario, to
ensure that unionfs write references are propagated between the
unionfs and underlying vnodes, including unionfs copy-on-write
operations

Reviewed by: kib (prior version), markj, pho
Differential Revision: https://reviews.freebsd.org/D33729
2022-01-11 18:44:03 -08:00
John Baldwin
ebc1c24695 Remove redundant OLD_FILES entries for debug symbols.
Entries for foo.debug files matching an existing entry in OLD_FILES or
OLD_LIBS are unnecessary as they are auto-generated.

Reviewed by:	imp, emaste
Sponsored by:	The University of Cambridge, Google Inc.
Differential Revision:	https://reviews.freebsd.org/D33777
2022-01-11 11:38:45 -08:00
Andriy Gapon
7e8ed296e1 schedgraph.py: port to Python 3
The change does not preserve compatibility with Python 2.7.

MFC after:	4 weeks
Differential Revision:	https://reviews.freebsd.org/D33626
2022-01-11 15:32:39 +02:00
Peter Holm
bf48a958ad stress2: Aded two msdos FS fuzzer tests 2022-01-08 07:11:10 +01:00
Warner Losh
ef1b9270da net/if_pfsync.h: Add back to bad files
This file does not build for WITHOUT_PF sometimes. Looking at various
ways to cope (it exposes other issues too), but in the mean time just
add it back here to unbreak WITHOUT_PF in some scenarios.

Sponsored by:		Netflix
2022-01-07 09:39:13 -07:00
John Baldwin
78beb051a2 cryptocheck: Add aliases for algs with multiple key sizes.
Previously algorithms such as AES-CBC would provide an algorithm
without a key size for the smallest key size and additional algorithms
with an explicit key size, e.g. "aes-cbc" (128 bits), "aes-cbc192",
and "aes-cbc256".

Instead, always make the key size name explicit and reuse the
"generic" name to request running tests against all of the key sizes.
For example, for AES-CBC this means "aes-cbc128" is now the name of
the variant with a 128-bit key and "aes-cbc" runs tests of AES-CBC
with all three key sizes.

This makes it easier to run tests on all combinations of ciphers like
AES-GCM or AES-CCM with -z in a single invocation.

Reviewed by:	markj
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D33759
2022-01-06 14:46:50 -08:00
Peter Holm
dfc383201f stress2: Added new test cases 2022-01-05 10:27:29 +01:00
Kristof Provost
aa70361d86 headers: make a few more headers self-contained
Sponsored by:	Rubicon Communications, LLC ("Netgate")
2022-01-03 10:12:30 +01:00
Jessica Clarke
5b13fa7987 ufs: Rework shortlink handling to avoid subobject overflows
Shortlinks occupy the space of both di_db and di_ib when used. However,
everywhere that wants to read or write a shortlink takes a pointer do
di_db and promptly runs off the end of it into di_ib. This is fine on
most architectures, if a little dodgy. However, on CHERI, the compiler
can optionally restrict the bounds on pointers to subobjects to just
that subobject, in order to mitigate intra-object buffer overflows, and
this is enabled in CheriBSD's pure-capability kernels.

Instead, clean this up by inserting a union such that a new di_shortlink
can be added with the right size and element type, avoiding the need to
cast and allowing the use of the DIP macro to access the field. This
also mirrors how the ext2fs code implements extents support, with the
exact same structure other than having a uint32_t i_data[] instead of a
char di_shortlink[].

Reviewed by:	mckusick, jhb
Differential Revision:	https://reviews.freebsd.org/D33650
2022-01-02 20:55:36 +00:00
Warner Losh
20a0965182 kboot: Add docs for WITH/WITHOUT LOADER_KBOOT
Sponsored by:		Netflix
Suggestion by:		emaste
Differential Revision:	https://reviews.freebsd.org/D33512
2021-12-30 16:06:53 -07:00
Warner Losh
0c7a642ae8 tinybsd: Remove
This hasn't been updated in 10 years in any real way. It's time to
retire it. It hasn't worked in some time due to drivers being removed
starting in FreeBSD 10.  All the interesting bits have already been
hoisted into other parts of base. The google code site hasn't had any
commits since 2011 and claims to Target FreeBSD 5, 6, 7, and 8.

Should someone fix the numerous issues, it can be restored.

Sponsored by:		Netflix
Reviewed by:		brooks
Differential Revision:	https://reviews.freebsd.org/D33450
2021-12-30 15:57:22 -07:00
John Baldwin
dda9847275 depend-cleanup.sh: Handle stale libc++.so ldscripts.
libc++ was moved from /usr/lib to /lib, but the libc++.so linker
script is not regenerated when the value of SHLIB changes.

Reported by:	cy
2021-12-30 14:25:47 -08:00
John Baldwin
c3a688ef4d OCF: Hook up plain RIPEMD160 in cryptosoft and /dev/crypto.
Reviewed by:	markj
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D33612
2021-12-29 16:46:48 -08:00
Peter Holm
9a6201ac2f stress2: Fix "set-but-not-unused" warnings 2021-12-25 07:27:25 +00:00
Ed Maste
2ffb13149c nanobsd: sync base system ssh config files
Fixes:		e9e8876a4d ("ssh: update to OpenSSH v8.8p1")
Sponsored by:	The FreeBSD Foundation
2021-12-20 11:11:00 -05:00
Kristof Provost
e51be99e8a test-includes: update badfiles.inc
Rebuild badfiles.inc after recent fixes.

Sponsored by:	Rubicon Communications, LLC ("Netgate")
Differential Revision:	https://reviews.freebsd.org/D33506
2021-12-17 12:38:36 +01:00
Kristof Provost
2f3c018ba8 test-includes: use the same header set for badfiles.inc as for testing
This ensures we don't end up listing files we've excluded (e.g. those
starting with _).
Add a slight hack to preserve the existing order (sys, then net) in
badfiles.inc.

Reviewed by:	imp
Sponsored by:	Rubicon Communications, LLC ("Netgate")
Differential Revision:	https://reviews.freebsd.org/D33505
2021-12-17 12:38:35 +01:00
John Baldwin
a62478aa05 cryptocheck: Test Camellia-CBC cipher and RIPEMD-160 HMAC.
Reviewed by:	markj
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D33518
2021-12-16 13:48:39 -08:00
Warner Losh
7a171e3083 test-includes: Build a library instead of a binary
We need to build the .o's, but don't need to link. Build a static
library instead of a binary to accmoplish this. This removes the need to
have all the libc and crt stuff built, which is required for a
binary. In addition, trying to build a non-standard binary runs into
trouble with undefined symbols on arm related to EABI, even when using a
simplified startup with -nostdlib -e start.

Turn back on testing includes, now that it works.

Sponsored by:		Netflix
Reviewed by:		brooks, markj (prior version)
Differential Revision:	https://reviews.freebsd.org/D33452
2021-12-15 15:35:24 -07:00
Jessica Clarke
aee99ab4fe cross-build: Add comment missing from 9e5b0d9eac
Whilst the commit message documented some of the details, I had intended
to include this comment in the actual header, but failed to amend the
commit properly.

Fixes:		9e5b0d9eac ("cross-build: Fix bmake bootstrap with glibc 2.34")
MFC after:	1 week
2021-12-15 19:45:31 +00:00
Peter Holm
8296d2f9a3 stress2: Added new tests 2021-12-15 08:57:15 +00:00
Jessica Clarke
9e5b0d9eac cross-build: Fix bmake bootstrap with glibc 2.34
As of glibc 2.34, our unistd.h wrapper's inclusion of stdlib.h exposes
fragility in glibc's sys/wait.h and corresponding part of stdlib.h,
leading to "error: use of undeclared identifier 'WNOHANG'" and similar
errors when bootstrapping bmake.

Work around this by wrapping sys/wait.h to force stdlib.h's inclusion
first before it's implicitly included during the problematic window in
sys/wait.h.

MFC after:	1 week
2021-12-15 05:52:13 +00:00
Jessica Clarke
d752d10e53 cross-build: Add __weak_symbol definition for libdwarf bootstrap
Fixes:		3aa0bc89c6 ("libdwarf: Add a weak uncompress() symbol")
MFC after:	1 week
2021-12-15 04:36:11 +00:00
Warner Losh
aab8ed235a test-includes: add missing file
Fixes:		dd55767b86
Sponsored by:	Netflix
2021-12-14 21:05:27 -07:00
Warner Losh
dd55767b86 Test various header files to ensure they can be included by themselves.
A number of header files in sys/* have, going back to 7th Edition Unix
in 1979, reqiured other files (like sys/types.h) to compile. Likewise
the 4BSD networking code has had prerequisites. However, going back to
around the turn of the 21st century, other systems have made them be
independently include-able (wide-spread header include protection
post-dates 7th edition Unix by maybe 3 or so years judging from USENET
source postings). Start down the path of making them all independently
include-able by creating this test that fails buildworld when they are
not.

The file 'badfiles.inc' contains a list of the currently broken files
that cannot be included w/o any prerequisites. As files are fixed, 'make
badfiles.inc' should be re-run to remove them from the list. Note: All
files that start with an underscore are considered internal and not
tested.

Please note: once a file is removed from badfiles.inc, it must pass on
all architectures. Buildworld through at least the _includes target is
needed to ensure its working (though a buildkernel should also be done
on all architectures as well).

Sponsored by:		Netflix
Reviewed by:		brooks, markj
Differential Revision:	https://reviews.freebsd.org/D32498
2021-12-14 20:25:37 -07:00
Konstantin Belousov
4626aa7fda Add a tool to test AVX context integrity under ctx switches and signals (amd64)
Sponsored by:	The FreeBSD Foundation
MFC after:	1 week
2021-12-13 04:31:40 +02:00
Peter Holm
faa3605705 stress2: Remove tests from the exclude list 2021-12-11 10:45:11 +00:00
Peter Holm
a724ccf354 stress2: Disable aslr for this test to work 2021-12-11 10:43:30 +00:00
Peter Holm
8ebc232561 stress2: Save a copy of the program file for regression tests
Suggested by:	 kib
2021-12-11 06:07:04 +00:00
Mark Johnston
73db11a4d1 depend-cleanup.sh: Make the output message more precise
Sponsored by:	The FreeBSD Foundation
2021-12-07 13:01:05 -05:00
Mark Johnston
187fe192ce depend-cleanup.sh: Handle commit cbdec8db18
That commit changed libc to use the MI pdfork implementation, but with
an incremental build the object file for the pdfork.S stub lingers and
causes a linker error.

Cleaning the depend file is not enouch, so modify clean_deps() to remove
object files as well, and add a call to ensure that pdfork.*o is
cleaned.  The new file is _pdfork.o.

Reported by:	jhb
Reviewed by:	emaste
Fixes:		cbdec8db18 ("libc: Add pdfork to the list of interposed system calls")
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D33322
2021-12-07 12:59:35 -05:00
Jessica Clarke
e0cb1fe7dd cross-build: Provide _PASSWORD_EFMT1 for libcrypt on Linux
Linux's pwd.h does not define _PASSWORD_EFMT1 (macOS's does), so we need
to define it in order to be able to bootstrap libcrypt (crypt-des.c uses
it) on non-FreeBSD, which will be done in a subsequent commit.

MFC after:	1 week
2021-12-07 00:24:20 +00:00
Jessica Clarke
8ceba27a5d cross-build: Define crypt_data in unistd.h for libcrypt
This is where it's defined in the base system, so is where libcrypt
expects it to exist when being built, and will be needed when being
bootstrapped in a subsequent commit.

MFC after:	1 week
2021-12-07 00:24:19 +00:00
Jessica Clarke
8d5d329553 Bootstrap libz when cross-building from non-FreeBSD
This is needed now libdwarf depends on libz.

Fixes:		dbf05458e3 ("libdwarf: Support consumption of compressed ELF sections")
MFC after:	1 week
2021-12-06 19:16:28 +00:00
Jessica Clarke
7ba31d58f0 tools: Also create ${WORLDTMP}/legacy/usr/libdata/pkgonfig
This is needed for the next commit which will make libz a bootstrap
library as needed by ctfconvert. We could just not install the .pc file
as it's not needed, but that requires a per-library hack every time a
bootstrap library gains a .pc file, so this keeps bootstrap-tools
looking as much like a normal build as possible.

MFC after:	1 week
2021-12-06 19:16:27 +00:00
Jessica Clarke
5022d54e06 Makefile.boot: Fix copy/paste error in LIBNV's crossbuild override
Only noticed due to needing to change the surrounding lines, so
presumably nothing currently needs this.

MFC after:	1 week
2021-12-06 19:16:27 +00:00
Jessica Clarke
05066fad68 Makefile.boot: Make -Wno-typedef-redefinition Clang-specific
GCC doesn't have this warning and so also doesn't have the flag to
disable it, resulting in it spewing a bunch of warnings about the
command line option being unrecognised.

MFC after:	1 week
2021-12-06 19:16:26 +00:00
Peter Holm
e86b5a6234 stress2: This test runs for hours with ASLR enabled 2021-12-05 05:43:29 +00:00
John Baldwin
60a8277413 Only use OLD_LIBS with shared libraries.
Use OLD_FILES for a few symbolic links and static libraries previously
included in OLD_LIBS.

Add a missing shared library major number to an old libroken entry.
2021-12-02 17:30:00 -08:00
Herbert J. Skuhra
a58135eb09 OptionalObsoleteFiles.inc: Add rc.d/zfskeys
While here, sort the etc/rc.d entries.

PR:		256483
Reviewed by:	allanjude
Approved by:	allanjude (src)
MFC after:	3 days
Sponsored by:	Modirum MDPay
Sponsored by:	Klara Inc.
Differential Revision:	https://reviews.freebsd.org/D33238
2021-12-03 02:05:55 +01:00
Cy Schubert
db0ac6ded6 Revert "wpa: Import wpa_supplicant/hostapd commit 14ab4a816"
This reverts commit 266f97b5e9, reversing
changes made to a10253cffe.

A mismerge of a merge to catch up to main resulted in files being
committed which should not have been.
2021-12-02 14:45:04 -08:00
Cy Schubert
266f97b5e9 wpa: Import wpa_supplicant/hostapd commit 14ab4a816
This is the November update to vendor/wpa committed upstream 2021-11-26.

MFC after:      1 month
2021-12-02 13:35:14 -08:00
Ed Maste
145a574fa1 WITH_/WITHOUT_CXX: update description
Contrary to the previous description WITHOUT_CXX does not disable
/usr/bin/c++, which is just a link to Clang.  We also no longer have
gperf.

MFC after:	1 week
Sponsored by:	The FreeBSD Foundation
2021-12-02 11:30:22 -05:00