XZ kernel build cleanup
-I${SRCTOP}/sys/contrib/xz-embedded/linux/lib/xz isn't used, and
.PATH: ${SRCTOP}/sys/contrib/xz-embedded/freebsd isn't used either.
Remove them both to simplify things a little.
Sponsored by: Netflix
kldxref: Add -m filag to print info about modules in one file
kldxref -m <file> will print the same data that the '-d' flag produces,
except restrict the output to one file. This should be the full path to
the file, and the directory name to process is omitted.
Sponsored by: Netflix
Differential Revision: https://reviews.freebsd.org/D57902
loader: Add two new build knobs for x86 BIOS loaders
We have two sets of BIOS loaders: One that lives in stand/i386 and one
that lives in stand/userboot. Add knows to turn these on/off, with the
default being on. These often aren't needed when creating a minimal UEFI
system, so add knobs to turn them off. Given light-weight VMs have
created a new use cases for these loaders, there's no plans at all to
eliminate them.
Sponsored by: Netflix
Differential Revision: https://reviews.freebsd.org/D58072
Revert "loader.efi: Trim ZFS searching for other booting options"
This reverts commit 3e3fd1fde8e168910edc538966111c0b5f03cd5f.
This appears to break chainbooting with boot1.efi and similar scenarios
with Root-on-ZFS scenarios. Revert until it's better understood.
PR: 296309
Sponsored by: Netflix
Differential Revision: https://reviews.freebsd.org/D58071
loader.efi: Fix off by one error in size of the virtual disk
The end address is the final byte in the array, not one byte past the
end of the array, so we need to add 1 to get the full length.
Fixes: 59219fc76a4b ("loader.efi: efiblk_memdisk_preload passes the VirtualDisks to FreeBSD")
Sponsored by: Netflix
Differential Revision: https://reviews.freebsd.org/D58069
laoder.efi: Fix error in download protcol
The download protocol calls download_data with FileOffset and
BufferLength of 0 first to start the download (no data yet
available). Calls it again with BufferLength == 0 and FileOffset the
size of the download (again, no data). It then starts calling with
BufferLength != 0 and FileOffset == 0 to start the download. The
heuristic I used to detect the start was wrong, so we'd allocate the
buffer twice. Fix that by being more explicit and not using the
heuristic that was bogus.
Fixes: afee781523e4 ("loader.efi: Recognize new memdisk=<url> and memcd=<url> options")
Sponsored by: Netflix
Differential Revision: https://reviews.freebsd.org/D58068
loader.efi: Simplify the code for null decompression a little
This code is simpler when we spell it the Unix way. Also, add sanity
checks to make sure the offset is where we think it is.
Fixes: afee781523e4 ("loader.efi: Recognize new memdisk=<url> and memcd=<url> options")
Sponsored by: Netflix
Differential Revision: https://reviews.freebsd.org/D58070
MINIMAL: Add device md
This can't be a loadable module, so add it to MINIMAL
Sponsored by: Netflix
Differential Revision: https://reviews.freebsd.org/D58067
[NFC][AMDGPU] Add tests for eliminateFrameIndex
Add MIR tests to cover all instances where a Vgpr needs to be scavenged
and used due to Sgpr scarcity, during elimination of frame indices.
[flang][OpenMP] Lower target in_reduction for host fallback
Enable host-fallback lowering for target in_reduction in Flang and MLIR OpenMP translation.
Model target in_reduction through the matching map entry, force address-preserving implicit mapping for Flang in_reduction list items, and emit the host-side task-reduction lookup with __kmpc_task_reduction_get_th_data. The runtime entry point takes and returns a generic, default-address-space pointer, so normalize a non-default-address-space captured pointer to the generic address space before the call and cast the returned private pointer back to the map block argument's address space, mirroring the in_reduction handling on omp.taskloop. On the target device, in_reduction is handled as a regular map(tofrom) variable. The byref modifier, two-argument initializers, cleanup regions, and the remaining Flang COMMON/EQUIVALENCE/privatized-variable cases continue to be diagnosed.
Add Flang lowering, MLIR verifier/translation, and LLVM IR tests for the supported host-fallback path, including a non-default-address-space case, and the remaining unsupported cases.
update transmission (and -gtk, and -qt, and -common) to 4.1.3
Fixed a CORS bug that leaked the anti-CSRF nonce. (#8938)
Fixed a use-after-free bug in peer code. (#8921)
Fixed build error when compiling with fmt 12.2.0. (#8942)
Fixed a 4.1.2 build error in tests. (#8881)
Add new user.* nodes to sysctl
This adds the nodes (and documentation for them):
user.ostype = NetBSD
user.osrevision = 1199000600
user.osrelease = 11.99.6
user.built = 2026-07-10 02:46:18 UTC
to the sysctl mib (the values shown there just what happened for a test build).
The first three are more or less identical to the kern.* mib variables of the
same names - the difference is that these reflect userland, or at least, libc
so do not alter just because a new updated kernel is booted without updating
the rest of the system. The fourth gives either the date when libc was
built (as shown) or if the value contains a trailing "!" (after a space
after UTC) the value is the MKREPERO_TIMESTAMP for the build (keep building
with the same value and the date/time there won't alter). The date/time
are always in UTC.
[11 lines not shown]
[RISCV][P-ext] Improve the codegen for pzip (#208479)
This patch recognizes interleaved shuffle (as packed zip intrinsics use)
and selects the corresponding instructions.
[flang] Do not implicitly use module when processing the module (#208582)
https://github.com/llvm/llvm-project/pull/207824 Added ability to use
implicitly a module. The use should not happen while processing the
module used implicitly.
Adding src/lib/libc/gen/grab-version.sh
A simple script that gets current system version information and
builds a header file containing it. To be used in a following commit.
[Clang] ASTUnit should use the CompilerInstance's CodeGenOptions (#195338)
Currently, `ASTUnit::LoadFromCompilerInvocation()` just calls the
constructor of `ASTUnit`, which default-constructs a `CodeGenOptions`
instance. The options from the `CompilerInstance` are never actually
saved in the `ASTUnit`. As a result, serialising the `ASTUnit` ends up
serialising the default-constructed `CodeGenOptions` rather than the
_actual_ `CodeGenOptions`.
This is problematic if you attempt to do the following:
1. Call e.g. `buildASTFromCodeWithArgs()` to build an `ASTUnit`
2. Serialise that `ASTUnit`.
3. Call e.g. `buildASTFromCodeWithArgs()` again with the exact same
arguments and add use the first `ASTUnit` as a PCH using `-include-pch`.
This causes Clang to error because the `CodeGenOptions` we deserialised
for the first `ASTUnit` (the default-constructed ones) are incompatible
with the `CodeGenOptions` implicitly created for the second TU (which
were created by the `CompilerInstance` and potentially modified due to
[4 lines not shown]
[CodeGen][BranchFolding] Add options to control common hoisting and block reordering (#205704)
The BranchFolder pass performs several independent optimizations: tail
merging, common-code hoisting, and branch optimization (which includes
basic-block reordering). Currently only tail merging is individually
controllable -- it is disabled for targets that require a structured
CFG,
because tail merging can make the CFG irreducible. Common-code hoisting
and
basic-block reordering always run whenever the pass executes.
Those two sub-phases do not change CFG edges (so they cannot affect
reducibility); they only change block layout. A target whose register
allocation is sensitive to the final block layout may need the rest of
branch folding while suppressing reordering and/or hoisting. This is a
layout / register-allocation concern, distinct from the structured-CFG
(reducibility) concern that gates tail merging.
This change makes common-code hoisting and basic-block reordering
[21 lines not shown]