Commit graph

22458 commits

Author SHA1 Message Date
Warner Losh 3fbed93203 cam.4: Modernize examples
Use mpr1 instead of ahd1 and ahci1 instead of ahc1. ahc and ahd haven't
been relevant for a while. Also update the transfer size HBAs can do
from from 64k to 1MB.

Sponsored by:		Netflix
2023-12-11 22:12:13 -07:00
Warner Losh 9ab58f9784 cam: Virtual SIMs communicate via the network too
A virutal SIM can also be connected via the network for iSCSI or NVM
over fabrics.

Sponsored by:		Netflix
2023-12-11 22:12:13 -07:00
Mark Johnston d5c6b32a31 socket.9: Catch up with commit cfb1e92912
Fixes:	cfb1e92912 ("sockets: don't malloc/free sockaddr memory on accept(2)")
Reported by:	Mina Galić <freebsd@igalic.co>
2023-12-11 17:15:54 -05:00
Sergey A. Osokin 25f37779bd bsd-family-tree: add FreeBSD 14
MFC after:	3 days
2023-12-07 09:26:12 -05:00
Mitchell Horne 7cb028deff busdma: Prevent the use of filters with bus_dma_tag_create()
A deprecation notice was added to the bus_dma(9) man page by scottl@ in
September 2020 discouraging the use of filter functions. I've performed
an attentive check of all callers in the tree and everything that exists
today passes NULL for both filtfunc and filtarg. Thus, we should start
returning EINVAL if these arguments are non-NULL to prevent new usages
from popping up. Update the man page to be more clear about this.

The deprecation notice is present since at least 13.0-RELEASE, so this
is the appropriate step for the lifetime of 15, without actually
breaking the driver API. Stable branches will emit a warning instead.

This change enables the removal of a fair amount of unused complexity
across the various busdma implementations.

Reviewed by:	jhb
MFC after:	never
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D42852
2023-12-06 19:10:25 -04:00
Mark Johnston be5464ae23 kmsan: Add kmsan_check_uio()
This was handy for some ad-hoc debugging and fits in with other
kmsan_check_*() routines which operate on some kind of data container.

MFC after:	1 week
Sponsored by:	The FreeBSD Foundation
2023-12-06 12:46:25 -05:00
Baptiste Daroussin 01e286b541 pci_vendors: update to 2023-11-11 2023-12-04 11:51:59 +01:00
Ed Maste 06c083f79d sound: remove Legacy Hardware section from man page
Support for "old legacy ISA cards" was removed in 9054e29681 and
preceeding commits.

MFC after:	1 week
Sponsored by:	The FreeBSD Foundation
2023-12-02 16:12:06 -05:00
Richard Scheffenegger f42518ff12 tcp: for LRD move sysctl from tcp.do_lrd tp tcp.sack.lrd, remove sockopt
Moving lrd sysctl to the tcp.sack branch, since LRD only works with SACK.
Remove the sockopt to programmatically control LRD per session.

Reviewed By:           #transport, tuexen, rrs
Sponsored by:          NetApp, Inc.
Differential Revision: https://reviews.freebsd.org/D42851
2023-11-30 21:11:45 +01:00
Richard Scheffenegger 34c45bc6a3 tcp: enable LRD by default
Lost Retransmission Detection was added as a
feature in May 2021, but disabled by default.

Enabling the feature by default to reduce the
flow completion time by avoiding RTOs when
retransmissions get lost too.

Reviewed By:           tuexen, #transport, zlei
MFC after:             10 weeks
Sponsored by:          NetApp, Inc.
Differential Revision: https://reviews.freebsd.org/D42845
2023-11-30 05:38:16 +01:00
Warner Losh 0044e9124e share: Automated cleanup of cdefs and other formatting
Apply the following automated changes to try to eliminate
no-longer-needed sys/cdefs.h includes as well as now-empty
blank lines in a row.

Remove /^#if.*\n#endif.*\n#include\s+<sys/cdefs.h>.*\n/
Remove /\n+#include\s+<sys/cdefs.h>.*\n+#if.*\n#endif.*\n+/
Remove /\n+#if.*\n#endif.*\n+/
Remove /^#if.*\n#endif.*\n/
Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/types.h>/
Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/param.h>/
Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/capsicum.h>/

Sponsored by:		Netflix
2023-11-26 22:24:00 -07:00
Warner Losh 97759ccc71 share: Remove ancient SCCS tags.
Remove ancient SCCS tags from the tree, automated scripting, with two
minor fixup to keep things compiling. All the common forms in the tree
were removed with a perl script.

Sponsored by:		Netflix
2023-11-26 22:23:29 -07:00
Konstantin Belousov a9758e4647 Do not install kernel and modules with executable access bit set
They are not executables and cannot be activated by kernel.

Reviewed by:	emaste, imp
Sponsored by:	The FreeBSD Foundation
MFC after:	1 week
Differential revision:	https://reviews.freebsd.org/D42768
2023-11-25 20:47:42 +02:00
Mitchell Horne ae9437671a kern_reboot(9): belatedly bump .Dd
Fixes:	4e78a766f6 ("kern_reboot(): don't clear kdb_active")
Sponsored by:	The FreeBSD Foundation
2023-11-23 12:10:42 -04:00
Mitchell Horne 4e78a766f6 kern_reboot(): don't clear kdb_active
It is possible to reach this function from ddb via the "reset" command.
When this happens, we don't actually exit kdb, meaning we never execute
the latter steps of kdb_break() to restore the system state (e.g.
re-enable scheduler).

Therefore, we should not clear the kdb_active flag in this function, as
the debugger is still active. Put differently, kern_reboot() is not an
authority on kdb state, and should not touch it. The original motivation
for this assignment is not clear; I have checked thoroughly and I am
convinced it is not required by any reset code.

This fixes an edge case where a panic can be triggered during reset from
ddb:
 1. Enter ddb via keyboard break sequence (KERNEL_PANICKED() == false &&
    td->td_critnest > 0)
 2. Execute the "reset" command
 3. kern_reboot() sets kdb_active = false
 4. A witness_checkorder() call via shutdown handler sees !kdb_active
    and panics

Reviewed by:	imp, markj
MFC after:	2 weeks
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D42684
2023-11-23 12:07:43 -04:00
Dag-Erling Smørgrav c56f45f2a9 bitstring: Support large bit strings.
Replace int with either size_t or ssize_t (depending on context) in
order to support bit strings up to SSIZE_MAX bits in length.  Since
some of the arguments that need to change type are pointers, we must
resort to light preprocessor trickery to avoid breaking existing code.

MFC after:	3 weeks
Sponsored by:	Klara, Inc.
Reviewed by:	kevans
Differential Revision:	https://reviews.freebsd.org/D42698
2023-11-22 23:30:03 +01:00
Simon J. Gerraty 0a45a7e99f Fix share/zoneinfo for DIRDEPS_BUILD
The tranditional build makes multiple passes through the tree.
The DIRDEPS_BUILD visits each directory only once per architecture,
thus makefiles should be able to everything they need in a single pass.

The use of TZS!= when doing make(*install*)
only works if the directory has previously been visited to do zoneinfo
since before the zoneinfo target is run TZS will be empty.

To fix this, have the zoneinfo target capture the list of files to
zoneinfo, and install-zoneinfo use that list.
Rename that target to zonefiles - since that is now what it does.

This is more efficient - we only gather the list of zones when it is
likely to have changed, and allows the makefile to do everything in a
single pass.

Reviewed by:	stevek
Differential Revision:	https://reviews.freebsd.org/D42624
2023-11-20 12:52:43 -08:00
R. Christian McDonald 34de1d507b committers-src: Add rcm as a src committer and kp as mentor
Approved by:	kp
2023-11-20 11:23:07 -05:00
Igor Ostapenko 7e1affa242 pf.conf.5: revise divert-to and divert-reply 2023-11-20 12:30:18 +01:00
Arthur Kiyanovski 33db883c95 Add akiyano as src committer and cperciva as mentor
Approved by: cperciva (mentor)
2023-11-19 13:54:29 +00:00
Gordon Bergling 115459be31 SEE ALSO section improvements for tuning(7), tunefs(8) and fsck_ffs(8)
cross-reference ffs(7) in fsck_ffs(8)
cross-reference ffs(7) and tuning(7) in tunefs(8)
cross-reference ffs(7) in tuning(7)

PR:	263433
Reviewed by:	bcr
MFC after:	5 days
Differential Revision:	https://reviews.freebsd.org/D42631
2023-11-17 19:24:22 +01:00
Brad Davis 5bcd2d5a43 Fix a comment typo. 2023-11-17 10:08:24 -07:00
Richard Scheffenegger 49a6fbe387 [tcp] add PRR 6937bis heuristic and retire prr_conservative sysctl
Improve Proportional Rate Reduction (RFC6937) by using a
heuristic, which automatically chooses between
conservative CRB and more aggressive SSRB modes.
Only when snd_una advances (a partial ACK), SSRB may be
used. Also, that ACK must not have any indication of
ongoing loss - using the addition of new holes into the
scoreboard as proxy for such an event.

MFC after: 4 weeks
Reviewed By: #transport, kbowling, rrs
Sponsored By: NetApp, Inc.
Differential Revision: https://reviews.freebsd.org/D28822
2023-11-15 23:10:29 +01:00
Gordon Bergling 54611b7cc6 Document library types in the intro(3) manual page
Add a paragraph about library types to the intro(3)
manual page. Document library types, locations
and versioning.

Reviewed by:	emaste, jilles, mhorne, pauamma_gundo.com
Obtained from:	OpenBSD (partial)
MFC after:	3 weeks
Differential Revision:	https://reviews.freebsd.org/D36594
2023-11-16 10:48:09 +01:00
Alexander Motin d282baddb0 Add interface NVME to devstat
This allows to list only NVMe devices in systat, iostat, vmstat, etc.
Previously those were counted as OTHER.
2023-11-15 23:03:40 -05:00
John Baldwin 28fc837b70 bsd.sys.mk: Disable -Wdangling-reference for GCC 13+
GCC raises this warning for libc++'s istream.  It raises false
positives in other cases as well (GCC bugs 109640, 109642, 109671).

Warning from <istream>:

/usr/include/c++/v1/istream:1464:34: error: possibly dangling reference to a temporary [-Werror=dangling-reference]
 1464 |             const ctype<_CharT>& __ct = std::use_facet<ctype<_CharT> >(__is.getloc());
      |                                  ^~~~
/usr/include/c++/v1/istream:1464:71: note: the temporary was destroyed at the end of the full expression 'std::__1::use_facet<ctype<char> >(std::__1::ios_base::getloc() const())'
 1464 |             const ctype<_CharT>& __ct = std::use_facet<ctype<_CharT> >(__is.getloc());
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~

Reviewed by:	imp, emaste
Differential Revision:	https://reviews.freebsd.org/D42579
2023-11-14 18:35:04 -08:00
Stephen J. Kiernan fa08011a52 zoneinfo: fix makefile rules script
In make target rules, one needs to use subshell if there are
change directory commands that should only have an effect on the
other commands in the same line. Otherwise, if make is not running in
compatibility mode (for example, when -j flag is specified), commands
would be executed in a single shell and lines following the "cd" might
not work as expected.

Adjust the target script lines that use "cd" to run in a subshell
by adding appropriate parenthesis.

Reviewed by:	sjg
Differential Revision:        https://reviews.freebsd.org/D42608
2023-11-14 19:51:40 -05:00
George V. Neville-Neil 029848334f Address review feedback on a typo.
Reviewed by:	jhb, gbe
Differential Revision:	<https://reviews.freebsd.org/D42096>
2023-11-14 16:09:50 -05:00
George V. Neville-Neil b2e41172bd A skeleton kernel module suitable for creating new such modules. 2023-11-14 16:08:13 -05:00
Baptiste Daroussin 030af1b62d pkgbase: set the prefix of debug files and macros to /usr/src
When the macro PACKAGE_BUILDING is set, then consider we are building package
for pkgbase, this has already been used in Makefile.inc1 and reuse the
PACKAGE_BUILDING macros already used for that purpose in the ports tree

In the future this should be tied to REPRODUCIBLE_BUILD

MFC After:	3 days
Reviewed by:	emaste
Differential Revision:	https://reviews.freebsd.org/D42569
2023-11-14 08:43:15 +01:00
Brooks Davis ec4c2adb50 Retire LLD_IS_LD option
The option was added to parallel the CLANG_IS_CC which was removed in
commit 20a66ab4bf.

Reviewed by:	imp, dim, emaste
Differential Revision:	https://reviews.freebsd.org/D42575
2023-11-13 21:34:14 +00:00
Alexander Leidinger cb57f50e64 defaults: oomprotect sshd and local_unbound
Add sshd and local_unbound to the oom protected services.
syslogd is protected by default already, document it.

This was discussed on arch@, see
    https://lists.freebsd.org/archives/freebsd-arch/2023-November/000543.html

sshd is protected to be able to investigate and fix oom issues on systems
which don't have out-of-band console access.
local_unbound is protected as it may be enabled for local use and without
DNS a lot grinds to a halt (including sshd).

Relnotes:		yes
MFC after:		1 month
Differential Revision:	https://reviews.freebsd.org/D42544
2023-11-13 09:48:51 +01:00
Ceri Davies 19477ee0d9 man/man5/core.5: note that coredump directories need to exist 2023-11-12 11:35:12 +00:00
Trond Endrestøl 4b2d944b40 pfsync.4: fix typo
PR:		275025
Reviewed by:	kp
2023-11-11 11:10:41 +01:00
Luiz Amaral 81d4c78620 pfsync: Document the transport over IPv6 feature
On D40102 we implemented support for transport over IPv6 but the
documentation was not updated to reflect the new feature.

Clarify what is available and how it can be used.

MFC after:	1 week
Sponsored by:	InnoGames GmbH
Differential Revision:	https://reviews.freebsd.org/D42505
2023-11-10 16:40:02 +01:00
Andrew Turner 960b4327f4 bsd.compat.mk: Set MACHINE before including bsd.opts.mk
In bsd.opts.mk we check MACHINE_ARCH and may want to check MACHINE to
decide which options to enable. Unfortunately this is included too
early via bsd.compiler.mk.

Move including bsd.compiler.mk until after we can set MACHINE and
MACHINE_ARCH.

Reviewed by:	imp
Sponsored by:	Arm Ltd
Differential Revision:	https://reviews.freebsd.org/D42448
2023-11-10 09:57:45 +00:00
Kyle Evans 8f2848eafa crunchgen: fix "keep" for an ELF world, break it out
"keep" currently adds a leading underscore, which hasn't been useful or
accurate since a.out days.  Preserve the symbol name as it's given
rather than mangle it to match ELF-style symbol names.

This was partially fixed back in
6cd35234a0 ("Assume ELF-style symbol names now.") for crunchgen, but
the keeplist wasn't changed to match it.

While we're here, break it out to bsd.crunchgen.mk for later use in
bsdbox.

Reviewed by:	adrian, imp
Differential Revision:	https://reviews.freebsd.org/D42499
2023-11-09 22:33:58 -06:00
Mitchell Horne c1e2146821 pmap_kextract(9): some additions
Mainly, provide a little more detail on the caller's responsibilities.

Suggested by:	kib, jhb
Reviewed by:	kib, markj
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D42458
2023-11-06 12:54:45 -04:00
Ka Ho Ng 475fa89800 share/mk: Fix .TARGET override documentation
Fixes: 		48da57b47f
Sponsored by:	Juniper Networks, Inc.
MFC after:	3 days
Reviewed by:	imp, delphij, emaste
Differential Revision:	https://reviews.freebsd.org/D42469
2023-11-05 16:28:34 -05:00
Simon J. Gerraty 6647af9b56 bsd.progs.mk must pass META_XTRAS to gendirdeps.mk
The indirection used by bsd.progs.mk is setting META_XTRAS
means the value needs to be passed in the environment to
gendirdeps.mk, as any expansion before then will be empty.

Remove a now misleading comment from bsd.progs.mk
before it includes bsd.prog.mk

Update gendirdeps.mk to accommodate this.

Reviewed by:	stevek
2023-11-04 10:17:40 -07:00
Daniel Engberg 105e5f55ae share/examples/etc/make.conf: Add AMD Zen 4 to list
Add AMD Zen 4 (znver4) to the list of valid "Intel x86 CPU types"

Reviewed by:	emaste
Approved by:	emaste
Differential Revision:	https://reviews.freebsd.org/D41518
2023-11-04 16:28:56 +01:00
Jake Freeland b0203aaa46 committers-src: Add Jake Freeland
Add myself to the active src committers list and document my
mentor/mentee relationships.
2023-11-03 19:04:17 -05:00
Baptiste Daroussin dbffadd8c2 pci_vendors: update to 2023-09-22 2023-11-03 17:32:45 +01:00
Stephen J. Kiernan 2008043f38 loader: add target for dirdeps build
Update dependencies for the loader variations used for each
architecture.

Reviewed by:	sjg
Differential Revision:	https://reviews.freebsd.org/D39741
2023-11-02 19:35:08 -04:00
Mateusz Guzik 8b916c35c2 vfs: fix a typo introdued in previous
Reported by:	pstef
2023-11-01 08:29:29 +00:00
Mateusz Guzik 1692e50f25 vfs: bring getnewvnode manpage closer to reality 2023-11-01 08:21:10 +00:00
Kristof Provost ca9dbde881 pf: support SCTP-specific timeouts
Allow SCTP state timeouts to be configured independently from TCP state
timeouts.

Reviewed by:	tuexen
MFC after:	1 week
Sponsored by:	Orange Business Services
Differential Revision:	https://reviews.freebsd.org/D42393
2023-10-31 16:03:22 +01:00
Ed Maste ce37de8e05 src.conf.5: regen after addition of KERNEL_BIN
Fixes: 34632ed1a4 ("arm: Introduce MK_KERNEL_BIN to control gener...")
Sponsored by:	The FreeBSD Foundation
2023-10-29 19:02:39 -04:00
Stephen J. Kiernan e5b786625f dirdeps: Add missing dependency files
Some leaf directories were missing Makefile.depend files or needed
architecture-specific Makefile.depend.* files.
2023-10-29 17:08:29 -04:00
Simon J. Gerraty 5f98380c3e Stop adding $FreeBSD$ to Makefile.depend
Reviewed by:	stevek
2023-10-29 11:40:03 -07:00