Commit Graph

5054 Commits

Author SHA1 Message Date
John Baldwin
c86de1dab8 cryptocheck: Expand the set of sizes tested by -z.
Test individual sizes up to the max encryption block length as well as
a few sizes that include 1 full block and a partial block before
doubling the size.

Reviewed by:	cem, markj
Sponsored by:	Netflix
Differential Revision:	https://reviews.freebsd.org/D29518
2021-04-01 15:49:07 -07:00
Vincenzo Maffione
51cc31088b netmap: bridge: fix transmission in busy-wait mode
In busy-wait mode (BUSYWAIT defined), NIOCTXSYNC should be
performed after packets have been moved to the TX ring
(rather than before).
Before the change, moved packets may stall for an indefinite
time in the TX ring.

MFC after:	1 week
2021-03-30 06:24:56 +00:00
Vincenzo Maffione
27bf5dd3d4 netmap: pkt-gen: allow -Z and -z to be used together
These options are used for generating random source/destination
IP/ports within transmitted packets.

MFC after:	1 week
2021-03-30 06:18:46 +00:00
Alex Richardson
142cb88bc6 git-arc.sh: Make it compatible with Ubuntu 18.04
dash does not allow function names containing a ":", so replace it with
a '_'. Additionally, Ubunutu 18.04 ships git 2.17 which does not support
the `--default false` flag for git config.

Reviewed By:	markj
Differential Revision: https://reviews.freebsd.org/D29374
2021-03-25 11:17:58 +00:00
Alex Richardson
4fd0c6ab1a Fix most shellcheck warnings in git-arc.sh
Mostly adding quotes and replacing egrep/fgrep with grep -E/grep -F

Reviewed By:	markj
Differential Revision: https://reviews.freebsd.org/D29373
2021-03-25 11:17:32 +00:00
Alex Richardson
c8c62548bf Don't add -Winline for WARNS=6
This warning is very rarely useful (inline is a hint and not mandatory).
This flag results in many warnings being printed when compiling C++
code that uses the standard library with GCC.

This flag was originally added in back in r94332 but the flag is a no-op
in Clang ("This diagnostic flag exists for GCC compatibility, and has no
effect in Clang"). Removing it should make the GCC build output slightly
more readable.

Reviewed By:	jrtc27, imp
Differential Revision: https://reviews.freebsd.org/D29235
2021-03-22 11:55:45 +00:00
Alex Richardson
2b181156c8 tools/build/make.py: Avoid calling brew --prefix on macOS unnecessarily
If all the require variables (XCC/XCXX/XCPP/XLD) are already set in the
environment, we don't have to infer a default value for the cross toolchain
path. This avoids an additional `brew --prefix` call when building with
cheribuild (since it already sets all these variables).
2021-03-22 11:55:07 +00:00
Peter Holm
e54257d92a stress2: Updated the exclude list 2021-03-22 11:32:05 +01:00
Peter Holm
6d5586da63 stress2: Added two syzkaller reproducers. 2021-03-22 11:26:39 +01:00
Dimitry Andric
15deee52d6 Move GH_BC ObsoleteFiles.inc section to OptionalObsoleteFiles.inc
Optional features belong in the latter file, and should be tested using:

.if ${MK_FEATURE} == no
[...]
.endif
2021-03-20 23:15:01 +01:00
Jessica Clarke
8c9e45503f tools/build: Improve host-symlinks failure mode
Since set -e is enabled by sys.mk, if the tool cannot be found in PATH
then the entire shell command line fails, causing us to not print the
error message below and instead silently (due to the @) fail, only
getting the usual "Error code 1" print from bmake. Thus, provide a dummy
default that will never exist (the same as is used by meta2deps.sh) if
which fails so that we get the error message as intended.

MFC after:	1 week
2021-03-20 13:00:34 +00:00
Emmanuel Vadot
c7e6cb9e08 pkgbase: Add an src.conf option for splitting man pages
Man pages can be big in total, add an options to split man pages
in -man packages so we produce smaller packages.
This is useful for small jails or mfsroot produced of pkgbase.
The option is off by default.

Reviewed by:	bapt, Mina Galić <me@igalic.co>
Differential Revision:	https://reviews.freebsd.org/D29169
MFC after:      2 weeks
2021-03-16 07:13:09 +01:00
Peter Holm
cefb959e18 stress2: Update expetced errno 2021-03-15 12:16:52 +01:00
Peter Holm
f619b21d0f stress2: Fix usage of unitializer data 2021-03-15 12:00:01 +01:00
Gordon Bergling
5666643a95 Fix some common typos in comments
- occured -> occurred
- normaly -> normally
- controling -> controlling
- fileds -> fields
- insterted -> inserted
- outputing -> outputting

MFC after:	1 week
2021-03-13 18:26:15 +01:00
Peter Holm
e0fd837a30 stress2: open(2) tests with BENEATH flags.
Update tests to reflect the changes of "open(2): Remove O_BENEATH and
AT_BENEATH" in 20e91ca36a.
2021-03-08 09:19:37 +01:00
John Baldwin
442a293611 cryptocheck: Free generated IV after each GMAC test.
Reviewed by:	cem
Sponsored by:	Netflix
Differential Revision:	https://reviews.freebsd.org/D28753
2021-03-03 15:20:57 -08:00
John Baldwin
68c0373448 cryptocheck: Add support for the Poly1305 digest.
Sponsored by:	Netflix
Differential Revision:	https://reviews.freebsd.org/D28758
2021-03-03 15:20:56 -08:00
John Baldwin
e6cfd2939a Remove the usr/tests/usr.bin/yacc/yacc directory when removing yacc.
MFC after:	1 week
2021-03-03 14:46:45 -08:00
Mark Johnston
c113740f26 git-arc.1: Fix synopsis for the "update" verb 2021-03-03 17:01:04 -05:00
Mark Johnston
c49b075305 git-arc: Handle commit ranges in the "update" verb
Reported by:	imp
2021-03-03 17:00:58 -05:00
Peter Holm
8a272653d9 stress2: Initial import
Discussed with:	 kib
2021-03-03 15:11:40 +01:00
Kyle Evans
e4d63c5d5f Remove fmtree(8)
fmtree(8) deprecation was announced on February 12, 2021, and no longer
built by default as of that date.  The deprecation notice was merged
back to stable/12 and stable/13 + releng/13.0.

Continue with the plan by finishing the removal.

Relnotes:	yes
2021-03-02 15:22:05 -06:00
Alex Richardson
10f2a0c2e8 Silence a macro-redefined warning when crossbuilding
This is already defined by the ncurses headers, so just undef it before
defining it again.
2021-03-01 14:22:47 +00:00
Alex Richardson
a26ace4db6 tools/build/make.py: Don't call brew --prefix if --cross-bindir is set
Also updated the logic to use subprocess.run() instead of the old
subprocess.getoutput() which also includes stderr and therefore
can trigger an exception inside Path().exists().

Reported by:	gnn
2021-03-01 12:53:46 +00:00
Ed Maste
aa8ae5fe17 git hooks: add "Fixes" trailer to commit message template
A number of projects use "Fixes: <hash>" to identify a commit that is
fixed by a given change.  Adopt that convention.

Differential Revision:	https://reviews.freebsd.org/D28693
2021-02-22 10:29:56 -05:00
John Baldwin
1bd9fc96d4 cryptocheck: Add Chacha20-Poly1305 AEAD coverage.
- Make openssl_gcm_encrypt generic to AEAD ciphers (aside from CCM)
  and use it for Chacha20-Poly1305.

- Use generic AEAD control constants instead of GCM/CCM specific names.

Reviewed by:	cem
Sponsored by:	Netflix
Differential Revision:	https://reviews.freebsd.org/D27838
2021-02-18 09:26:32 -08:00
Mark Johnston
cd6114d1a6 git-arc: Preserve the commit author when staging commits
Reported by:	jhb
2021-02-18 11:00:09 -05:00
Mark Johnston
57ba8673d7 git-arc: Globally save and restore the git checkout head
This script uses -e, so it's prone to exiting in awkward places.  In
particular, if arc diff fails, the script just exits without restoring
the checkout.

Mitigate this for now by using a global variable to record the previous
checkout and use a trap handler to restore it in the face of errors.  A
better solution might be to use arc diff's --head parameter but that
will require more testing.

Reported by:	kevans
Reviewed by:	jhb
Differential Revision:	https://reviews.freebsd.org/D28631
2021-02-18 11:00:09 -05:00
Alex Richardson
962a3814d4 Fix bootstrap tools build on macOS after 02af91c52e
After changing the namespace.h header we need to provide _err on macOS, too.
Previously we used the system libc err*/warn*, but that does not provide
_err/_warn (which is used by other bootstrapped files from libc).
To fix this problem bootstrap err.c on macOS as well.

Fixes:		02af91c52 (Fix crossbuild bootstrap tools build with Clang 12)
2021-02-17 16:35:14 +00:00
Alex Richardson
02af91c52e Fix crossbuild bootstrap tools build with Clang 12
Clang 12 no longer allows re-defining a weak symbol as non-weak. This
happed here because we compile err.c with _err defined to err. To fix
this, use the same approach as the libc namespace.h
2021-02-17 09:54:59 +00:00
Alex Richardson
88db1cc9f1 tools/build/make.py: drop workaround for cc --version not being parsed
Previously bsd.compiler.mk was not able to detect the compiler type for
Ubuntu's /usr/bin/cc unless we were invoking the /usr/bin/gcc symlink.
This problem has been fixed by 9c6954329a
so we can drop the workaround from make.py.

Reviewed By:	jrtc27
Differential Revision: https://reviews.freebsd.org/D28323
2021-02-13 13:54:25 +00:00
Kyle Evans
c975494ad7 build: turn off FMTREE by default to prepare for removal
nmtree is derived from fmtree, and has been the default mtree(8) since
6adfbbbf16, a little over a year after its introduction.

fmtree has not seen any substantial work since then, except for build
fixes and runtime issues that were diagnosed in nmtree and backported
because this was still in the tree.

Turn it off by default.

Reviewed by:	bdrewery, brooks, cy, emaste
Differential Revision:	https://reviews.freebsd.org/D28573
2021-02-12 23:16:06 -06:00
Daniel Ebdrup Jensen
5ae8b01832 git-arc(1): Fix nits pointed out in final review
Pointy hat to:	me
2021-02-12 23:39:00 +01:00
Daniel Ebdrup Jensen
30f78a063e git-arc(1): Add manual page
Add manual page based on the usage in the script with a few changes and
hook it up to the build.

Reviewed by:	0mp, markj
Differential Revision:	https://reviews.freebsd.org/D28519
2021-02-12 23:35:02 +01:00
Mark Johnston
62374dfa0f git-arc: Use a separate message file
Rather than putting revision metadata in .git/arc/create-message, create
a tmpfile and use that.  Otherwise arc diff always prompts about it and
in some cases complains because its standard input is piped.

Reported by:	imp
Differential Revision:	https://reviews.freebsd.org/D28614
2021-02-12 15:58:17 -05:00
Daniel Ebdrup Jensen
d242f782c2 prepare-commit-msg: Remove blank character
Approved by:	emaste@ (maintainer)
2021-02-08 20:18:39 +01:00
Mark Johnston
3279329b2d tools/git: Add git-arc
This is a handy script for creating and updating Differential revisions
from git commits.  It tries to avoid forcing the user to manage their
git tree in any particular way, but makes two major assumptions:
- there is a one-to-one mapping between git commits and Differential
  revisions,
- the title of a Differential revision is the same as the summary line
  of the corresponding commit.

A verbose description of the script's functionality is provided in its
usage message, which should probably be converted to a man page.

A description of workflows using git-arc is here:
https://lists.freebsd.org/pipermail/freebsd-hackers/2021-January/056979.html

There are some loose ends but this is functional enough to be useful.

Discussed with:	jhb
Differential Revision:	https://reviews.freebsd.org/D28334
2021-02-05 09:47:05 -05:00
Alex Richardson
43e083be81 tools/build/make.py: -DNO_CLEAN -> -DWITHOUT_CLEAN 2021-02-03 17:06:07 +00:00
Ed Maste
9d0f1092cf git hooks: add "Tested by" to commit message template
Reported by:	mjg
Reviewed by:	imp
Sponsored by:	The FreeBSD Foundation
2021-02-02 13:41:08 -05:00
Konstantin Belousov
ff975f15d8 WITH_OFED build option: fix
Userspace has OFED build enabled for quite some time, but kernel modules
were not. This is useless config because any userspace IB code requires
kernel support. So enable modules build by default.

Move WITH_OFED to WITHOUT_OFED since defaults are now enabled.

Reviewed by:	emaste, hselasky, kevans
MFC after:	3 days
Sponsored by:	NVidia Networking / Mellanox Technologies
Differential Revision:	https://reviews.freebsd.org/D28460
2021-02-02 18:44:52 +02:00
Alex Richardson
5cf6f1c4bc Remove the MK_LIBCPLUSPLUS option
This option has been equivalent to any form of C++ support since libstdc++
was removed. Therefore, replace all MK_LIBCPLUSPLUS uses with MK_CXX.

Reviewed By:	emaste
Differential Revision: https://reviews.freebsd.org/D27974
2021-02-01 09:32:07 +00:00
Kyle Evans
8eeeee38f4 tools: boot: use four jobs for building stand
Parallel builds of stand should be assumed both possible and safe as of
7012461c9b, so let's start using some jobs to speed up lualoader test
harness builds.
2021-01-31 10:11:41 -06:00
Ed Maste
6955737522 Remove unused GNUCXX option descriptions
Missed from 57f804675e

Reported by:	arhchardson in D27974
Sponsored by:	The FreeBSD Foundation
2021-01-30 12:47:33 -05:00
Kyle Evans
7587d9823a build: options: mention ports in the WITH_OPENLDAP description
There's a third party dependency on this option; currently,
net/openldap24-{,sasl-}client.  At least mention that an openldap from ports
is needed for this option.

PR:		252866
Reported-by:	Build Option Survey via Michael Dexter
MFC-after:	3 days
2021-01-30 10:41:52 -06:00
John Baldwin
aa906e2a49 OpenSSL: Support for kernel TLS offload (KTLS)
This merges upstream patches from OpenSSL's master branch to add
KTLS infrastructure for TLS 1.0-1.3 including both RX and TX
offload and SSL_sendfile support on both Linux and FreeBSD.

Note that TLS 1.3 only supports TX offload.

A new WITH/WITHOUT_OPENSSL_KTLS determines if OpenSSL is built with
KTLS support.  It defaults to enabled on amd64 and disabled on all
other architectures.

Reviewed by:	jkim (earlier version)
Approved by:	secteam
Obtained from:	OpenSSL (patches from master)
MFC after:	1 week
Relnotes:	yes
Sponsored by:	Netflix
Differential Revision:	https://reviews.freebsd.org/D28273
2021-01-28 10:24:13 -08:00
Marius Strobl
84876bf702 build: remove NDIS option
ndis(4) has been removed in bfc99943b0.
2021-01-26 22:59:36 +01:00
Brooks Davis
bfc99943b0 ndis(4): remove as previous announced
nids(4) was a clever idea in the early 2000's when the market was
flooded with 10/100 NICs with Windows-only drivers, but that hasn't been
the case for ages and the driver has had no meaningful maintenance in
ages. It only supports Windows-XP era drivers.

Also remove:
 - ndis support from wpa_supplicant
 - ndiscvt(8)

Reviewed By:	emaste, bcr (manpages)
Differential Revision:	https://reviews.freebsd.org/D27609
2021-01-25 21:45:03 +00:00
Alexander Richardson
a8b20f4fab Create symlinks to host tools on non-FreeBSD hosts
This is unnecessary when cross-building from Linux/macOS.
Additionally, cp -p appears to be broken on macOS Big Sur
(https://openradar.appspot.com/8957219).

For some unknown reason this commit appears to fix
freezes when building on macOS Big Sur.
This also fixes building in docker with volume mounts
with ACLs, since setting the ACL with cp -p fails otherwise.

Obtained From:	CheriBSD
Tested By:	gnn (macOS Big Sur), Nathaniel Wesley Filardo (docker)
Reviewed By:	jrtc27, imp
Differential Revision: https://reviews.freebsd.org/D28267
2021-01-25 15:09:43 +00:00
Ed Maste
b23665f316 Remove Binutils from src.conf(5) option descriptions
All binutils remnants have been removed before FreeBSD 13.

PR:		252842
MFC after:	3 days
Sponsored by:	The FreeBSD Foundation
2021-01-24 12:22:01 -05:00