FreeBSD/src 2f49e40 — lib/clang llvm.build.mk, lib/clang/include/llvm/Config Targets.def Disassemblers.def

llvm: add LoongArch target support, not enabled by default

Note there is ongoing work to add LoongArch support to the base system,
but having target support in llvm is an essential component.

This must be explicitly enabled using WITH_LLVM_TARGET_LOONGARCH.

Reviewed by:    dim
MFC after:      1 week
Differential Revision: https://reviews.freebsd.org/D59899
DeltaFile
+49-6lib/clang/libllvm/Makefile
+3-4share/man/man5/src.conf.5
+6-0lib/clang/llvm.build.mk
+0-3tools/build/options/WITH_LLVM_TARGET_BPF
+3-0lib/clang/include/llvm/Config/Targets.def
+3-0lib/clang/include/llvm/Config/Disassemblers.def
+64-136 files not shown
+74-1412 files

FreeBSD/src 1a6e0c3 — usr.sbin/bhyve pci_emul.c

bhyve: fix boot device ordering

EDK2's QemuBootOrderLib inspects the bootorder file provided
via fw_cfg and requires it to be NUL-terminated. Otherwise,
it rejects the supplied bootorder and falls back to its
default boot order.

Currently, bhyve registers bootorder with qemu_fwcfg_add_file()
using bootorder_len returned by open_memstream(), which excludes
the trailing NUL byte.

Fix that by passing bootorder_len + 1 to qemu_fwcfg_add_file() so
the fw_cfg payload is properly NUL-terminated.

PR:             279720
Reviewed by:    markj
Found with:     codex (gpt-5.6-sol)
MFC after:      1 week
Sponsored by:   The FreeBSD Foundation

    [3 lines not shown]
DeltaFile
+1-1usr.sbin/bhyve/pci_emul.c
+1-11 files

FreeBSD/src 592ede6 — lib/libkvm kvm_powerpc64.h kvm_minidump_powerpc64.c, lib/libkvm/tests kvm_open2_test.c

libkvm: support powerpc64 radix minidumps

PowerPC64 radix minidumps use a 64KB root directory followed by three
levels of 4KB page tables.  Add an MMU backend which walks those tables,
handles large-page leaves, and decodes their always-big-endian entries
on both powerpc64 and powerpc64le.

Reject old radix minidumps whose pmap section is empty with a specific
diagnostic.  Add a synthetic powerpc64le dump test which reads a page
through both its kernel and direct-map addresses.

PR:             298532
Reviewed by:    jhb
Approved by:    jhb (mentor)
MFC after:      2 weeks
Sponsored by:   FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D59743
DeltaFile
+270-0lib/libkvm/kvm_minidump_powerpc64_radix.c
+118-0lib/libkvm/tests/kvm_open2_test.c
+2-1lib/libkvm/Makefile
+2-0lib/libkvm/kvm_powerpc64.h
+2-0lib/libkvm/kvm_minidump_powerpc64.c
+394-15 files

FreeBSD/src a38a698 — sys/powerpc/aim mmu_radix.c

powerpc/radix: include page tables in minidumps

The radix pmap did not implement the minidump pmap callbacks, so radix
minidumps were emitted with an empty pmap section.  Such dumps do not
contain enough information for libkvm to translate kernel virtual
addresses.

Snapshot the 64KB radix root table in the pmap section, add lower-level
page-table pages to the sparse dump, and include pages backing non-DMAP
kernel mappings.  Keep the bulk direct map out of the dump while
retaining the relocated kernel image.

PR:             298532
Reviewed by:    jhb
Approved by:    jhb (mentor)
MFC after:      2 weeks
Sponsored by:   FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D59743
DeltaFile
+157-0sys/powerpc/aim/mmu_radix.c
+157-01 files

FreeBSD/src 4cb357c — sys/arm/arm minidump_machdep.c

arm: pad minidump page table

libkvm locates the sparse page array after the page-rounded PTE table
size, but the ARM minidump writer emitted only the unrounded size.  When
the table size was not page-aligned, libkvm therefore read every dumped
physical page at the wrong offset.

The mismatch was introduced when libkvm began rounding ptesize.  It has
affected ARM minidumps since ffdeef323449 ("libkvm: Improve physical
address lookup scaling."). It is exposed when the dumped KVA span is not
a multiple of 4 MiB.

Zero-pad the final PTE page and include the padding in the dump size.

Reviewed by:    jhb
Approved by:    jhb (mentor)
Fixes:          ffdeef323449 ("libkvm: Improve physical address lookup scaling.")
MFC after:      2 weeks
Sponsored by:   FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D59716
DeltaFile
+4-2sys/arm/arm/minidump_machdep.c
+4-21 files

FreeBSD/src 61f98a9 — sys/netinet6 nd6.c

nd6: Fix regeneration of temp addresses in detached state

When an on-link prefix becomes detached, the kernel keeps
generating new RFC 8981 temporary addresses for that prefix.
Fix it by ignoring the detached addresses in regen_tmpaddr().
While here, change its return type to bool.

PR:             298533
Discussed with: markj
MFC after:      3 days
Differential Revision:  https://reviews.freebsd.org/D60051
DeltaFile
+18-12sys/netinet6/nd6.c
+18-121 files

FreeBSD/src 8d31b78 — . .cirrus.yml, .cirrus-ci pkg-install.sh

ci: Remove Cirrus CI files

Cirrus CI shutted down its service on June 1, 2026 and its CI dashboard
website (https://cirrus-ci.com) is now inaccessible. Since these files
are no longer used, remove them from the repository.

Reviewed by:    brooks, emaste, lwhsu
Approved by:    olce (mentor)
MFC after:      2 weeks
Sponsored by:   FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D59858
DeltaFile
+0-237.cirrus.yml
+0-22.cirrus-ci/pkg-install.sh
+0-2592 files

FreeBSD/src 8970a9f — sys/powerpc/aim mmu_radix.c

powerpc/radix: synchronize temporary kernel mappings

The radix kremove implementation cleared a kernel PTE without
invalidating its TLB entry.  Reusing crashdumpmap could therefore keep
accessing an old physical page, causing minidumps to contain repeated
stale page contents.

Invalidate the removed kernel mapping and synchronize newly installed
kernel PTEs before they are accessed.

Reviewed by:    jhibbits
Approved by:    olce (mentor)
Fixes:          65bbba25d214 ("powerpc64: Implement Radix MMU for POWER9 CPUs")
MFC after:      2 weeks
Sponsored by:   FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D59728
DeltaFile
+3-0sys/powerpc/aim/mmu_radix.c
+3-01 files

FreeBSD/src 7b8f3db — lib/libkvm kvm_minidump_powerpc64_hpt.c kvm_minidump_powerpc64.c

libkvm: support little-endian powerpc64 minidumps

Reviewed by:    jhibbits
Approved by:    olce (mentor)
MFC after:      2 weeks
Sponsored by:   FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D59719
DeltaFile
+12-12lib/libkvm/kvm_minidump_powerpc64.c
+2-2lib/libkvm/kvm_minidump_powerpc64_hpt.c
+14-142 files

FreeBSD/src 51b1272 — lib/libkvm kvm_powerpc64.c, lib/libkvm/tests kvm_open2_test.c

libkvm: route powerpc64 minidumps to minidump backend

The regular powerpc64 core probes only checked the kernel ELF and thus
also matched minidumps.  In particular, the powerpc64le probe could
claim a minidump before the minidump backend and then reject it as an
invalid ELF core.

Exclude minidumps from both regular powerpc64 probes and add a
regression test that verifies a powerpc64le minidump reaches the
minidump parser.

Reviewed by:    jhibbits
Approved by:    olce (mentor)
Fixes:          f4eb39ba6bc9 ("[PowerPC64LE] libkvm powerpc64le support.")
MFC after:      2 weeks
Sponsored by:   FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D59719
DeltaFile
+67-0lib/libkvm/tests/kvm_open2_test.c
+4-2lib/libkvm/kvm_powerpc64.c
+71-22 files

FreeBSD/src 222210c — . Makefile.inc1, lib Makefile

libgcc_s: add libgcc_s_asneeded.so wrapper for gcc 16

GCC 16[0][1] now requires a wrapper lib to handle
`--push-state --as-needed -lgcc_s --pop-state` logic[1]
for `gcc` invocations. `g++` will still unconditionally
use `-lgcc_s`.

This fixes buildworld with gcc16.

[0] https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=8a99fdb70493df1294b53406913e5ea1fc971c13
[1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=123396

Reviewed by:    jhb
MFC after:      3 days
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D59511
DeltaFile
+11-0lib/libgcc_s_asneeded/Makefile
+4-3Makefile.inc1
+1-0lib/Makefile
+1-0lib/libgcc_s_asneeded/libgcc_s_asneeded.ldscript
+17-34 files

FreeBSD/src 188c455 — sys/conf kern.pre.mk

OFED: add -Wunused-but-set-variable to OFED_C

This keeps it in sync with sys/modules/ibcore/Makefile and
fixes the build on GCC 16 after the changes to -Wunused*[0].

[0] https://gcc.gnu.org/gcc-16/porting_to.html#changes-to-wunused

Reviewed by:    jhb
MFC after:      3 days
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D59539
DeltaFile
+1-1sys/conf/kern.pre.mk
+1-11 files

FreeBSD/src bf8c4ea — sys/dev/ixl if_ixl.c ixl_txrx.c

ixl: fix big-endian hardware interface handling

Correct the byte order at the driver interfaces that do not operate in
host order. Encode little-endian Admin Queue VSI and MAC/VLAN fields,
and decode firmware-provided queue handles, statistics indices, and
event parameters before using them.

Decode transmit descriptor writeback before examining it, and construct
VLAN descriptor fields in host order for the final descriptor
conversion. Store paged HMC descriptors in little-endian form and retain
the selected field bits when reading HMC contexts.

Keep MMIO values in host order for bus-space accessors and remove the
obsolete le16_to_cpu no-op macro. In particular, retain the atomic
bus_space_read_8() used for 64-bit registers.

On big-endian systems, the unconverted perfect-match filter flag is
presented to firmware as 0x0100 instead of 0x0001. Firmware rejects that
command with EINVAL, leaving receive traffic functional only in

    [7 lines not shown]
DeltaFile
+10-8sys/dev/ixl/ixl_pf_iflib.c
+7-6sys/dev/ixl/ixl_pf_main.c
+4-4sys/dev/ixl/ixl_pf_iov.c
+4-4sys/dev/ixl/i40e_lan_hmc.c
+5-2sys/dev/ixl/ixl_txrx.c
+3-2sys/dev/ixl/if_ixl.c
+33-263 files not shown
+35-309 files

FreeBSD/src 8092216 — sys/netinet6 udp6_usrreq.c

udp: Let jail policy rewrite the dstaddr for v6 sendto()s

When performing an unconnected sendto() on a v6 UDP socket in a classic
jail, we were not applying the usual policy of replacing the loopback
addr with the jail's primary IP.  Compare with, e.g., udp6_connect() or
the IPv4 udp_send().  Fix that.

Reported by:    Yuxiang Yang, Yizhou Zhao, Ao Wang, Xuewei Feng, Qi Li,
                and Ke Xu from Tsinghua University using GLM-5.1 from Z.ai
Reviewed by:    bz, glebius
MFC after:      2 weeks
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D59772

(cherry picked from commit fecb9537a83b6746bc731a7cb3bcf6a33df79562)
DeltaFile
+4-0sys/netinet6/udp6_usrreq.c
+4-01 files

FreeBSD/src f3b4b6b — sys/netinet6 udp6_usrreq.c

udp: Let jail policy rewrite the dstaddr for v6 sendto()s

When performing an unconnected sendto() on a v6 UDP socket in a classic
jail, we were not applying the usual policy of replacing the loopback
addr with the jail's primary IP.  Compare with, e.g., udp6_connect() or
the IPv4 udp_send().  Fix that.

Reported by:    Yuxiang Yang, Yizhou Zhao, Ao Wang, Xuewei Feng, Qi Li,
                and Ke Xu from Tsinghua University using GLM-5.1 from Z.ai
Reviewed by:    bz, glebius
MFC after:      2 weeks
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D59772

(cherry picked from commit fecb9537a83b6746bc731a7cb3bcf6a33df79562)
DeltaFile
+4-0sys/netinet6/udp6_usrreq.c
+4-01 files

FreeBSD/src f80f8c3 — share/man/man4 ktls.4, sys/kern uipc_ktls.c

ktls: Add a tunable to disable TLS receive

TLS receive offload is really only beneficial for in-kernel use cases
(such as NFS over TLS) or when using a hardware offload.  In addition,
several recent SAs have involved the TLS receive path, but the only
current mitigation for those is to disable TLS offload entirely.

Reviewed by:    ziaee, gallatin, markj
Relnotes:       yes
Sponsored by:   Netflix
Sponsored by:   Chelsio Communications
Co-authored-by: John Baldwin <jhb at FreeBSD.org>
Differential Revision:  https://reviews.freebsd.org/D57974

(cherry picked from commit 08cda4bcd43cfcb2c0b1abd29bc7cd30896727bc)
DeltaFile
+58-32tests/sys/kern/ktls_test.c
+6-1sys/kern/uipc_ktls.c
+3-1share/man/man4/ktls.4
+67-343 files

FreeBSD/src fc1a02c — sys/kern uipc_ktls.c, tests/sys/kern ktls_test.c

ktls: Fix an off-by-one bug in tls13_find_record_type()

If the entire plaintext is zero-filled, the backwards walk in
tls13_find_record_type() would return the offset of the last byte of the
TLS header.  This causes an underflow when decrypting, resulting in a
null pointer dereference.

Fix the bug and add a regression test.

Reviewed by:    gallatin, jhb
MFC after:      1 week
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D59767

(cherry picked from commit 7c5e457d3afdc7742ee24f0b5ee6e5e7aa00a6bd)
DeltaFile
+66-5tests/sys/kern/ktls_test.c
+2-2sys/kern/uipc_ktls.c
+68-72 files

FreeBSD/src 6d6a85c — sys/kern uipc_ktls.c, tests/sys/kern ktls_test.c

ktls: Fix an off-by-one bug in tls13_find_record_type()

If the entire plaintext is zero-filled, the backwards walk in
tls13_find_record_type() would return the offset of the last byte of the
TLS header.  This causes an underflow when decrypting, resulting in a
null pointer dereference.

Fix the bug and add a regression test.

Reviewed by:    gallatin, jhb
MFC after:      1 week
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D59767

(cherry picked from commit 7c5e457d3afdc7742ee24f0b5ee6e5e7aa00a6bd)
DeltaFile
+66-5tests/sys/kern/ktls_test.c
+2-2sys/kern/uipc_ktls.c
+68-72 files

FreeBSD/src 4d3f5d2 — share/man/man4 ktls.4, sys/kern uipc_ktls.c

ktls: Add a tunable to disable TLS receive

TLS receive offload is really only beneficial for in-kernel use cases
(such as NFS over TLS) or when using a hardware offload.  In addition,
several recent SAs have involved the TLS receive path, but the only
current mitigation for those is to disable TLS offload entirely.

Reviewed by:    ziaee, gallatin, markj
Relnotes:       yes
Sponsored by:   Netflix
Sponsored by:   Chelsio Communications
Co-authored-by: John Baldwin <jhb at FreeBSD.org>
Differential Revision:  https://reviews.freebsd.org/D57974

(cherry picked from commit 08cda4bcd43cfcb2c0b1abd29bc7cd30896727bc)
DeltaFile
+58-32tests/sys/kern/ktls_test.c
+6-1sys/kern/uipc_ktls.c
+3-1share/man/man4/ktls.4
+67-343 files

FreeBSD/src 7187467 — sys/kern kern_proc.c

proc: free kstack buffers when debug permission changes

The kern.proc.kstack handler allocates its output and stack buffers
before deliberately checking p_candebug again under the process lock.
If trace-control state changes between authorization checks, the failure
path balances the process and exec state but leaks both buffers.

Submitted by calif.io for the OpenAI Patch The Planet program

Signed-off-by: Andrew Griffiths <andrew at calif.io>

Fixes:          8b5abd9027b8 ("kern_proc.c: disallow execve around sysctl kern.proc.kstacks")
Reviewed by:    markj
MFC after:      1 week

(cherry picked from commit 3484217cc47c1f77d2be2ed0e012b870d1cd3dca)
DeltaFile
+2-0sys/kern/kern_proc.c
+2-01 files

FreeBSD/src 52850d1 — sys/cddl/dev/dtrace/aarch64 dtrace_asm.S

dtrace/arm64: de-pessimize dtrace_copy

When DTrace catches a data abort exception it resumes execution on the
next instruction. If a probe executes copyinto from unmapped memory,
then dtrace_copy keeps faulting on successive bytes until the loop
counter is exhausted. Detect the situation by witnessing the absence
of zero-extension from an aborted unprivileged load.

Reviewed by:    markj
MFC after:      2 weeks
Differential Revision:  https://reviews.freebsd.org/D59341

(cherry picked from commit 464b29857ff18801aca49d1001643c5cdd1324e8)
DeltaFile
+9-5sys/cddl/dev/dtrace/aarch64/dtrace_asm.S
+9-51 files

FreeBSD/src b01f66c — sys/kern kern_proc.c

proc: free kstack buffers when debug permission changes

The kern.proc.kstack handler allocates its output and stack buffers
before deliberately checking p_candebug again under the process lock.
If trace-control state changes between authorization checks, the failure
path balances the process and exec state but leaks both buffers.

Submitted by calif.io for the OpenAI Patch The Planet program

Signed-off-by: Andrew Griffiths <andrew at calif.io>

Fixes:          8b5abd9027b8 ("kern_proc.c: disallow execve around sysctl kern.proc.kstacks")
Reviewed by:    markj
MFC after:      1 week

(cherry picked from commit 3484217cc47c1f77d2be2ed0e012b870d1cd3dca)
DeltaFile
+2-0sys/kern/kern_proc.c
+2-01 files

FreeBSD/src dcb84dd — sys/dev/ice if_ice_iflib.c ice_lib.c

ice(4): Fix link bringup on driver load

Patch adding Total Port Shutdown support incorrectly
handled a case when this feature was not enabled in the NVM.
When TPS bit is not set driver should apply link configuration
according to user settings and update the status. Those steps
were mistakenly omitted, while the state flag was still set
to prevent link renegotation and status update on first
attempt to bring interface up with ifconfig.

Signed-off-by: Krzysztof Galazka <krzysztof.galazka at intel.com>

Reported by:    kbowling
Reviewed by:    kbowling
Fixes:          0011cd9f8863 ("ice(4): Support Total Port Shutdown on E830 devices")
MFC after:      2 weeks
Sponsored by:   Intel Corporation
Differential Revision:  https://reviews.freebsd.org/D59578
DeltaFile
+22-4sys/dev/ice/ice_lib.c
+2-4sys/dev/ice/if_ice_iflib.c
+24-82 files

FreeBSD/src 36d3e71 — . .mailmap

mailmap: Map stephane.rochoy at stormshield.eu to sheda@

Approved by: imp (mentor), des (mentor)
Differential Revision: https://reviews.freebsd.org/D59871
DeltaFile
+1-0.mailmap
+1-01 files

FreeBSD/src 3b97a47 — share/misc committers-src.dot

committers-src: Add sheda mentored by imp@ and des@

Approved by: imp (mentor), des (mentor)
Differential Revision: https://reviews.freebsd.org/D59871
DeltaFile
+3-0share/misc/committers-src.dot
+3-01 files

FreeBSD/src aa78707 — share/misc committers-src.dot

committers-src: Sort current commiters and imp@ & des@ mentees

Approved by: imp (mentor), des (mentor)
Differential Revision: https://reviews.freebsd.org/D59871
DeltaFile
+3-3share/misc/committers-src.dot
+3-31 files

FreeBSD/src d1c4838 — sys/x86/include x86_var.h specialreg.h, sys/x86/x86 identcpu.c

x86: add cpu_stdext_feature5

(cherry picked from commit 71f08bfa02a93d5d165ce96abc9077f36e4963b6)
DeltaFile
+10-0sys/x86/x86/identcpu.c
+5-0sys/x86/include/specialreg.h
+1-0sys/x86/include/x86_var.h
+16-03 files

FreeBSD/src d504e58 — sys/x86/include specialreg.h

x86: add definitions for the CORE_CAP and MEMORY_CTL MSRs

(cherry picked from commit 9aa031eb927720e26c8c11ce697f1c691ca0ef75)
DeltaFile
+8-0sys/x86/include/specialreg.h
+8-01 files

FreeBSD/src 9d436d9 — sys/amd64/amd64 sigtramp.S, sys/amd64/ia32 ia32_sigtramp.S

amd64/*sigtramp.S: re-enable some cfi annotations for special registers

(cherry picked from commit 64a73d1b6dc93d92daea1e2d0603fda1dddadf4a)
DeltaFile
+27-17sys/amd64/amd64/sigtramp.S
+13-6sys/amd64/ia32/ia32_sigtramp.S
+40-232 files

FreeBSD/src c2f66b6 — lib/libthr libthr.3

libthr.3: document LIBPTHREAD_PSHARED_LOCK_DESTROY_IMMEDIATE_GC

Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
DeltaFile
+7-1lib/libthr/libthr.3
+7-11 files