FreeBSD/src 1102bff. configure.ac, lib xmlparse.c Makefile.in

Vendor import of expat 2.8.0
DeltaFile
+118-200lib/xmlparse.c
+156-14lib/Makefile.in
+13-143tests/Makefile.in
+117-18configure.ac
+90-0lib/random_getrandom.c
+88-0lib/random_rand_s.c
+582-37545 files not shown
+1,275-88051 files

FreeBSD/src c73cd9csys/arm/allwinner if_awg.c

if_awg: Add missing awg_poll() prototype

The function awg_poll() was missing a prototype, which causes the build
to fail if DEVICE_POLLING is enabled, which it is in the ARMADAXP config.

MFC after:      2 weeks
Reviewed by:    tuexen, mmel, adrian
Sponsored by:   https://www.patreon.com/bsdivy
Differential Revision:  https://reviews.freebsd.org/D56651
DeltaFile
+3-0sys/arm/allwinner/if_awg.c
+3-01 files

FreeBSD/src 221b1d4packages Makefile

packages: Don't build quotacheck if WITHOUT_QUOTAS=yes

PR:     294775
Fixes:  bb75b0d581f7 ("packages: Convert world to a subdir build")
MFC after:      2 weeks
Reported by:    Alastair Hogge <agh at riseup.net>
Sponsored by:   https://www.patreon.com/bsdivy
Differential Revision:  https://reviews.freebsd.org/D56635
DeltaFile
+1-1packages/Makefile
+1-11 files

FreeBSD/src 912f9dfsys/amd64/ia32 ia32_syscall.c

amd64: ia32_fetch_syscall_args() does not need to check params != NULL

Whatever params pointer is, it does not matter.  copyin() handles any
values.  In fact, params cannot be ever NULL.

Reviewed by:    markj
Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
Differential revision:  https://reviews.freebsd.org/D56630
DeltaFile
+1-1sys/amd64/ia32/ia32_syscall.c
+1-11 files

FreeBSD/src bd8edbasys/amd64/ia32 ia32_syscall.c

amd64 ia32_syscall(): only allow for ILP32 processes

64bit processes can issue INT $0x80 instruction, and get the syscall
dispatched through ia32_syscall().  This works because syscall argument
fetch and result return are selected from the process sysent.

But, ia32_syscall() does not verify some conditions and does not perform
some actions which are considered unnecessary because the caller is
supposed to only access lower 4G.  The INT syscall path breaks this
assumption.

We never supported such hack, so disable it.  Send the offending thread
SIGBUS as if #GP was issued by hardware due to IDT vector 0x80 having
not numerically high enough DPL value.

Reviewed by:    markj
Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
Differential revision:  https://reviews.freebsd.org/D56630
DeltaFile
+9-0sys/amd64/ia32/ia32_syscall.c
+9-01 files

FreeBSD/src e378d97sbin/init init.8

init.8: add RECOVERING section

Reviewed by:    imp, jilles
Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
Differential revision:  https://reviews.freebsd.org/D56536
DeltaFile
+35-0sbin/init/init.8
+35-01 files

FreeBSD/src 9e6ae89sbin/init init.8

init.8: document init_path among loader tunables

Reviewed by:    imp, jilles
Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
Differential revision:  https://reviews.freebsd.org/D56536
DeltaFile
+5-0sbin/init/init.8
+5-01 files

FreeBSD/src a268af3sys/kern init_main.c

kern/init_main.c: path is for the binary, not process

Reviewed by:    imp, jilles
Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
Differential revision:  https://reviews.freebsd.org/D56536
DeltaFile
+1-1sys/kern/init_main.c
+1-11 files

FreeBSD/src d7338bbbin/sh main.c

bin/sh: make it possible to use as interactive init

If the /sbin/init binary is broken somehow, the way out is to set the
loader environment variable init_path to something else.  The most
natural choice would be either /bin/sh or /rescue/sh.  Unfortunately,
this does not work because the init process starts withoud stdin/out
descriptors.

Make it nicer to users by teaching /bin/sh startup code to open standard
descriptors on /dev/console if the shell is run as init.

Reviewed by:    imp, jilles, zlei
Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
Differential revision:  https://reviews.freebsd.org/D56536
DeltaFile
+19-0bin/sh/main.c
+19-01 files

FreeBSD/src 24d8874sbin/init Makefile

init: build dynamically

This makes it easier to downgrade kernel when it stops providing some
syscall required by libc.  In this case, it is enough to downgrade libc
as well, our crt1 delegates all non-trivial work to
libc::__libc_start1().  With static init, the /sbin/init should be
downgraded as well, which might be not easy.

This does not mean that we support forward compatibility.

Reviewed by:    imp, jilles, zlei
Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
Differential revision:  https://reviews.freebsd.org/D56536
DeltaFile
+0-2sbin/init/Makefile
+0-21 files

FreeBSD/src f60defbsys/conf std.nodebug

conf/std.nodebug: disable DEBUG_LOCKS

(cherry picked from commit 85a04bea5a54d6879c8fbf49eea20aba7ca24692)
DeltaFile
+1-0sys/conf/std.nodebug
+1-01 files

FreeBSD/src fad4e7bsys/kern kern_membarrier.c

membarrier(2): use atomic for lockless read of curproc->p_flag2

(cherry picked from commit 950fd59955e10429c1325c327f0141a7e97fcfe5)
DeltaFile
+7-6sys/kern/kern_membarrier.c
+7-61 files

FreeBSD/src ea8fd84lib/libkvm kvm_proc.c, sys/compat/freebsd32 freebsd32.h

kern/proc: expose reaper PID and subtree root in struct kinfo_proc

PR:     293871

(cherry picked from commit 0f89380a3d208d67698f2d35afd35257e5fdbe09)
DeltaFile
+8-0lib/libkvm/kvm_proc.c
+3-1sys/compat/freebsd32/freebsd32.h
+4-0sys/kern/kern_proc.c
+3-1sys/sys/user.h
+18-24 files

FreeBSD/src b024a8dlib/libsys membarrier.2

membarrier.2: document MEMBARRIER_CMD_GET_REGISTRATIONS

(cherry picked from commit 324b3c2892a53e5fd9b1d8795a31a59ee835c5de)
DeltaFile
+6-0lib/libsys/membarrier.2
+6-01 files

FreeBSD/src 342ce4bsys/kern kern_membarrier.c, sys/sys membarrier.h

membarrier(2): implement the MEMBARRIER_CMD_GET_REGISTRATIONS command

(cherry picked from commit aaa10396a997bafc28ce6551e92563620caf3df4)
DeltaFile
+17-3sys/kern/kern_membarrier.c
+3-0sys/sys/membarrier.h
+20-32 files

FreeBSD/src f7bf9fdsys/netinet tcp_hpts_test.c

tests/tcp_hpts_test: Fix resource leaks

When a KTEST_EQUAL assertion fails, the test function returns, but this
can cause it to leak locks, which can trigger a panic under witness.
Add a variant which causes control flow to jump to a label in case of
failure, and use that to prevent this problem.

Reviewed by:    Nick Banks <nickbanks at netflix.com>, tuexen
MFC after:      1 weeks
Differential Revision:  https://reviews.freebsd.org/D56647
DeltaFile
+22-5sys/netinet/tcp_hpts_test.c
+22-51 files

FreeBSD/src 16ed84dinclude stdbit.h, sys/sys stdint.h

include/stdbit.h: declare size_t, (u)int*_t, and (u)int_least*_t

These are required by ISO/IEC 9899:2024 § 7.18.1 ¶ 1 but were forgotten
in my initial work.

The current approach leaks intptr_t, uintptr_t, intmax_t, and uintmax_t
through <sys/_stdint.h>.  This could be avoided using a more complicated
approach if desired.

PR:             294131
Fixes:          6296500a85c8474e3ff3fe2f8e4a9d56dd0acd64
Reported by:    Collin Funk <collin.funk1 at gmail.com>
Reviewed by:    imp
MFC after:      1 week
Differential Revision:  https://reviews.freebsd.org/D56515

(cherry picked from commit c8c9324c94dfd4eeecbcfe4a1d3daa047420d3e5)
DeltaFile
+21-1include/stdbit.h
+3-0sys/sys/stdint.h
+24-12 files

FreeBSD/src 92e5f6esys/x86/x86 ucode_subr.c

x86/ucode: fix gcc uninitialised warning

This fixes the case where selected_size is never set to anything
in the loop.  Whilst here, also set selected_fw to NULL so the case
of "no firmware" correctly sets everything to NULL/0.

```
  --- ucode_subr.o ---
  /workspace/src/sys/x86/x86/ucode_subr.c: In function 'ucode_amd_find':
  /workspace/src/sys/x86/x86/ucode_subr.c:237:25: warning: 'selected_size' may be used uninitialized [-Wmaybe-uninitialized]
    237 |         *selected_sizep = selected_size;
        |         ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/  workspace/src/sys/x86/x86/ucode_subr.c:105:16: note: 'selected_size' was declared here
    105 |         size_t selected_size;
        |                ^~~~~~~~~~~~~
```

Reviewed by:    emaste
Differential Revision:  https://reviews.freebsd.org/D55439
DeltaFile
+2-2sys/x86/x86/ucode_subr.c
+2-21 files

FreeBSD/src 4feeca3usr.bin/tail reverse.c

tail(1): Fix -r (reverse) to work on pseudo filesystems

Pseudo filesystems (e.g., procfs) advertise a zero file size.
Fix reverse() to handle such a case similarly as forward() so
that '-r' works on pseudo filesystems.

Signed-off-by:  Aaron LI <aly at aaronly.me>
Reviewed by:    pouria, Ricardo Branco <rbranco at suse.de>, des
Fixes:          1fb3caee7 ("tail: Do not trust st_size if it equals zero.")
Pull-Request:   https://github.com/freebsd/freebsd-src/pull/2080
DeltaFile
+1-1usr.bin/tail/reverse.c
+1-11 files

FreeBSD/src 8a9c94cpackages/bhyve Makefile

packages: make bhyve depend on acpi

bhyve(8) on amd64 needs iasl(8) to run, otherwise it fails with:

  /bin/sh: /usr/sbin/iasl: not found
  bhyve: BASL failed @ build_dsdt:484
      Failed to execute basl_compile(ctx, basl_fwrite_dsdt): Unknown
  error: 32512
  bhyve: BASL failed @ acpi_build:899
      Failed to execute build_dsdt(ctx): Unknown error: 32512
  Assertion failed: (error == 0), function bhyve_init_platform_late, file
  /home/pkgbuild/worktrees/main/usr.sbin/bhyve/amd64/bhyverun_machdep.c,
  line 394.

Register the "acpi" package which provides iasl(8) as a dependency for
bhyve on amd64.

Reviewed by:            markj (previous revision), ivy
Differential Revision:  https://reviews.freebsd.org/D56498
Sponsored by:           The FreeBSD Foundation
DeltaFile
+5-0packages/bhyve/Makefile
+5-01 files

FreeBSD/src 1abfe75tools/build depend-cleanup.sh

depends-cleanup: Fix typos in comment

Fixes:          4dd97955e68d ("libpkgconf: Fix paths")
DeltaFile
+1-1tools/build/depend-cleanup.sh
+1-11 files

FreeBSD/src 4f9f09dsys/compat/linprocfs linprocfs.c

compat/linprocfs: Add some entries to /proc/sys/fs and /proc/sys/kernel

Add following sys/fs entries to linprocfs(4):
* proc/sys/fs/file-max
* proc/sys/fs/file-nr
* proc/sys/fs/nr_open
* proc/sys/fs/overflowuid
* proc/sys/fs/overflowgid
* proc/sys/fs/suid_dumpable
* proc/sys/fs/protected_hardlinks
Also, add /proc/sys/kernel/threads-max

Signed-off-by:  Ricardo Branco <rbranco at suse.de>
PR:             294713
Reviewed by:    markj, pouria
Pull-Request:   https://github.com/freebsd/freebsd-src/pull/2159
DeltaFile
+150-0sys/compat/linprocfs/linprocfs.c
+150-01 files

FreeBSD/src b7daab8libexec/rc/rc.d Makefile, packages Makefile.i386 Makefile.riscv64

apm: Only install rc script on i386

The apm(8) rc script only works on i386, but it's installed on all
platforms.  Only install it on i386, which avoids creating a useless
FreeBSD-apm package on other platforms.

While here, build the acpi package on i386.

MFC after:      2 weeks
Reviewed by:    imp
Sponsored by:   https://www.patreon.com/bsdivy
Differential Revision:  https://reviews.freebsd.org/D56629
DeltaFile
+18-0packages/Makefile.i386
+3-3libexec/rc/rc.d/Makefile
+0-6packages/apm/Makefile
+3-0tools/build/mk/OptionalObsoleteFiles.inc
+0-1packages/Makefile.riscv64
+0-1packages/Makefile.powerpc
+24-112 files not shown
+24-138 files

FreeBSD/src 6e30854usr.sbin/service service.sh

service(8): Replace indentation in usage()

The -d option was indented with spaces instead of tabs, and this broke
formatting.

Before:

-d                Enable debugging of rc.d scripts
-j              Perform actions within the named jail

After:

-d              Enable debugging of rc.d scripts
-j              Perform actions within the named jail

MFC after:      1 week

(cherry picked from commit 554f5aa526266057672740e22af0a75cc32bddd5)
DeltaFile
+1-1usr.sbin/service/service.sh
+1-11 files

FreeBSD/src 4dd9795lib/libpkgconf Makefile, tools/build depend-cleanup.sh

libpkgconf: Fix paths

${LOCALBASE:U} evaluates to exactly the same thing as ${LOCALBASE}.
Presumably what was meant was ${LOCALBASE:U/usr/local}.

Fixes:          b8352da33f34 ("pkgconf: import into the base system")
Reviewed by:    khorben
Differential Revision:  https://reviews.freebsd.org/D56642
DeltaFile
+2-2lib/libpkgconf/Makefile
+4-0tools/build/depend-cleanup.sh
+6-22 files

FreeBSD/src 4fc1503tests/sys/netpfil/pf pass_block.sh

pf: fix duplicate rule detection for automatic tables

We should look at the table name for automatic tables as well. These
are different tables, so the rules using them are (or can be) different
as well.

MFC after:      3 days
Reported by:    Michael Sinatra <michael at burnttofu.net>
Sponsored by:   Rubicon Communications, LLC ("Netgate")

(cherry picked from commit fb838352751767e756bd45cd2040fa464ed4de20)
DeltaFile
+42-0tests/sys/netpfil/pf/pass_block.sh
+42-01 files

FreeBSD/src fdcc60fsys/netpfil/pf pf_ioctl.c, tests/sys/netpfil/pf pass_block.sh

pf: fix duplicate rule detection for automatic tables

We should look at the table name for automatic tables as well. These
are different tables, so the rules using them are (or can be) different
as well.

MFC after:      3 days
Reported by:    Michael Sinatra <michael at burnttofu.net>
Sponsored by:   Rubicon Communications, LLC ("Netgate")

(cherry picked from commit fb838352751767e756bd45cd2040fa464ed4de20)
DeltaFile
+42-0tests/sys/netpfil/pf/pass_block.sh
+1-3sys/netpfil/pf/pf_ioctl.c
+43-32 files

FreeBSD/src 28932dcsys/net if_tuntap.c

tuntap: add SIOCGIFCAP and SIOCSIFCAP ioctls

Add SIOCGIFCAP ioctl-command for tun/tap character device to be used
by bhyve for offloading in the future.
Add SIOCSIFCAP for symmetry.

Reviewed by:            markj, pouria, tuexen
MFC after:              1 week
Event:                  Wiesbaden Hackathon 2026
Differential Revision:  https://reviews.freebsd.org/D51289
DeltaFile
+17-0sys/net/if_tuntap.c
+17-01 files

FreeBSD/src 1bfd392share/man/man4 vtnet.4, sys/arm/allwinner if_awg.c

vtnet: remove loader tunable fixup_needs_csum

Removes the deprecated loader tunable fixup_needs_csum. Removes also
the sysctl counter rx_csum_bad_offset that is no longer in use.

Reviewed by:            tuexen
Event:                  Wiesbaden Hackathon 2026
Differential Revision:  https://reviews.freebsd.org/D55588
DeltaFile
+12-66sys/dev/virtio/network/if_vtnet.c
+2-22share/man/man4/vtnet.4
+7-7sys/arm/allwinner/if_awg.c
+21-953 files

FreeBSD/src 724ad12sys/netinet tcp_timewait.c

tcp: use RFC 6191 for connection recycling in TIME-WAIT

Implement the criteria specified in RFC 6191 for recycling TCP
connections in TIME-WAIT.

Reviewed by:            rscheff, Marius Halden
Sponsored by:           Netflix, Inc.
Differential Revision:  https://reviews.freebsd.org/D56321
Event:                  Wiesbaden Hackathon 2026

(cherry picked from commit 3a54aa3b0911bef15e014b8a8185e116efb0a918)
DeltaFile
+8-3sys/netinet/tcp_timewait.c
+8-31 files