Commit Graph

291549 Commits

Author SHA1 Message Date
Doug Moore c1ebd76c3f arm64: add page-to-pte convenience macros
Define macros to perform pte to vm_page and vm_page to pte conversions
without composing two macros, and use the convenience macros wherever
possible.

Reviewed by:	alc
Differential Revision:	https://reviews.freebsd.org/D44699
2024-05-11 01:04:48 -05:00
Warner Losh a2409f1737 intr: Document how to get the interrupt frame
Document that the only way to get the interrupt thread is to use
curthread->td_intr_frame, rather than the old-style of having a NULL
pointer for the interrupt thread. As of 38c35248fe, support for that
has been removed. I neglected to update that commit message with these
details.

Suggested by: mhorne
2024-05-10 15:41:36 -06:00
Elliott Mitchell 38c35248fe kern/intr: remove support for passing trap frame as argument
While otherwise a handy potential approach, getting the trap frame via
the argument isn't documented and isn't supposed to be used.  With all
uses removed, now remove support to end the mixed calling conventions.

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

Reviewed by: imp, mhorne
Pull Request: https://github.com/freebsd/freebsd-src/pull/1225
2024-05-10 15:33:24 -06:00
Cy Schubert 335c7cda12 unbound: Vendor import 1.20.0
Release notes at
	https://www.nlnetlabs.nl/news/2024/May/08/unbound-1.20.0-released/

Security:	The DNSBomb vulnerability CVE-2024-33655

Merge commit 'c2a80056864d6eda0398fd127dc0ae515b39752b' into main
2024-05-10 14:23:43 -07:00
Dag-Erling Smørgrav 25945af47e tftpd: silence gcc overflow warnings
GCC 13 complains that we might be writing too much to an on-stack buffer
when createing a filename.

In practice there is a check that filename isn't too long given the
time format and other static characters so GCC is incorrect, but GCC
isn't wrong that we're potentially trying to put a MAXPATHLEN length
string + some other characters into a MAXPATHLEN buffer (if you ignore
the check GCC can't realistically evaluate at compile time).

Switch to snprintf to populate filename to ensure that future logic
errors don't result in a stack overflow.

Shorten the questionably named yyyymmdd buffer enough to slience the
warning (checking the snprintf return value isn't sufficent) while
preserving maximum flexibility for admins who use the -F option.

MFC after:	3 days
Sponsored by:	Klara, Inc.
Reviewed by:	brooks
Differential Revision:	https://reviews.freebsd.org/D45086
2024-05-10 23:16:26 +02:00
Dag-Erling Smørgrav 4d09eb87c5 tftpd: Satisfy clang-analyzer.
* Replace `random()` with `arc4random()`.
* Change some variable types.
* Drop some unused assignments.

MFC after:	3 days
Sponsored by:	Klara, Inc.
Reviewed by:	imp, markj
Differential Revision:	https://reviews.freebsd.org/D45132
2024-05-10 23:16:26 +02:00
Dag-Erling Smørgrav ae285a8cbf tftpd: Add missing include.
This went unnoticed due to namespace pollution in our headers.

MFC after:	3 days
Sponsored by:	Klara, Inc.
Reviewed by:	imp
Differential Revision:	https://reviews.freebsd.org/D45131
2024-05-10 23:16:26 +02:00
Dag-Erling Smørgrav 1111da6b7c tftpd: Drop unneeded includes.
MFC after:	3 days
Sponsored by:	Klara, Inc.
Reviewed by:	imp, markj
Differential Revision:	https://reviews.freebsd.org/D45130
2024-05-10 23:16:26 +02:00
Dag-Erling Smørgrav 816c4d3dcf tftpd: Add missing -S option to synopsis.
MFC after:	3 days
Sponsored by:	Klara, Inc.
Reviewed by:	imp, markj
Differential Revision:	https://reviews.freebsd.org/D45129
2024-05-10 23:16:26 +02:00
Alexander Ziaee 467e3e2f20 CONTRIBUTING.md/style: spring cleaning
+ move Lua to alphabetize subsections
+ word manpages like other subsections
+ man PR's shouldn't bump document date

MFC after: (maybe MFC to BETA3 along w/ e7ff917057 ?)
2024-05-10 15:07:03 -06:00
Ricardo Branco a7cc56b28f linux: Adjust rlimit SIGPENDING & MSGQUEUE behaviour to match linprocfs
Reviewed by: imp
Pull Request: https://github.com/freebsd/freebsd-src/pull/1227
2024-05-10 14:50:04 -06:00
Cy Schubert c2a8005686 unbound: Vendor import 1.20.0
Release notes at
	https://www.nlnetlabs.nl/news/2024/May/08/unbound-1.20.0-released/

Security:	The DNSBomb vulnerability CVE-2024-33655
2024-05-10 13:48:53 -07:00
John Baldwin 9e0164087c vm: Change the return types of kernacc and useracc to bool
Reviewed by:	kib
Differential Revision:	https://reviews.freebsd.org/D45156
2024-05-10 13:43:56 -07:00
John Baldwin 473c90ac04 uio: Use switch statements when handling UIO_READ vs UIO_WRITE
This is mostly to reduce the diff with CheriBSD which adds additional
constants to enum uio_rw, but also matches the normal style used for
uio_segflg.

Reviewed by:	kib, emaste
Obtained from:	CheriBSD
Differential Revision:	https://reviews.freebsd.org/D45142
2024-05-10 13:43:36 -07:00
John Baldwin f75764fea3 md: Merge two switch statements in mdstart_vnode
While here, use bp->bio_cmd instead of auio.uio_rw to drive read vs
write behavior.

Reviewed by:	kib
Differential Revision:	https://reviews.freebsd.org/D45155
2024-05-10 13:43:23 -07:00
Michael Tuexen 5120ea0d88 sctp: improve heartbeat timer computation
PR:		278666
Reviewed by:	Albin Hellqvist
MFC after:	3 days
Pull Request:	https://reviews.freebsd.org/D45107
2024-05-10 21:02:56 +02:00
Warner Losh 88cbbbb607 Revert "grdc: Add copyright"
It turns out this wasn't in 4.4BSD. I had a false positive for gdc.c
(which is in 4.4BSD, but part of gated, not this). gdc.c comes from the
ncurses tests, so it shouldn't have this copyright. This version is
mostly Amos Shapir and John Lupien's code. It comes from ncurses test
directory. ncurses has made dozens of improvements to this file since
we imported it in 1997 (which pre-dates their online history), so it's
not clear if their new copyright applies (which doesn't mention Amos
or John) or if some other copyright applies. In any case, it wasn't
4.4BSD, so revert this.

This reverts commit 6ed7d0e3ac.

Sponsored by:		Netflix
2024-05-10 14:12:19 -06:00
Michael Tuexen b67716dd58 sctp: store heartbeat creation time as time_t
Reported by:	Coverity Scan
CID:		1493087
MFC after:	3 days
2024-05-10 20:40:15 +02:00
Michael Tuexen 42aeb8d490 sctp: store vtag expire time as time_t
Reported by:	Coverity Scan
CID:		1492525
CID:		1493239
MFC after:	3 days
2024-05-10 20:28:38 +02:00
Ed Maste 4e32868183 Increase IOAPIC_MAX_ID to 255 (from 254)
A test system provided by AMD panicked with "madt_parse_apics:
I/O APIC ID 255 too high".  I/O APIC ID 255 is acceptable, so increase
the limit.

Reviewed by:	jhb, kib
Sponsored by:	The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D45157
2024-05-10 15:40:18 -04:00
Michael Tuexen 9d8a3718e2 sctp: store cookie secret change time as time_t
Reported by:	Coverity Scan
CID:		1492349
CID:		1493281
MFC after:	3 days
2024-05-10 20:14:16 +02:00
Ed Maste 0b272e0926 madt: print CPU APIC ID as signed int
Instead of printing something like "MADT: Found CPU APIC ID 4294967295
ACPI ID 512: disabled" print the APIC ID as a singed int for a more
user-friendly -1.

Reviewed by:	jhb
Sponsored by:	The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D45158
2024-05-10 15:20:40 -04:00
Simon J. Gerraty dd4d206cad kmod.mk use ${XARGS}
Also ${XARGS_J} this allows use of non-BSD xargs when building
kernel modules.

Reviewed by:	imp
Differential Revision:	https://reviews.freebsd.org/D45146
2024-05-10 12:05:05 -07:00
John Baldwin 50884a0b09 nvmf_transport: Remove invalid assertion
This is leftover from an earlier iteration of the code where 'nt' was
not dynamically allocated but was the passed in 'ops' pointer so was
always alive.

Reported by:	Coverity Scan
CID:	 	1545042
Sponsored by:	Chelsio Communications
2024-05-10 09:13:40 -07:00
John Baldwin 1f83483d73 ctl_backend_block: Correct value of NVME nsdata nuse field
Reported by:	Coverity Scan
CID:	 	1545043
Sponsored by:	Chelsio Communications
2024-05-10 09:13:40 -07:00
John Baldwin 1662e47d91 nvmecontrol: Free the addrinfo list when failing to open a TCP socket
Reported by:	Coverity Scan
CID:	 	1545048
Sponsored by:	Chelsio Communications
2024-05-10 09:13:40 -07:00
John Baldwin 0ac468c7b6 nvmecontrol: Free array of I/O queue pairs on failure to handoff
This is harmless but cleaner.

Reported by:	Coverity Scan
CID:	 	1545041,1545049
Sponsored by:	Chelsio Communications
2024-05-10 09:13:21 -07:00
John Baldwin 1f029b86bb nvmf: Use strlcpy instead of strncpy to ensure termination
Reported by:	Coverity Scan
CID:	 	1545054
Sponsored by:	Chelsio Communications
2024-05-10 08:56:51 -07:00
John Baldwin bf1820f187 nvmecontrol: Fix a sizeof mismatch
In this case it is harmless since it is an array of pointers so the
resulting length is identical.

Reported by:	Coverity Scan
CID:		1545055
Sponsored by:	Chelsio Communications
2024-05-10 08:54:02 -07:00
Warner Losh 6ed7d0e3ac grdc: Add copyright
Add the stock BSD copyright and license from the 4.4-Lite distribution
(indirected by SPDX).

Sponsored by:		Netflix
2024-05-10 09:22:44 -06:00
Gavin Atkinson 71ed1adda8 grdc: add countdown timer mode
PR: 35113
Differential Revision:	https://reviews.freebsd.org/D43463
2024-05-10 09:22:38 -06:00
Warner Losh 06af7bd12a posix: POSIX-1.2008 moved SA_* from XSI to base standard
Starting with POSIX-1.2008, "The SA_RESETHAND, SA_RESTART, SA_SIGINFO,
SA_NOCLDWAIT, and SA_NODEFER constants are moved from the XSI option to
the Base." Make them so visible.

PR: 275328
Sponsored by:		Netflix
2024-05-10 09:20:21 -06:00
Justin Hibbits de1ac9462f conf: Generate fdt_static_dtb.h in OBJDIR
Though the kernel build expects ${.OBJDIR} to be equal to ${.CURDIR}
that may not always be the case.  Correctly generate fdt_static_dtb.h in
${.OBJDIR}, which is conceptually more correct anyway.

Obtained from:	Juniper Networks, Inc.
2024-05-10 14:35:50 -04:00
Justin Hibbits 10eea8dc8c tpm20: Support partial reads
Summary:
In some cases the TPM utilities may read only a partial block, instead
of a full block.  If a new command starts while in the middle of a read
it may cause the TPM to go catatonic and no longer respond to SPI.

Reviewed by:	kd
Obtained from:	Juniper Networks, Inc.
Differential Revision: https://reviews.freebsd.org/D45140
2024-05-10 14:35:28 -04:00
Ed Maste 2e0c027e69 ukswitch: fix non-debug build
PR:		278847
Sponsored by:	The FreeBSD Foundation
2024-05-10 08:53:15 -04:00
Dag-Erling Smørgrav ad4f3bdf73 cat: Missed a couple.
MFC after:	3 days
Sponsored by:	Klara, Inc.
2024-05-10 13:05:45 +02:00
Dag-Erling Smørgrav c6f9df7064 cat: Check for lack of success rather than a specific failure.
MFC after:	3 days
Sponsored by:	Klara, Inc.
Reviewed by:	oshogbo
Differential Revision:	https://reviews.freebsd.org/D45149
2024-05-10 12:59:30 +02:00
Andrew Turner 634dd430b9 arm64: Update the page table list in locore
The comment describing the page tables was out of date. Update it with
the current list.

Sponsored by:	Arm Ltd
2024-05-10 09:29:24 +00:00
Andrew Turner 719908c813 arm64: Merge common page table creation code
Sponsored by:	Arm Ltd
Differential Revision:	https://reviews.freebsd.org/D45061
2024-05-10 09:29:24 +00:00
Andrew Turner 4ab0f5ab3f arm64/gicv3: Check if the hardware supports LPIs
Some simulators have the ITS in the DTB passed to the kernel, however
it is a runtime configuration option to enable it.

Check the GICD_TYPER register to see if LPIs are enabled before
attaching the ITS driver.

Sponsored by:	Arm Ltd
Differential Revision:	https://reviews.freebsd.org/D44914
2024-05-10 09:29:24 +00:00
Andrew Turner f91e9401c2 dev/psci: Check all compat strings
When searching for the PSCI FDT node we only check a few compat strings.
Use the existing compat_data array to check all strings the driver may
attach to.

Sponsored by:	Arm Ltd
Differential Revision:	https://reviews.freebsd.org/D44913
2024-05-10 09:29:24 +00:00
Andrew Turner 797f1c7c3d arm64: Flush the spintable release address
Ensure the spintable release address is written back from the cache
to memory. The other CPUs reading this may not be reading it with the
cache enabled so ensure it is written to the point of coherency
before issuing the wakeup sev.

As cpu_dcache_wbinv_range includes the needed barrier remove it from
the inline asm before the sev instruction.

Reviewed by:	jhibbits, kevans
Sponsored by:	Arm Ltd
Differential Revision:	https://reviews.freebsd.org/D45083
2024-05-10 09:29:24 +00:00
Andrew Turner c78ebc69c2 arm64: Support a shared release for spin-table
When releasing multiple CPUs that share a release address we need them
to wait for their turn to boot. Add a mechanism to do this by booting
them until they enable the TLB before waiting their turn to enter
init_secondary.

Reviewed by:	jhibbits, kevans
Sponsored by:	Arm Ltd
Differential Revision:	https://reviews.freebsd.org/D45082
2024-05-10 09:29:24 +00:00
Andrew Turner e353ac0cfd am64: Allow cpu.h to be included from assembly
Reviewed by:	jhibbits, kevans
Sponsored by:	Arm Ltd
Differential Revision:	https://reviews.freebsd.org/D45081
2024-05-10 09:29:24 +00:00
Dag-Erling Smørgrav 44e72c6e2e Add man page for nfslockd.
PR:		130238
MFC after:	3 days
Differential Revision:	https://reviews.freebsd.org/D45139
2024-05-10 11:23:13 +02:00
Ricardo Branco b01988d5e5 mdconfig: Print options when listing devices
PR: 278624
Reviewed by: imp
Pull Request: https://github.com/freebsd/freebsd-src/pull/1210
2024-05-09 22:43:09 -06:00
Paweł Krawczyk 042267e0cd Explain cron.d
Add details on the format of system cron files, which are mentioned in
cron(8) which refers here but barely explained here.

Reviewed by: imp
Pull Request: https://github.com/freebsd/freebsd-src/pull/1106
2024-05-09 22:34:36 -06:00
Paweł Krawczyk 783baf0012 at cron file is now in /etc/cron.d
PR: 243380
Reviewed by: imp
Pull Request: https://github.com/freebsd/freebsd-src/pull/1106
2024-05-09 22:34:06 -06:00
Alexander Ziaee 5ccaab1797 sysexits: Tidy deprecated header and manual
<sysexits.h> was deprecated in the base system in a1432b4 for FreeBSD
8.0 and is retained only for backwards compatibility.  Make that clear,
since sysexits(3) suggested using it since it was in style(9) prior
to this.

MFC after:	1 week
Co-authored-by:	imp
Fixes:		a1432b4
Reviewed by:	imp, pauamma (previous version)
Pull Request	https://github.com/freebsd/freebsd-src/pull/1195
2024-05-09 20:50:48 -06:00
Lukas R. Jackson 9f91b8aaf5 Update README.md to add pointer to release page.
Reviewed by: imp
Pull Request: https://github.com/freebsd/freebsd-src/pull/1151
2024-05-09 20:40:46 -06:00