FreeBSD/src 7d7295dsys/arm64/arm64 pmap.c support.S, sys/arm64/include machdep.h

arm64: Add MOPS implementation of pagezero()

Reimplement pagezero() as ifunc. As pagezero() is only used in pmap.c,
move ifunc to that file.

Reviewed by:    andrew
Sponsored by:   Arm Ltd
Differential Revision:  https://reviews.freebsd.org/D54946
DeltaFile
+22-0sys/arm64/arm64/pmap.c
+12-0sys/arm64/arm64/support.S
+0-10sys/arm64/arm64/machdep.c
+0-1sys/arm64/include/machdep.h
+34-114 files

FreeBSD/src 2ccbf06sys/arm64/arm64 machdep.c memcpy.S, sys/arm64/include cpu.h

arm64: Add MOPS implementations of memset(), memcpy() and memmove()

Enable the use of MOPS implementations of memset, memcpy and memmove within
the kernel. Fix pre-ifunc resolution uses of these functions.

Reported by:    andrew
Sponsored by:   Arm Ltd
Differential Revision:  https://reviews.freebsd.org/D55051
DeltaFile
+36-2sys/arm64/arm64/machdep.c
+20-4sys/arm64/arm64/memcpy.S
+10-2sys/arm64/arm64/memset.S
+5-5sys/arm64/arm64/pmap.c
+6-1sys/arm64/include/cpu.h
+3-2sys/arm64/arm64/identcpu.c
+80-161 files not shown
+81-177 files

FreeBSD/src 18af5a1sys/arm64/arm64 trap.c

arm64: Enable MOPS usage in the kernel

Support handling kernel-side MOE exceptions.

Reported by:    andrew
Sponsored by:   Arm Ltd
Differential Revision:  https://reviews.freebsd.org/D54943
DeltaFile
+63-60sys/arm64/arm64/trap.c
+63-601 files

FreeBSD/src 1224347sys/arm64/arm64 copyinout.S copyinout_ifunc.c, sys/conf files.arm64

arm64: Add MOPS implementations of copyin/copyout

Reimplement copyin() & copyout() as ifuncs.

Reviewed by:    andrew
Sponsored by:   Arm Ltd
Differential Revision:  https://reviews.freebsd.org/D54947
DeltaFile
+52-6sys/arm64/arm64/copyinout.S
+50-0sys/arm64/arm64/copyinout_ifunc.c
+1-0sys/conf/files.arm64
+103-63 files

FreeBSD/src 6cfdd55usr.bin/diff/tests diff_test.sh

diff: Correctly declare tests

Sponsored by:   Klara, Inc.
Fixes:          5fc739eb5949 ("diff: Fix integer overflows in Stone algorithm")
Fixes:          270492602b9b ("diff: Add test case for pagination resource leak")
Fixes:          590126789c84 ("diff: Don't compare a file or directory to itself")

(cherry picked from commit 157d6664aeb815db3b758bd3038fd1512a0f4e2c)
DeltaFile
+2-0usr.bin/diff/tests/diff_test.sh
+2-01 files

FreeBSD/src 9c99eacusr.bin/diff diffdir.c diffreg.c, usr.bin/diff/tests diff_test.sh

diff: Don't compare a file or directory to itself

While here, stop abusing struct dirent for something we don't even need
to store.

PR:             254455
MFC after:      1 week
Sponsored by:   Klara, Inc.
Reviewed by:    thj, kevans
Differential Revision:  https://reviews.freebsd.org/D55113

(cherry picked from commit 590126789c841d80655869bc075c8980c173dd1c)

diff: Fix build

rc must be defined first.

Fixes:          590126789c84
MFC after:      1 week

    [3 lines not shown]
DeltaFile
+19-0usr.bin/diff/tests/diff_test.sh
+8-6usr.bin/diff/diffdir.c
+3-0usr.bin/diff/diffreg.c
+30-63 files

FreeBSD/src 44cf3a1usr.bin/diff pr.c pr.h

diff: Fix pagination leak

* Drop an unnecessary variable and rename pidfd to procd.

* Rewinding stdout serves no purpose, so stop doing it.

* Don't bother freeing memory or setting the global status right
  before erroring out.

* Error out if dup(2) or dup2(2) fail.

* In the unlikely case that our pipe is equal to stdout, we need to
  record that information so we don't close it when cleaning up.

* Don't bother closing a descriptor before dup2(2)ing to it.

* Don't forget to close the the process descriptor after reaping the
  child process.


    [7 lines not shown]
DeltaFile
+10-12usr.bin/diff/pr.c
+1-0usr.bin/diff/pr.h
+11-122 files

FreeBSD/src f085220usr.bin/diff/tests diff_test.sh

diff: Add test case for pagination resource leak

The pagination code leaks either processes or descriptors or both,
depending on the exact version of the code you have.  Add a test case
which exercises this leak to facilitate fixing it.

MFC after:      1 week
Sponsored by:   Klara, Inc.
Reviewed by:    thj, kevans
Differential Revision:  https://reviews.freebsd.org/D55111

(cherry picked from commit 270492602b9bd8b8fce4f021f055804978bf3f23)
DeltaFile
+21-0usr.bin/diff/tests/diff_test.sh
+21-01 files

FreeBSD/src 083f8f3sys/contrib/dev/athk/ath10k ce.c

ath10k: update Atheros/QCA's ath10k driver

This version is based on
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
05f7e89ab9731565d8a62e3b5d1ec206485eeb0b ( tag: v6.19 ).

Sponsored by:   The FreeBSD Foundation
MFC after:      3 days
DeltaFile
+8-8sys/contrib/dev/athk/ath10k/ce.c
+8-81 files

FreeBSD/src 4c23a98sys/kern subr_asan.c

asan: Use memset_early() to fill shadow memory

__builtin_memset() calls are replaced with calls to memset(), but that
can't be used before ifunc relocations are processed if the
implementation is selected at boot time.  Meanwhile, the sanitizer may
emit calls to __asan_set_shadow_*() as soon as locore jumps into C code,
before ifuncs are selected.

Just unconditionally use memset_early() to work around this.

Reported by:    andrew
MFC after:      1 week
Differential Revision:  https://reviews.freebsd.org/D55079
DeltaFile
+2-2sys/kern/subr_asan.c
+2-21 files

FreeBSD/src a485399sys/netinet tcp_syncache.c, sys/sys mbuf.h

tcp: restrict flowtype copying to specific RSS TCP types

Reviewed by:    gallatin, tuexen
Differential Revision:  https://reviews.freebsd.org/D55196
DeltaFile
+2-2sys/netinet/tcp_syncache.c
+4-0sys/sys/mbuf.h
+6-22 files

FreeBSD/src d2b84ecmld mac80211.c iface.c, mvm d3.c

iwlwifi: update Intel's mvm/mld drivers

This version is based on
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
05f7e89ab9731565d8a62e3b5d1ec206485eeb0b ( tag: v6.19 ).

Sponsored by:   The FreeBSD Foundation
DeltaFile
+5-1mvm/d3.c
+2-0mld/mac80211.c
+0-2mld/iface.c
+7-33 files

FreeBSD/src 9e30e89. mac.c ce.c

ath12k: update Atheros/QCA's ath12k driver

This version is based on
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
05f7e89ab9731565d8a62e3b5d1ec206485eeb0b ( tag: v6.19 ).

Sponsored by:   The FreeBSD Foundation
DeltaFile
+10-6mac.c
+6-6ce.c
+1-8wmi.c
+17-203 files

FreeBSD/src 91a3131. ce.c

ath10k: update Atheros/QCA's ath10k driver

This version is based on
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
05f7e89ab9731565d8a62e3b5d1ec206485eeb0b ( tag: v6.19 ).

Sponsored by:   The FreeBSD Foundation
DeltaFile
+8-8ce.c
+8-81 files

FreeBSD/src 212272aetc/mtree BSD.usr.dist

mtree: stop creating /usr/share/doc/ncurses

In base 68ad2b0d7af2a the ncurses html documentation was removed, and
entries added to ObsoleteFiles.inc to get rid of /usr/share/doc/ncurses,
but the directory was still being re-created via BSD.usr.dist. Remove it
from there too.

Fixes:          68ad2b0d7af2a
MFC after:      1 month
DeltaFile
+0-2etc/mtree/BSD.usr.dist
+0-21 files

FreeBSD/src 36ec2b1bin/pwd Makefile, bin/pwd/tests pwd_test.sh Makefile

pwd: Add tests

MFC after:      1 week
Reviewed by:    imp
Differential Revision:  https://reviews.freebsd.org/D55153
DeltaFile
+73-0bin/pwd/tests/pwd_test.sh
+6-2bin/pwd/Makefile
+4-0bin/pwd/tests/Makefile
+2-0etc/mtree/BSD.tests.dist
+85-24 files

FreeBSD/src 2df923cbin/pwd pwd.c pwd.1

pwd: Clean up and adopt POSIX semantics

According to POSIX, the default should be -L.  Based on code history,
whoever first wrote BSD pwd(1) could not figure out how to implement
-L and therefore made -P the default (and only) option. Support for -L
was later added, but the default was never changed.

Clean up the code, make -L the default, and rewrite getcwd_logical() to
reject paths that contain dot or dot-dot, as required by POSIX.

MFC after:      1 week
Reviewed by:    olce
Differential Revision:  https://reviews.freebsd.org/D55146
DeltaFile
+52-47bin/pwd/pwd.c
+2-2bin/pwd/pwd.1
+54-492 files

FreeBSD/src 641366dusr.bin/diff diffreg.c

diff: Report I/O errors in Stone algorithm

In the legacy Stone algorithm, we do a first pass over the files to
check if they're identical before we start diffing them.  That code
would correctly set the exit status if an I/O error was encountered,
but would not emit an error message.  Do so.

PR:             292198
MFC after:      1 week
Sponsored by:   Klara, Inc.
Reviewed by:    thj
Differential Revision:  https://reviews.freebsd.org/D55125

(cherry picked from commit f8c12e6e3874cdd353fb16785da6f4e7eb134cd9)
DeltaFile
+7-3usr.bin/diff/diffreg.c
+7-31 files

FreeBSD/src 2ae615cusr.bin/diff diffreg.c, usr.bin/diff/tests diff_test.sh

diff: Fix integer overflows in Stone algorithm

Fix integer overflows that may occur when the context window is very
large and add tests to exercise those conditions.

PR:             267032
MFC after:      1 week
Sponsored by:   Klara, Inc.
Reviewed by:    thj, kevans
Differential Revision:  https://reviews.freebsd.org/D55110

(cherry picked from commit 5fc739eb5949620da911db2f87ca8faedc549d3a)
DeltaFile
+21-11usr.bin/diff/diffreg.c
+30-0usr.bin/diff/tests/diff_test.sh
+51-112 files

FreeBSD/src 9748212include stdckdint.h

include/stdckdint.h: make the header compatible with C++

by removing the cast to _Bool.  The _Bool type is not defined for C++,
and the specification from the gcc info doc states that the return
type of the  __builtin_{add,sub,mul}_overflow() is bool already.

This is done instead of including stdbool.h to avoid namespace
pollution, since defining bool from stdckdint.h simingly is not
sanctioned by ISO/IEC 9899:2024.

PR:     290299
Reviewed by:    des
Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
Differential revision:  https://reviews.freebsd.org/D53149

(cherry picked from commit 3c052bec12fcf09f81ba0760ebecec38e196d332)
DeltaFile
+3-3include/stdckdint.h
+3-31 files

FreeBSD/src bfd8976usr.bin/diff diffdir.c, usr.bin/diff/tests diff_test.sh

diff: Detect loops when diffing directories.

Sponsored by:   Klara, Inc.
Reviewed by:    markj
Differential Revision:  https://reviews.freebsd.org/D50936

(cherry picked from commit 42092e1b6625b8226de5f34d22b9a96c713626cb)
DeltaFile
+77-11usr.bin/diff/diffdir.c
+17-0usr.bin/diff/tests/diff_test.sh
+94-112 files

FreeBSD/src fda539dinclude stdckdint.h Makefile, share/man/man3 stdckdint.3 Makefile

include: Implement N2867.

This adds macros for checked addition, subtraction, and multiplication with semantics similar to the builtins gcc and clang have had for years.

Reviewed by:    kib, emaste
Differential Revision:  https://reviews.freebsd.org/D41734

(cherry picked from commit e6615b10347caf67f5bc12c9a8e30b8ddd9860ae)
DeltaFile
+106-0share/man/man3/stdckdint.3
+40-0include/stdckdint.h
+4-0share/man/man3/Makefile
+1-1include/Makefile
+151-14 files

FreeBSD/src 37ceb87usr.bin/diff diffreg.c

diff: Report I/O errors in Stone algorithm

In the legacy Stone algorithm, we do a first pass over the files to
check if they're identical before we start diffing them.  That code
would correctly set the exit status if an I/O error was encountered,
but would not emit an error message.  Do so.

PR:             292198
MFC after:      1 week
Sponsored by:   Klara, Inc.
Reviewed by:    thj
Differential Revision:  https://reviews.freebsd.org/D55125

(cherry picked from commit f8c12e6e3874cdd353fb16785da6f4e7eb134cd9)
DeltaFile
+7-3usr.bin/diff/diffreg.c
+7-31 files

FreeBSD/src 7f412c6usr.bin/diff diffdir.c diffreg.c, usr.bin/diff/tests diff_test.sh

diff: Don't compare a file or directory to itself

While here, stop abusing struct dirent for something we don't even need
to store.

PR:             254455
MFC after:      1 week
Sponsored by:   Klara, Inc.
Reviewed by:    thj, kevans
Differential Revision:  https://reviews.freebsd.org/D55113

(cherry picked from commit 590126789c841d80655869bc075c8980c173dd1c)

diff: Fix build

rc must be defined first.

Fixes:          590126789c84
MFC after:      1 week

    [3 lines not shown]
DeltaFile
+19-0usr.bin/diff/tests/diff_test.sh
+8-8usr.bin/diff/diffdir.c
+3-0usr.bin/diff/diffreg.c
+30-83 files

FreeBSD/src 237fd8dusr.bin/diff diffreg.c, usr.bin/diff/tests diff_test.sh

diff: Fix integer overflows in Stone algorithm

Fix integer overflows that may occur when the context window is very
large and add tests to exercise those conditions.

PR:             267032
MFC after:      1 week
Sponsored by:   Klara, Inc.
Reviewed by:    thj, kevans
Differential Revision:  https://reviews.freebsd.org/D55110

(cherry picked from commit 5fc739eb5949620da911db2f87ca8faedc549d3a)
DeltaFile
+21-11usr.bin/diff/diffreg.c
+29-0usr.bin/diff/tests/diff_test.sh
+50-112 files

FreeBSD/src b8bcf04usr.bin/diff/tests diff_test.sh

diff: Correctly declare tests

Sponsored by:   Klara, Inc.
Fixes:          5fc739eb5949 ("diff: Fix integer overflows in Stone algorithm")
Fixes:          270492602b9b ("diff: Add test case for pagination resource leak")
Fixes:          590126789c84 ("diff: Don't compare a file or directory to itself")

(cherry picked from commit 157d6664aeb815db3b758bd3038fd1512a0f4e2c)
DeltaFile
+4-1usr.bin/diff/tests/diff_test.sh
+4-11 files

FreeBSD/src 144455cusr.bin/diff pr.c pr.h, usr.bin/diff/tests diff_test.sh

diff: Fix pagination leak

* Drop an unnecessary variable and rename pidfd to procd.

* Rewinding stdout serves no purpose, so stop doing it.

* Don't bother freeing memory or setting the global status right
  before erroring out.

* Error out if dup(2) or dup2(2) fail.

* In the unlikely case that our pipe is equal to stdout, we need to
  record that information so we don't close it when cleaning up.

* Don't bother closing a descriptor before dup2(2)ing to it.

* Don't forget to close the the process descriptor after reaping the
  child process.


    [7 lines not shown]
DeltaFile
+10-12usr.bin/diff/pr.c
+1-0usr.bin/diff/pr.h
+0-1usr.bin/diff/tests/diff_test.sh
+11-133 files

FreeBSD/src 51c2384usr.bin/diff/tests diff_test.sh

diff: Add test case for pagination resource leak

The pagination code leaks either processes or descriptors or both,
depending on the exact version of the code you have.  Add a test case
which exercises this leak to facilitate fixing it.

MFC after:      1 week
Sponsored by:   Klara, Inc.
Reviewed by:    thj, kevans
Differential Revision:  https://reviews.freebsd.org/D55111

(cherry picked from commit 270492602b9bd8b8fce4f021f055804978bf3f23)
DeltaFile
+22-0usr.bin/diff/tests/diff_test.sh
+22-01 files

FreeBSD/src c92f6eeusr.bin/diff diff.c

diff: Bump version number

MFC after:      1 week
Sponsored by:   Klara, Inc.

(cherry picked from commit 40134060f6583486ad8ab303140fa73960d3de3d)
DeltaFile
+1-1usr.bin/diff/diff.c
+1-11 files

FreeBSD/src 2a54bfausr.bin/diff/tests diff_test.sh

diff: Correctly declare tests

Sponsored by:   Klara, Inc.
Fixes:          5fc739eb5949 ("diff: Fix integer overflows in Stone algorithm")
Fixes:          270492602b9b ("diff: Add test case for pagination resource leak")
Fixes:          590126789c84 ("diff: Don't compare a file or directory to itself")

(cherry picked from commit 157d6664aeb815db3b758bd3038fd1512a0f4e2c)
DeltaFile
+4-1usr.bin/diff/tests/diff_test.sh
+4-11 files