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

Merge FreeBSD 2024-10-11 #2297

Merged
merged 522 commits into from
Jan 25, 2025
Merged

Merge FreeBSD 2024-10-11 #2297

merged 522 commits into from
Jan 25, 2025

Conversation

bsdjhb
Copy link
Collaborator

@bsdjhb bsdjhb commented Jan 24, 2025

PR for CI

dag-erling and others added 30 commits October 8, 2024 19:01
MFC after:	3 days
Sponsored by:	Klara, Inc.
Reviewed by:	markj
Differential Revision:	https://reviews.freebsd.org/D47009
These were reported by `mandoc -T lint ...` as errors.

Signed-off-by:	Graham Percival <gperciva@tarsnap.com>
Reviewed by:	mhorne
MFC after:	3 days
Sponsored by:	Tarsnap Backup Inc.
Pull Request:	freebsd/freebsd-src#1453
These were reported by `mandoc -T lint ...` as errors.

The rendered output (in ascii and html) is not affected by this commit.

Signed-off-by:	Graham Percival <gperciva@tarsnap.com>
Reviewed by:	mhorne, Alexander Ziaee <concussious.bugzilla@runbox.com>
MFC after:	3 days
Sponsored by:	Tarsnap Backup Inc.
Pull Request:	freebsd/freebsd-src#1454
Signed-off-by:	Graham Percival <gperciva@tarsnap.com>
Reviewed by:	mhorne
MFC after:	3 days
Sponsored by:	Tarsnap Backup Inc.
Pull Request:	freebsd/freebsd-src#1455
Skip the test rather than failing if SCTP is not available (e.g., if
sctp.ko is not loaded).

Also submitted upstream as
google/capsicum-test#61

Sponsored by:	The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D46999
HAVE_SCTP is #defined in syscalls.h, so move the #ifdef after the
inclusion of the header that #defines it.

Issue google/capsicum-test#60 is open upstream
in case a slightly different version is needed for Linux.

Sponsored by:	The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D46995
PR:		201052
Reviewed by:	oshogbo, tuexen
Sponsored by:	The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D46884
As of commit 91a9e4e ("capsicum: propagate rights on sctp_peeloff")
a capability is generated from sctp_peeloff(cap_fd,...).  Enable the
corresponding test code.

PR:		201052
Reviewed by:	oshogbo, tuexen
Sponsored by:	The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D47000
Consistently use the shorter name 'obj' for the new object.
Set OBJ_POSIXSHM flag outside if, it is set on both pathes.

Suggested by:	alc
Reviewed by:	alc, markj
Sponsored by:	The FreeBSD Foundation
MFC after:	1 week
Differential revision:	https://reviews.freebsd.org/D47018
MFC after:	3 days
Sponsored by:	Klara, Inc.
Reviewed by:	0mp, markj
Differential Revision:	https://reviews.freebsd.org/D47019
POSIX requires us to print an error message and exit non-zero if
writing to stdout fails.  This can only happen if sflag is unset.

MFC after:	3 days
Sponsored by:	Klara, Inc.
Reviewed by:	markj
Differential Revision:	https://reviews.freebsd.org/D47020
The ldd32 binary is currently in the utilities package but belongs in
utilities-lib32. This patch corrects the situation.

PR:		249145
Reviewed by:	emaste
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D47023
Currently the lib32 crt files (/usr/lib32/Scrt1.o etc.) are placed in
the clibs-dev package rather than the clibs-dev-lib32 package.

The /usr/lib32/dtrace/drti.o file is similarly placed in the dtrace
package rather than the dtrace-lib32 package.

Splitting shared libraries in /usr/lib32 into a -lib32 package is
handled in bsd.lib.mk by adding "lib32" to TAGS. However bsd.files.mk
ignores TAGS and only honors ${group}TAGS since 144c442.

This patch changes the behavior of bsd.files.mk to honor TAGS if the
default FILES group is used. This matches the handling of PACKAGE, which
is also ignored unless the default FILES group is used.

With this patch, both the clibs and dtrace package are split correctly.

PR:		249145
Reviewed by:	bapt
Sponsored by:	The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D46991
Replace the regex trying to catch the branch name of the existing
repository which was too naive with simpler glob matching.

As a result the only case when we only use the new packages are:
moving from alpha to beta
moving from beta to rc
moving from rc to release
changing the major version number for the main git branch

PR:		281393
Differential Revision:	D46874
The address lock is always held, so no need for the second
parameter.
No functional change intended.

MFC after:	3 days
With 8GB disk image and FAT32, our read offset calculation wraps over
32-bit integer and we end up reading garbage. The problem appears when
disk image is filled with data and the block to bytes translations do
not fit into 32-bit integers.

illumos issue: https://www.illumos.org/issues/16666

Sponsored by:	MNX Cloud, Inc.
MFC after:	1 week
It is not used outside of the file.
No functional change intended.

MFC after:	3 days
Use a pctrie_lookup to avoid walking over low out-of-range buf list
entries, and an early break to avoid the high out-of-range
entries. Avoid writing almost identical loops for the dirty and clean
lists.

Reviewed by:	kib
Differential Revision:	https://reviews.freebsd.org/D46963
…ndex

Take the sahtree rlock and check for the DEAD SA state before validating
and filling the SA xfrm attributes.

Sponsored by:	NVidia networking
@pho has reported that this change leads to a failure of the mmap28.sh
stress test, and I have confirmed it, so I withdraw it for further
study.

This reverts commit af4cd5e.
…recovery

When snd_nxt doesn't track snd_max, partial SACK ACKs may elicit
unexpected duplicate retransmissions. This is usually masked by
LRO not necessarily ACKing every individual segment, and prior
to RFC6675 SACK loss recovery, harder to trigger even when an
RTO happens while SACK loss recovery is ongoing.

Address this by improving the logic when to start a SACK loss recovery
and how to deal with a RTO, as well as improvements to the adjusted
congestion window during transmission selection.

Reviewed By:	tuexen, cc, #transport
Sponsored by:	NetApp, Inc.
MFC after:	1 week
Differential Revision:	https://reviews.freebsd.org/D43355
The sendmail service script needs to be stopped during shutdown
to ensure a clean shutdown of active SMTP connections (and writing
any in memory queue files).

rcorder(8) requires the rcorder block to be an uninterrupted sequence of
REQUIRE, PROVIDE, BEFORE, and KEYWORD lines. Having a comment in between
REQUIRE and KEYWORD makes rcorder stop parsing the block when it reaches
the comment.

Fix that by moving the comment out from the rcorder block.

Reviewed by:	bnovkov, christos, gshapiro, markj
Approved by:	bnovkov (mentor), christos (mentor), markj (mentor)
MFC after:	3 days
Differential Revision:	https://reviews.freebsd.org/D46924
There were two loops in pf_setup_pdesc() and pf_normalize_ip6()
walking over the IPv6 header chain.  Merge them into one loop,
adjust some length checks and fix IPv6 jumbo option handling.  Also
allow strange but legal IPv6 packets with plen=0 passing through
pf.  IPv6 jumbo packets still get dropped.
testing dhill@; ok mcbride@ henning@

Obtained from:	OpenBSD, bluhm <bluhm@openbsd.org>, d68283bbf0
Sponsored by:	Rubicon Communications, LLC ("Netgate")
Differential Revision:	https://reviews.freebsd.org/D46925
- Changed order of address and ports.

Obtained from:	OpenBSD, mcbride <mcbride@openbsd.org>, 0bcfb1e086
Sponsored by:	Rubicon Communications, LLC ("Netgate")
Differential Revision:	https://reviews.freebsd.org/D46926
ensure that we won't enter an endless loop while iterating over
an address pool.  problem found and solution tested by claudio.
ok claudio, henning, "reads fine" to zinke

Obtained from:	OpenBSD, mikeb <mikeb@openbsd.org>, e4fc4bddb9
Sponsored by:	Rubicon Communications, LLC ("Netgate")
Differential Revision:	https://reviews.freebsd.org/D46927
This simplifies the code a little, because we can now avoid looking at the
IP(v6) header at all in pf_test() itself.

We do have to move the Jumbogram check into pf_setup_pdesc as well.

Sponsored by:	Rubicon Communications, LLC ("Netgate")
Differential Revision:	https://reviews.freebsd.org/D46928
bsdjhb and others added 28 commits January 24, 2025 17:46
After two years, add the initial man page and hook Realteks rtw89
driver up to the build for more people to test given successful
reports.
devd.conf is already providing support based on the rtw<n+> regex.
The driver uses the LinuxKPI compat layer.

Firmware is provided by ports: net/wifi-firmware-rtw89-kmod or
one of the flavours.  People are advised to used fwget(8) to
automatically install the correct firmware for their chipset.

Please note that for the moment the driver requires a tunable to
be set in loader.conf: compat.linuxkpi.skb.mem_limit=1

Many thanks to everyone who in the last two years helped testing,
debugged, submitted patches to get the driver to this stage where
initial functionality seems working.

Sponsored by:	The FreeBSD Foundation
MFC after:	3 days
On AmpereOne, the current programming of GITS_BASER2 to individual
allocations per ITS causes a:

panic: APEI Fatal Hardware Error!

This is due to the ITS reporting a BASER2_DATA_ERR error. The GIC-700
expects all GITS_BASER2.Physical_Address fields to match system-wide.

Skip programming any vPE GITS_BASER registers to avoid this crash.

Sponsored by:	Ampere Computing LLC
Reviewed by:	andrew
Differential Revision: https://reviews.freebsd.org/D46094
Explicitly mention that it requires the arcanist port or package, and
edit some grammar and markup.

Reviewed by:	markj
Sponsored by:	The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D47060
Exclude group read/write permissions as well. Otherwise, group wheel can
submit things w/o the normal accounting. While group wheel is generally
trusted on the machine, submitting jobs w/o checks is not one of the
functions we document for that group.

PR: 17289
Differential Revision:	https://reviews.freebsd.org/D47040
When reading the next code in a stream, avoid reading an extra byte if
we're going to throw it away. When there's no more bits to extract from
the stream, bits will be 0 and we'll mask the read byte with 0 anyway.
At worst, this will avoid reading one past the end of gbuf array (which
is not possible in well formed streams).

PR: 127912
Reviewed by:	emaste
Differential Revision:	https://reviews.freebsd.org/D47041
Obtained from:	CheriBSD
MFC after:	1 week
The break-before-make update invalidates PTEs, including the PTE
pointing to curthread, causing a fault in `trace_pc`. This
addresses a similar issue in
01bb9a2.

Reviewed by:	markj
MFC after:	1 week
In swap_pager_swapoff_object, the object is initially not dead, and
can only become dead while the object lock is not held. Move the test
for object-death so that it is right after the early loop-break that
happens after lock re-acquisition, and before the iterator is
re-initialized, which fails an assertion when the object is dead,
and not swap.

Addresses a problem produced in testing by @pho and diagnosed by @kib.

Reported by:	pho
Reviewed by:	alc, kib
Differential Revision:	https://reviews.freebsd.org/D47064
We print an error when we can't read the MBR. Add minimal messages about
continuing anyway.

PR: 167036
Sponsored by:		Netflix
This reverts commit 593d7a1:

In preparation for importing new SPCR definitions, back out my hack
since it conflicts with the new definitions.

Sponsored by:		Netflix
cherry pick 1eeff52124a45d5cd887ba5687bbad0116e4d211 from acpica:

SPCR: Update the SPCR table to version 4

The Microsoft Serial Port Console Redirection (SPCR) specification
revision 1.09 comprises additional fields [1]. The newly added fields
are:
- RISC-V SBI
- Precise Baud Rate
- NamespaceStringLength
- NamespaceStringOffset
- NamespaceString

Additionaly, this code will support up to SPCR revision 1.10, as it
includes only minor wording changes.

[1] https://learn.microsoft.com/en-us/windows-hardware/drivers/serports/serial-port-console-redirection-table

Signed-off-by: Sia Jee Heng <jeeheng.sia@starfivetech.com>
This reapplies 593d7a1 to implement printing of SPCR v3 and SPCR v4
fields after ACPI actble3.h update. ACPIca used different names and
didn't do the weird nesting I did in the prior commit for better
co-existance.

Sponsored by: Netflix
Add time_is_before_jiffies() as needed by iwlwifi from v6.11.

Sponsored by:	The FreeBSD Foundation
MFC after:	3 days
Reviewed by:	emaste
Differential Revision: https://reviews.freebsd.org/D46841
Always include linux/kconfig.h which seems to match Linux behaviour
and avoid errors compiling code expected from that file but never
included.

Sponsored by:	The FreeBSD Foundation
MFC after:	3 days
Reviewed by:	emaste, imp
Differential Revision: https://reviews.freebsd.org/D46801
iwlwifi.4 and rtw88.4 did not show up in the hardware list in the
release notes for 13.4.
The doc/website/tools/hardware-notes-processor.rb script parses
the .Sh HARDWARE section to automagically create a note once the
manual page is listed in the website/archetypes/release/hardware.adoc
file.

While here update the other committed man pages not yet connected
to the build.

Reported by:	re (cperciva), grahamperrin
Sponsored by:	The FreeBSD Foundation
MFC after:	3 days
Reviewed by:	concussious.bugzilla_runbox.com (Alexander Ziaee)
Differential Revision: https://reviews.freebsd.org/D46851
Those files are required by updated wireless drivers.

Sponsored by:	The FreeBSD Foundation
MFC after:	3 days
Try to compensate for the lack any origin for a DIRDEPS build.

bootstrap-packages will extract the PACKAGE lines from
the tree's Makefiles and use them to populate
targets/packages/Makefile.depend and targets/packages/*/Makefile.depend
so we can at least try to keep the Makefile.depend files throughout
the tree up to date.

This is far from ideal, as we cannot (easily) take into account
options that affect the contents of various packages.

Reviewed by:	stevek
Sponsored by:	Juniper Networks, Inc.
Differential Revision:	https://reviews.freebsd.org/D47065
* Add PVR bits for POWER10 and POWER11
* Initialize the `err` outvar, in case it's not touched on success by
  the hypervisor, to prevent spurious errors.
BLUE often translates to DARK BLUE. On BLACK this is hard to
read. Instead, use CYAN which looks good on both black and white
backgrounds.

Discussed with: kevans
Sponsored by: Netflix
Use if (err == 0) rather than if (!err) to follow stlye(9) and also the
rest of the file.

Sponsored by:		Netflix
Add a one-liner description of rw - Register Width added in eae36de.

Fixes: eae36de
Sponsored by:		Netflix
All the other man pages, except iicbus(4), use .Sh SYSCTL VARIABLES for
documentig sysctls. iicbus(4) has a legitmate reason for varying,
though.

Sponsored by:		Netflix
This code is parsing the DBG2 ACPI table, not the SPCR table, so tweak
the comment.

Sponsored by:		Netflix
Use acpi.rsdp to test for ACPI. 4th wasn't updated with the old compat
was dropped a while ago.

MFC After:	1 week
Sponsored by:	Netflix
This creates a circular dependency for OpenZFS's libspl in sys/uio.h,
and it shouldn't be needed since the system limits.h already defines
IOV_MAX, so delete it, and unconditionally assert that to be the case.
Otherwise the re-include of libspl's sys/uio.h tries to use PAGESIZE
before it has been defined by OpenZFS's own sys/param.h.

Fixes:		7a7741a ("zfs: merge openzfs/zfs@b10992582")
MFC after:	1 week

(cherry picked from commit 0bdf2535d4f8a571cb6d230f2f19eb20a452a4f8)
clang 12 does not implement the coverage sanitizer, and the build fails
when __attribute__((no_sanitize("coverage"))) is used.

Try to work around the problem by giving __nosanitize* a non-trivial
definition only when the corresponding sanitizer is actually enabled in
the build.

Tested by reading disassembly of pmap_update_strided() and pmap_enter()
in a kernel compiled with "options COVERAGE", and similar sanity checks
for the other sanitizers.  I also test-booted KASAN and KMSAN kernels in
amd64 bhyve.

Suggested by:	jrtc27
Reviewed by:	imp
Fixes:		a78bacf ("cdefs: Add __nosanitizecoverage")
MFC after:	1 week
Differential Revision:	https://reviews.freebsd.org/D47193

(cherry picked from commit 3dc6188294dd4f907f5f63cc3f1a79ea20dba99f)
@bsdjhb bsdjhb merged commit 9d21abf into CTSRD-CHERI:dev Jan 25, 2025
29 checks passed
@bsdjhb bsdjhb deleted the merge-freebsd-20241011 branch January 25, 2025 15:31
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.