FreeBSD/src 65ccf92sys/kern vfs_syscalls.c, sys/sys fcntl.h

openat(2): check that userspace pass known and allowed flags

(cherry picked from commit 8a5601cff1ea32ab63df1377f61620e4f91999b3)
DeltaFile
+6-0sys/sys/fcntl.h
+4-1sys/kern/vfs_syscalls.c
+10-12 files

FreeBSD/src ee3ef70lib/libsys fork.2

fork.2: note that all methods to pre-resolve symbols have consequences

(cherry picked from commit 660498986a8e56025d9d2f9c6a0813c09a27ba8e)
DeltaFile
+2-0lib/libsys/fork.2
+2-01 files

FreeBSD/src 803a892include unistd.h

unistd.h: _Fork(2) is required by POSIX 2024

(cherry picked from commit f286933c950f6308117c8400f36f3160f6227491)
DeltaFile
+4-1include/unistd.h
+4-11 files

FreeBSD/src 090c9easys/kern vfs_aio.c kern_event.c

kevent: do not check knote lists being empty before removing a knote

(cherry picked from commit 31069fdbdae1027a6f1af7d56d418de4428ac6d9)
DeltaFile
+2-4sys/kern/vfs_aio.c
+1-2sys/kern/kern_event.c
+3-62 files

FreeBSD/src 52aed37lib/libthr libthr.3

libthr.3: describe SIGTHR

(cherry picked from commit 934a35ac2bbbcf8cd65d8824fa824eb5c6170c88)
DeltaFile
+19-0lib/libthr/libthr.3
+19-01 files

FreeBSD/src 46b2975lib/libthr libthr.3

libthr.3: describe what we mean by C runtime environment.

(cherry picked from commit fa912e3b9b5c074793bb1899f8256ea4baf72631)
DeltaFile
+6-0lib/libthr/libthr.3
+6-01 files

FreeBSD/src 6c1672asys/kern subr_early.c

subr_early.c: cleanup includes

(cherry picked from commit 4da93b9a8a5411f7386e79053d9c46df29627594)
DeltaFile
+0-2sys/kern/subr_early.c
+0-21 files

FreeBSD/src b49b3cclib/libsys ntp_adjtime.2

ntp_adjtime.2: Increase visibility

+ s/ntp/ntpd/ for correctness + apropos results in document description
+ silence a linter warning by escaping a period with a zero-width space

MFC after:      3 days
DeltaFile
+3-3lib/libsys/ntp_adjtime.2
+3-31 files

FreeBSD/src cddcca7sys/conf newvers.sh, usr.bin/yacc config.h

15.1: Update stable/15 to -PRERELEASE

This marks the start of the FreeBSD 15.1 release cycle; the stable/15
tree is now in "code slush".

Developers are encouraged to prioritize fixing bugs (and/or merging bug
fixes from HEAD) over new features at this time.  Commit approval from
re@ is not required but if new features introduce problems they may be
removed from the release.

Approved by:    re (implicit)
Sponsored by:   OpenSats Initiative
DeltaFile
+2-2sys/conf/newvers.sh
+1-1usr.bin/yacc/config.h
+3-32 files

FreeBSD/src 19887b9sbin/ifconfig Makefile

ifconfig: Do not build geneve with WITHOUT_NETLINK_SUPPORT

geneve(4) is netlink-only, therefore, don't build it with
WITHOUT_NETLINK_SUPPORT=1 set.

Reported by:    kp
Fixes:          688e289ee904 ("ifconfig: Add support for geneve (netlink)")
Differential Revision: https://reviews.freebsd.org/D55184
DeltaFile
+1-1sbin/ifconfig/Makefile
+1-11 files

FreeBSD/src a249ddfsys/powerpc/powerpc intr_machdep.c

powerpc/intr setup: Don't check intr name for IPI

Since whether or not the irq is an IPI is passed into
powerpc_setup_intr_int(), use this as the check for IPI instead of
checking the name string.
DeltaFile
+1-1sys/powerpc/powerpc/intr_machdep.c
+1-11 files

FreeBSD/src 603a29bsys/powerpc/mpc85xx platform_mpc85xx.c

mpc85xx: Support timebase sync on T-series devices

Freescale T-series QorIQ devices use a different register to twiddle the
timebase enable.
DeltaFile
+18-6sys/powerpc/mpc85xx/platform_mpc85xx.c
+18-61 files

FreeBSD/src 1fc50a4sys/powerpc/booke pmap.c, sys/powerpc/include tlb.h spr.h

powerpc/pmap: Add support for page sizes found on E6500

E6500 cores (MMUv2) support all powers-of-2 page sizes from 4k to 1TB,
not just powers of 4.  By using the other page sizes (8k, 32k, etc) we
can save on TLB1 space, saving up to ~1/3 of used TLB1 entries.
DeltaFile
+13-13sys/powerpc/include/tlb.h
+17-6sys/powerpc/booke/pmap.c
+5-0sys/powerpc/include/spr.h
+35-193 files

FreeBSD/src 2fc5810sys/dev/etherswitch/e6000sw e6000sw.c

e6000/fdt: Ignore disabled switch ports

Instead of trying to parse a bogus node, just skip it if marked
disabled.
DeltaFile
+2-0sys/dev/etherswitch/e6000sw/e6000sw.c
+2-01 files

FreeBSD/src 680e6e3sys/dev/etherswitch/e6000sw e6000sw.c e6000swreg.h

etherswitch: Add minimal support for mv88e6170 switch
DeltaFile
+4-0sys/dev/etherswitch/e6000sw/e6000sw.c
+1-0sys/dev/etherswitch/e6000sw/e6000swreg.h
+5-02 files

FreeBSD/src 6a3e222usr.bin/yacc config.h

yacc: Fix SYSTEM_NAME

This usually gets bumped by re@ when the version number changes in
sys/conf/newvers.sh, but apparently we forgot for the past two major
versions.
DeltaFile
+1-1usr.bin/yacc/config.h
+1-11 files

FreeBSD/src 0dac997sys/kern kern_descrip.c

file: Fix a format string assertion

Reported by:    Jenkins
Fixes:          e75b324c93a1 ("kern_descrip.c: Clarify allocation and freeing of fd map in fdgrowtable()")
DeltaFile
+1-1sys/kern/kern_descrip.c
+1-11 files

FreeBSD/src d88a159sys/kern uipc_socket.c

so_splice: Fix the KTLS check for the sink socket in so_splice()

Reviewed by:    gallatin
Reported by:    Claude Sonnet 4.6
Fixes:          1000cc4a0d39 ("so_splice: Disallow splicing with KTLS-enabled sockets")
MFC after:      1 week
Differential Revision:  https://reviews.freebsd.org/D56385
DeltaFile
+1-1sys/kern/uipc_socket.c
+1-11 files

FreeBSD/src bebc1a5sys/netinet in_mcast.c

in_mcast: Fix a lock leak in inp_set_source_filters()

MFC after:      3 days
Reported by:    Claude Opus 4.6
DeltaFile
+1-0sys/netinet/in_mcast.c
+1-01 files

FreeBSD/src 4dc6522usr.sbin/rtadvd rtadvd.c config.c

rtadvd(8): Set route info lifetime to 0 during shutdown

RFC 4191 section 3.1: if the received route's lifetime
is zero, the route is removed from the Routing Table if present.
Also, do not tell route information option is unknown.

PR:             263982
Reviewed by:    markj
Differential Revision: https://reviews.freebsd.org/D55448
DeltaFile
+15-2usr.sbin/rtadvd/rtadvd.c
+3-0usr.sbin/rtadvd/config.c
+18-22 files

FreeBSD/src c8d2580sys/net/route nhop_ctl.c, sys/netinet icmp6.h

nd6: Add support for route information (RFC 4191)

Implement RFC 4191 by handling received Router Adverisement (RA)
packets with route information option.
For default routes, use the route information's lifetime and
preference to overwrite the RA's lifetime/preference.
Also install and update more-specific route prefixes with the
option's lifetime and expire them when their lifetime elapses.

PR:             263982
Reviewed by:    markj
Tested by:      Marek Zarychta <zarychtam at plan-b.pwste.edu.pl>
Relnotes:       yes
Differential Revision: https://reviews.freebsd.org/D55449
DeltaFile
+336-1sys/netinet6/nd6_rtr.c
+13-1sys/netinet6/nd6.h
+8-0sys/netinet6/nd6.c
+2-0sys/netinet/icmp6.h
+1-0sys/net/route/nhop_ctl.c
+360-25 files

FreeBSD/src 48a05f8stand/libofw openfirm.c openfirm.h, stand/powerpc/ofw ofwfdt.c

stand/libofw: make OF_hasprop() part of the library

Currently it is only needed by powerpc ofwfdt.c, and defined statically
there. Make it available as part of libofw, mirroring what we have in
the kernel.

Two small tweaks are made to the implementation:
  1. Return type is changed to bool
  2. Return 'true' when OF_getproplen() == 0. This matches the expected
     semantics of the kernel version, described in OF_hasprop(9).

Reviewed by:    manu, imp, adrian
MFC after:      3 days
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D56429
DeltaFile
+7-0stand/libofw/openfirm.c
+0-6stand/powerpc/ofw/ofwfdt.c
+1-0stand/libofw/openfirm.h
+8-63 files

FreeBSD/src fa77feclib/libsys/x86 pkru.3

pkru.3: Note that the kernel may not respect PKRU protections

There are cases where the kernel will be able to access memory covered
by a PKRU key which nomially prohibits accesses.  I believe regular
copyin()/copyout() are subject to the contents of PKRU, but memory
accesses via uiomove_fromphys() will not be.  This can arise when
performing fault I/O, for instance.  I didn't test, but I suspect AIO is
another case.

Update the man page to acknowledge this.

Reviewed by:    alc, kib
MFC after:      1 week
Differential Revision:  https://reviews.freebsd.org/D56416
DeltaFile
+10-7lib/libsys/x86/pkru.3
+10-71 files

FreeBSD/src fe6bf73lib/libsys/x86 pkru.3

pkru.3: Remove a qualifier

Now that i386 kernels are deprecated, we don't really need to mention
this limitation.  It's also a bit dated since PKRU is supported with
5-level paging as well.

Reviewed by:    alc, kib
MFC after:      1 week
Differential Revision:  https://reviews.freebsd.org/D56415
DeltaFile
+0-3lib/libsys/x86/pkru.3
+0-31 files

FreeBSD/src 40dacfeusr.sbin/rtadvd config.c

rtadvd: Fix validation of the MTU parameter when parsing config

MFC after:      1 week

(cherry picked from commit 607f6be6ec19f49ff595226afe1c8aa6515c59a0)
DeltaFile
+1-1usr.sbin/rtadvd/config.c
+1-11 files

FreeBSD/src 547d709sys/netinet ip_divert.c

divert: Use a better source identifier for netisr_queue_src() calls

These opaque IDs are used by netisr to distribute work among threads.
The mapping function is simply SourceID % numthreads, so using socket
addresses as source IDs isn't going to distribute packets well due to
alignment.

Use the divert socket's generation number instead, as that suits this
purpose much better.

Reviewed by:    zlei, glebius
MFC after:      1 week
Sponsored by:   OPNsense
Sponsored by:   Klara, Inc.
Differential Revision:  https://reviews.freebsd.org/D55537

(cherry picked from commit 5547a7bb39accd8f151b53e90b41d13b55f84c95)
DeltaFile
+4-2sys/netinet/ip_divert.c
+4-21 files

FreeBSD/src 62fbb17sys/kern imgact_elf.c

imgact_elf: Unconditionally initialize a variable in a note handler

In the sb == NULL case, we are computing the size of the note using a
dummy sbuf drain handler which counts bytes and discards the contents of
the buffer, so the fact that "structsize" is uninitialized doesn't
matter.  But, the compiler may complain about this, so we might as well
just initialize it unconditionally to silence the warning, as other
handlers already do.

PR:             292811
MFC after:      1 week

(cherry picked from commit 8a68c2509c00ae0dbeab64064bb600cfac787a73)
DeltaFile
+1-1sys/kern/imgact_elf.c
+1-11 files

FreeBSD/src b77bd0esys/compat/freebsd32 freebsd32_misc.c

freebsd32: Fix freebsd11_nstat copyout condition

freebsd11_freebsd32_nstat() invoked copyout(2) when
freebsd11_cvtnstat32() failed and skipped copyout on success. This is
backwards.

Fix this to match freebsd11_freebsd32_nlstat() and freebsd11_nstat(),
and only copy the nstat32 result to userspace when conversion succeeds.

Signed-off-by:  Weixie Cui <cuiweixie at gmail.com>
Reviewed by:    mhorne
MFC after:      1 week
Pull Request:   https://github.com/freebsd/freebsd-src/pull/2109

(cherry picked from commit c6224994ac70b4f71ef9e11903bb2e50ed2b1bfe)
DeltaFile
+1-1sys/compat/freebsd32/freebsd32_misc.c
+1-11 files

FreeBSD/src 95d6612share/man/man9 malloc.9

malloc.9: adjust flag table indentation

The current indentation is shorter than all but one of these flags. This
renders much more nicely.

MFC after:      3 days

(cherry picked from commit be79a42275cad21c6087d8bbd6a328735ea813fa)
DeltaFile
+1-1share/man/man9/malloc.9
+1-11 files

FreeBSD/src ce33f96sys/dev/mlx5/mlx5_en mlx5_en_main.c

mlx5e: Ensure rx timestamps are monotonically increasing

The clock calibration routine currently can result in rx timestamps
jumping backwards, which can confuse the TCP stack.
Ensure they are monotonically increasing by estimating what
we'd calculate as the next timestamp and clamp the calibration
so new timestamps are no earlier in time.

Reviewed by: kib, nickbanks_netflix.com
Tested by: nickbanks_netflix.com
Differential Revision: https://reviews.freebsd.org/D56427
Sponsored by: Netflix
DeltaFile
+50-0sys/dev/mlx5/mlx5_en/mlx5_en_main.c
+50-01 files