12146 Commits

Author SHA1 Message Date
Tobias Rehbein
815209920f rc.conf(5): Remove left-over variables
ipv6_ipfilter_rules was obsoleted because of ipfilter was updated, and
rc_parallel_start was reverted to undergo further refinement.

PR:		254398
Fixes:		e2ad10e84792, f61831d2e8bd
2021-03-21 01:08:36 +01:00
Evgeniy Khramtsov
8ef03ce6db
development(7): mention the Git mirror list in the manual page
MFC after:	3 days
Differential Revision:	https://reviews.freebsd.org/D29234
2021-03-19 20:52:21 +08:00
Daniel Ebdrup Jensen
794f9f43c8 rc.conf(5): Bump date on .Dd
Pointy hat to:	me
Reported by:	lwhsu
2021-03-19 04:52:26 +01:00
John Baldwin
c853c53d02 Add Chacha20+Poly1035 to the list of AEAD algorithms.
Sponsored by:	Netflix
2021-03-18 13:33:11 -07:00
Tobias Rehbein
c39dda8192 rc.conf(5): Document the 'workstation' firewall_type
Document the workstation ACL ruleset, which uses stateful rules.

While here, add a note about where some of the undocumented variables
can be found. This is not a perfect solution for bug 127359, but it at
at least gives a place to go look, and can be used as a reference for
when bug 127359 gets fixed properly.

PR:		254358, 127359
2021-03-18 18:39:24 +01:00
Li-Wen Hsu
53844d3ea4
Clarify that the new STABLE branch is branched off CURRENT, not renamed
Reviewed by:	emaste
Differential Revision:	https://reviews.freebsd.org/D29317
2021-03-18 17:16:16 +08:00
Kyle Evans
f187d6dfbf base: remove if_wg(4) and associated utilities, manpage
After length decisions, we've decided that the if_wg(4) driver and
related work is not yet ready to live in the tree.  This driver has
larger security implications than many, and thus will be held to
more scrutiny than other drivers.

Please also see the related message sent to the freebsd-hackers@
and freebsd-arch@ lists by Kyle Evans <kevans@FreeBSD.org> on
2021/03/16, with the subject line "Removing WireGuard Support From Base"
for additional context.
2021-03-17 09:14:48 -05:00
Ka Ho Ng
c96151d335 Implement sndstat nvlist-based enumeration ioctls.
These ioctl commands aim to provide easier ways for user space
applications to enumerate existing audio devices and the node they can
potentially use.

The exchange of device lists between user space and kernel is done on
nv(9). Some ioctl commands are added to /dev/sndstat node:
  - SNDSTAT_REFRESH_DEVS
  - SNDSTAT_GET_DEVS
  - SNDSTAT_ADD_USER_DEVS
  - SNDSTAT_FLUSH_USER_DEVS

Bump __FreeBSD_version to reflect the addition of the ioctls.

Sponsored by:	The FreeBSD Foundation
Reviewed by:	hselasky
Approved by:	philip (mentor)
Differential Revision:	https://reviews.freebsd.org/D26884
2021-03-17 19:05:43 +08: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
Kyle Evans
74ae3f3e33 if_wg: import latest fixup work from the wireguard-freebsd project
This is the culmination of about a week of work from three developers to
fix a number of functional and security issues.  This patch consists of
work done by the following folks:

- Jason A. Donenfeld <Jason@zx2c4.com>
- Matt Dunwoodie <ncon@noconroy.net>
- Kyle Evans <kevans@FreeBSD.org>

Notable changes include:
- Packets are now correctly staged for processing once the handshake has
  completed, resulting in less packet loss in the interim.
- Various race conditions have been resolved, particularly w.r.t. socket
  and packet lifetime (panics)
- Various tests have been added to assure correct functionality and
  tooling conformance
- Many security issues have been addressed
- if_wg now maintains jail-friendly semantics: sockets are created in
  the interface's home vnet so that it can act as the sole network
  connection for a jail
- if_wg no longer fails to remove peer allowed-ips of 0.0.0.0/0
- if_wg now exports via ioctl a format that is future proof and
  complete.  It is additionally supported by the upstream
  wireguard-tools (which we plan to merge in to base soon)
- if_wg now conforms to the WireGuard protocol and is more closely
  aligned with security auditing guidelines

Note that the driver has been rebased away from using iflib.  iflib
poses a number of challenges for a cloned device trying to operate in a
vnet that are non-trivial to solve and adds complexity to the
implementation for little gain.

The crypto implementation that was previously added to the tree was a
super complex integration of what previously appeared in an old out of
tree Linux module, which has been reduced to crypto.c containing simple
boring reference implementations.  This is part of a near-to-mid term
goal to work with FreeBSD kernel crypto folks and take advantage of or
improve accelerated crypto already offered elsewhere.

There's additional test suite effort underway out-of-tree taking
advantage of the aforementioned jail-friendly semantics to test a number
of real-world topologies, based on netns.sh.

Also note that this is still a work in progress; work going further will
be much smaller in nature.

MFC after:	1 month (maybe)
2021-03-14 23:52:04 -05:00
Ryan Libby
3e5e9939cd ddb: enable the use of ^C and ^S/^Q
This lets one interrupt DDB's output, which is useful if paging is
disabled and the output device is slow.

This follows a previous implementation in svn r311952 / git
5fddef79998678d256ba30316353393b4d8ebb32 which was reverted because it
broke DDB type-ahead.

Now, try this again, but with a 512-byte type-ahead buffer.  While there
is buffer space, control input is handled and non-control input is
buffered.  When the buffer is exhausted, the default is to print a
warning and drop further non-control input in order to continue handling
control input.  sysctl debug.ddb.prioritize_control_input can be set to
0 to instead preserve all input but lose immediate handling of control
input.  This could for example effect pasting of a large script into the
ddb console.

Suggested by:	Anton Rang <rang@acm.org>
Reviewed by:	markj
Discussed with:	imp
Sponsored by:	Dell EMC Isilon
Differential Revision:	https://reviews.freebsd.org/D28676
2021-03-14 16:04:27 -07:00
Gordon Bergling
183502d162 Fix a few typos in comments
- trough -> through

MFC after:	1 week
2021-03-13 16:37:28 +01:00
Kristof Provost
51dc8e7f68 Document that uma_zfree_pcpu() allows NULL now
While here also document that for counter_u64_free().

Reviewed by:	rpokala@
MFC after:	1 week
Sponsored by:	Rubicon Communications, LLC ("Netgate")
Differential Revision:	https://reviews.freebsd.org/D29215
2021-03-12 12:12:35 +01:00
Edward Tomasz Napierala
d28cbb7944 development(7): update to reflect Git transition
Reviewed By:	debdrup, imp (earlier version)
Sponsored By:	EPSRC
Differential Revision:	https://reviews.freebsd.org/D28939
2021-03-11 20:07:53 +00:00
Warner Losh
c22076b528 man: Remove obsolete info from hosts man page
The NIC no longer provides a host database, and hasn't for quite some
time. Remove that paragraph, it's not been relevant for many years. Also, hosts
appeared in 4.1c, not 4.2, so correct that too.

Noticed by: Henry Bent
2021-03-11 11:46:10 -07:00
Warner Losh
e52368365d config_intrhook: provide config_intrhook_drain
config_intrhook_drain will remove the hook from the list as
config_intrhook_disestablish does if the hook hasn't been called.  If it has,
config_intrhook_drain will wait for the hook to be disestablished in the normal
course (or expedited, it's up to the driver to decide how and when
to call config_intrhook_disestablish).

This is intended for removable devices that use config_intrhook and might be
attached early in boot, but that may be removed before the kernel can call the
config_intrhook or before it ends. To prevent all races, the detach routine will
need to call config_intrhook_train.

Sponsored by:		Netflix, Inc
Reviewed by:		jhb, mav, gde (in D29006 for man page)
Differential Revision:	https://reviews.freebsd.org/D29005
2021-03-11 09:45:10 -07:00
Oskar Holmund
7d4a5de84d share/man/man9/pwmbus.9 fix types in arguments
Fix the types of period and duty in share/man/man9/pwmbus.9 to match the one in sys/dev/pmw/pwmbus.c.

Reviewed By: rpokala
Differential Revision: https://reviews.freebsd.org/D29139
MFC after:   3 days
2021-03-11 09:57:04 +01:00
Kyle Evans
ce53f92e6c wg(4): note the persistent-keepalive ifconfig(8) option
MFC after:	3 days
Fixes:	b3dac3913dc9
2021-03-09 14:21:35 -06:00
John Baldwin
c5a365623f Correct the name of the structure used for TCP socket options.
The structure was renamed while refactoring Netflix's KTLS changes for
upstreaming, but the original name remained in tcp.4 and was
subsequently copied to ktls.4.

PR:		254141
Reported by:	asomers
MFC after:	3 days
2021-03-08 10:46:40 -08:00
Gordon Bergling
f7bfe31019 wg(4): Fix an example in the manual page
The example in the manual page of wg(4) for connecting to a
peer was missing the 'public-key' ifconfig(8) keyword and for the
addressed peer the port must be specified.

PR:	253866
Reported by:	Sergey Akhmatov <sergey at akhmatov dot ru>
Reviewed by:	debdrup
MFC after:	3 days
Differential Revision:	https://reviews.freebsd.org/D29115
2021-03-07 20:27:59 +01:00
Mark Murray
fbf8e32452 Remove references to the now-removed bktr(4) driver. 2021-03-07 00:09:22 +00:00
Hans Petter Selasky
c743a6bd4f Implement mallocarray_domainset(9) variant of mallocarray(9).
Reviewed by:	kib @
MFC after:	1 week
Sponsored by:	Mellanox Technologies // NVIDIA Networking
2021-03-06 11:38:55 +01:00
Kristof Provost
b4e3f3c2de pfctl: Add missing 'va' code point name
Add the 'va' (voice-admit, RFC5865) symbolic name.

Reviewed by:	rgrimes, gbe (man page)
MFC after:	2 weeks
Sponsored by:	Rubicon Communications, LLC ("Netgate")
Differential Revision:	https://reviews.freebsd.org/D29069
2021-03-06 10:07:55 +01:00
Konstantin Belousov
f5e930b369 atomic(9): note that atomic_interrupt_fence first appeared in 13.0
MFC after:	3 days
Sponsored by:	The FreeBSD Foundation
2021-03-06 07:24:18 +02:00
Glen Barber
fa04db4762 release: fix VMSIZE following 1ca8842f3ad9
truncate(1) is not case-sensitive with regard to setting the size
of a file.  makefs(8), however, does not honor upper-case values.
Update release-specific files and the release(7) manual page to
reflect this.

MFC with:	1ca8842f3ad9
Submitted by:	ehem_freebsd_m5p.com (original)
Differential Review:	https://reviews.freebsd.org/D28979
Sponsored by:	Rubicon Communications, LLC ("Netgate")
2021-03-04 08:43:02 -05:00
John Baldwin
78991a93eb ossl: Add support for the ChaCha20 + Poly1305 AEAD cipher from RFC 8439
Sponsored by:	Netflix
Differential Revision:	https://reviews.freebsd.org/D28757
2021-03-03 15:20:57 -08:00
John Baldwin
92aecd1e6f ossl: Add ChaCha20 cipher support.
Sponsored by:	Netflix
Differential Revision:	https://reviews.freebsd.org/D28756
2021-03-03 15:20:57 -08:00
John Baldwin
a899ce4ba4 The ChaCha20 counter is little endian, not big endian.
Reviewed by:	cem
Sponsored by:	Netflix
Differential Revision:	https://reviews.freebsd.org/D28755
2021-03-03 15:20:57 -08:00
John Baldwin
a079e38b08 ossl: Add Poly1305 digest support.
Reviewed by:	cem
Sponsored by:	Netflix
Differential Revision:	https://reviews.freebsd.org/D28754
2021-03-03 15:20:57 -08:00
Mark Johnston
3adf72a36b qat.4: Fix some firmware module names
PR:		252984
MFC after:	1 week
2021-03-03 09:07:53 -05:00
Alan Somers
de415e663c release.7: describe the NOGIT option
It was added in 91ce469984500aa994c85640e0af129e3e0c938f (svn r365638)

MFC after:	7 days
Sponsored by:	Axcient
Reviewed by:	gjb
Differential Revision:	https://reviews.freebsd.org/D29027
2021-03-02 19:39:57 -07:00
Kyle Evans
13686dffbb Regenerate src.conf(5) after FMTREE removal 2021-03-02 15:22:06 -06:00
Kyle Evans
ca4e1ea19f Regenerate src.conf(5) after PIE default change 2021-03-02 15:22:05 -06:00
Evgeniy Khramtsov
907023b454 security(7): mention new W^X sysctls in the manual page
Reviewed by:	emaste, gbe
MFC after:	1 week
Differential Revision:	https://reviews.freebsd.org/D28986
2021-03-02 19:52:22 +01:00
Ka Ho Ng
43afeee2fb share/man/man9: document zero_region(9)
The zero_region() kernel interface was previously undocumented.
Add a new zero_region(9) manual page to document it.

Submitted by:	Ka Ho Ng <khng@freebsdfoundation.org>
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D28914
2021-03-02 17:14:06 +08:00
Konstantin Belousov
55eb51ab66 Add VOP_READ_PGCACHE(9)
PR:	253894
Reviewed by:	gbe, rwatson
Sponsored by:	The FreeBSD Foundation
MFC after:	3 days
Differential Revision:	https://reviews.freebsd.org/D28980
2021-03-01 01:38:33 +02:00
Robert Watson
a9f1135503 Add Xrefs to the new VOP_SETLABEL(9) from mac(9) and vnode(9).
MFC after:	3 days
2021-02-27 16:53:53 +00:00
Robert Watson
7bfd84444e Provide a man page for VOP_SETLABEL(9).
MFC after:	3 days
2021-02-27 16:51:13 +00:00
Li-Wen Hsu
655fa04406
Add if_wg.4 MLINK 2021-02-26 00:43:15 +08:00
Konstantin Belousov
e2494f7561 atomic: add atomic_interrupt_fence()
with the semantic following C11 signal_fence, that is, it establishes
ordering between its place and any interrupt handler executing on the
same CPU.

Reviewed by:	markj, mjg, rlibby
Sponsored by:	The FreeBSD Foundation
MFC after:	1 week
Differential Revision:	https://reviews.freebsd.org/D28909
2021-02-24 22:45:24 +02:00
Rajesh Kumar M A
ec78688666 Update manpage for AMD 10GbE driver
Approved by: vmaffione, gallatin

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

MFC after:	1 week
2021-02-24 05:01:10 +00:00
Daniel Ebdrup Jensen
408edcca07 rc.conf(5): Add note about parallel startup variable
The commit below added parallel service startup, and it needs to be
documented, so people know about it.

PR:		249192
MFC with:	77e1ccbee3ed

Reviewed by:	yuripv
Differential Revision:	https://reviews.freebsd.org/D28898
2021-02-23 22:26:31 +01:00
Daniel Ebdrup Jensen
ef1a1fc7e8 release(7) Fix mistake noted in review
I missed this when doing the final pass.

Fixes: f695e960 release(7): Remove stray references to DOC* variables
2021-02-23 19:11:54 +01:00
Daniel Ebdrup Jensen
f695e96067 release(7): Remove stray references to DOC* variables
We now live in the world of git, and release(7) should reflect that.

As of the commit referenced below, release images also no longer
include (stale) documentation, as the documentation has moved to
AsciiDoctor. This means that a few environment variables no longer
make sense, so remove them from their sections and mention them in
the compatibility section instead.

While here, also pet mandoc.

PR: 253615
MFC after: 3 days
MFC with: f61e92ca5a23 release: permanently remove the 'reldoc'
target and associates

Reviewed by:	gjb, lwhsu, yuripv
Differential Revision:	https://reviews.freebsd.org/D28881
2021-02-23 19:06:36 +01:00
Jessica Clarke
963cf6cb0f uefi: Add riscv to historical details 2021-02-22 22:27:00 +00:00
Warner Losh
f11e9f325a Restore missing word
"in" got dropped when I shuffled things around.

Noticed by: rpokala@
MFC After: 3 days
2021-02-22 14:39:04 -07:00
Warner Losh
8c09ecb2e2 uefi: add historical details
Add details about when armv6 and armv7 support was added.
2021-02-22 14:20:44 -07:00
Robert Wing
5ce2d4a1c2 bhyve/snapshot: drop mkdir when creating the unix domain socket
Add /var/run/bhyve/ to BSD.var.dist so we don't have to call mkdir when
creating the unix domain socket for a given bhyve vm.

The path to the unix domain socket for a bhyve vm will now be
/var/run/bhyve/vmname instead of /var/run/bhyve/checkpoint/vmname

Move BHYVE_RUN_DIR from snapshot.c to snapshot.h so it can be shared
to bhyvectl(8).

Reviewed by: jhb
Differential Revision: https://reviews.freebsd.org/D28783
2021-02-22 11:31:07 -09:00
Warner Losh
ab77cc9e7b Remove incorrect statement about EFI environment variables being unsupported.
Our uefi support has included environment variable support for several years
now. Remove the bogus blanket statement saying we don't support them.

MFC After: 3 days
2021-02-22 13:20:58 -07:00
Daniel Ebdrup Jensen
248a47a4c2 ports(7): Update instructions for package target
Packages default to ending up in a different location compared to the
documentation, so catch up to the implementation by referring to the
location where packages can usually be found if no environment variables
have been set.

While here, also update the mention of the file extension to match the
txz format that packages use.

PR:		253179, 224370
Reported by:	rwatson, jeromer at fastmail dotnet
2021-02-19 13:42:16 +01:00