FreeBSD/src aacf448stand/efi/loader/arch/amd64 trap.c

loader.efi: panic() should show stack trace

Because panic() does provide mechanism to have architecture specific
panic call, we can instruct it to print out stack trace too
(in hope we actually can print). While there, also implement simple
check to detect loop in trace.

illumos issue: https://www.illumos.org/issues/17887
DeltaFile
+59-29stand/efi/loader/arch/amd64/trap.c
+59-291 files

FreeBSD/src c1c97f1stand/i386/gptzfsboot zfsboot.c

gptzfsboot: boot prompt should emit new line on input

In case the user did input, we should put newline
on screen to avoid possible error messages to get
mixed with user input.
DeltaFile
+4-2stand/i386/gptzfsboot/zfsboot.c
+4-21 files

FreeBSD/src 4b6de64sys/netpfil/ipfw/nptv6 nptv6.c

ipfw_nptv6: fix handling the ifaddr removal event

The result of IN6_ARE_MASKED_ADDR_EQUAL() macro is not an integer, so
threat it as a boolean value.

PR:             294114
Reported by:    Peter Much <pmc citylink dinoex sub org>

(cherry picked from commit d9d7b59486499615a5fdce54443ce62aecf557e8)
DeltaFile
+2-2sys/netpfil/ipfw/nptv6/nptv6.c
+2-21 files

FreeBSD/src bdad702sys/netpfil/ipfw/nptv6 nptv6.c

ipfw_nptv6: fix handling the ifaddr removal event

The result of IN6_ARE_MASKED_ADDR_EQUAL() macro is not an integer, so
threat it as a boolean value.

PR:             294114
Reported by:    Peter Much <pmc citylink dinoex sub org>

(cherry picked from commit d9d7b59486499615a5fdce54443ce62aecf557e8)
DeltaFile
+2-2sys/netpfil/ipfw/nptv6/nptv6.c
+2-21 files

FreeBSD/src 5dc4da1. RELNOTES

RELNOTES: catchup on changes I have made
DeltaFile
+38-0RELNOTES
+38-01 files

FreeBSD/src 111a42dsys/contrib/zstd/doc zstd_manual.html zstd_compression_format.md, sys/contrib/zstd/doc/educational_decoder zstd_decompress.c

MFV: zstd: Remove entries listed in FREEBSD-Xlist
DeltaFile
+0-2,323sys/contrib/zstd/doc/educational_decoder/zstd_decompress.c
+0-2,237sys/contrib/zstd/doc/zstd_manual.html
+0-1,771sys/contrib/zstd/doc/zstd_compression_format.md
+0-1,018sys/contrib/zstd/zlibWrapper/examples/zwrapbench.c
+0-605sys/contrib/zstd/zlibWrapper/examples/minigzip.c
+0-599sys/contrib/zstd/zlibWrapper/examples/example_original.c
+0-8,55344 files not shown
+0-14,00750 files

FreeBSD/src a985740doc zstd_manual.html zstd_compression_format.md, doc/educational_decoder zstd_decompress.c

Remove entries listed in FREEBSD-Xlist.
DeltaFile
+0-2,323doc/educational_decoder/zstd_decompress.c
+0-2,237doc/zstd_manual.html
+0-1,771doc/zstd_compression_format.md
+0-1,018zlibWrapper/examples/zwrapbench.c
+0-605zlibWrapper/examples/minigzip.c
+0-599zlibWrapper/examples/example_original.c
+0-8,55345 files not shown
+0-14,01251 files

FreeBSD/src 7c94186sys/contrib/zstd FREEBSD-Xlist

sys/contrib/zstd: further narrow FREEBSD-Xlist

We don't need any docs or examples in tree, as well
as any upstream-specific build infrastructure.

Differential Revision: https://reviews.freebsd.org/D55836
DeltaFile
+10-1sys/contrib/zstd/FREEBSD-Xlist
+10-11 files

FreeBSD/src 45079cdusr.sbin/bsdinstall/scripts mirrorselect

installer: Add download.freebsd.org to mirror list

download.freebsd.org is backed by project mirrors and a CDN, which
should benefit most users.

Sponsored by:   The FreeBSD Foundation
Reviewed by:    delphij (releng)
MFC after:      3 days
Differential Revision: https://reviews.freebsd.org/D54849
DeltaFile
+12-1usr.sbin/bsdinstall/scripts/mirrorselect
+12-11 files

FreeBSD/src 84ce651sys/sys extattr.h

<sys/extattr.h>: use designated initializers for EXTATTR_NAMESPACE_NAMES

This is not a functional change, but it makes it more clear upon
inspection of the definition that the mapping property described is
preserved.  Maybe more importantly, if one ends up getting an index
wrong or punching a hole in the name array unexpectedly, then it'll
hopefully manifest more clearly as a (null) or nullptr deref rather than
potentially just emitting the wrong namespace name.

It's noted that this almost certainly invalidates its use in C++, but
there aren't really any known C++ consumers of it- let's just cross
that bridge if we get there.

Reviewed by:    kib, mckusick, rmacklem
Sponsored by:   Klara, Inc.
Differential Revision:  https://reviews.freebsd.org/D55323
DeltaFile
+3-3sys/sys/extattr.h
+3-31 files

FreeBSD/src 22fba3ausr.bin/find function.c find.1, usr.bin/find/tests find_test.sh

find: add -xattr and -xttrname

We use -xattr in our openrsync tests for convenience, and it seems like
a good addition to FreeBSD.  -xattr and -xattrname will both consult all
available namespaces by default, but -xattrname allows filtering by
namespace using a "user:" or "system:" prefix.

Inspired by:    https://github.com/apple-oss-distributions/shell_cmds
Reviewed by:    kib, rmacklem
Sponsored by:   Klara, Inc.
Differential Revision:  https://reviews.freebsd.org/D55286
DeltaFile
+94-0usr.bin/find/function.c
+80-0usr.bin/find/tests/find_test.sh
+21-2usr.bin/find/find.1
+2-0usr.bin/find/extern.h
+2-0usr.bin/find/option.c
+199-25 files

FreeBSD/src 9a8d333lib/libc/gen memfd_create.c, lib/libsys shm_open.2

libc: fix memfd_create's HUGETLB handling

The 'simplification' commit referenced below actually broke one aspect
of MFD_HUGETLB: the caller isn't supposed to be required to specify a
size.  MFD_HUGETLB by itself without a shift mask just requests a large
page, so we revert that part of memfd_create() back.

While we're here, fix up the related parts of the manpages a little bit,
since MFD_HUGETLB is actually supported.  The manpage claims that we
would return ENOSYS if forced mappings weren't supported, but this was
actually not true.  However, that seems like a very important
distinction to make between ENOSYS and EOPNOTSUPP, so fix the
implementation to match the docs.

Fixes:  8b8cf4ece660f ("memfd_create: simplify HUGETLB support [...]")
Reviewed by:    kib, markj
Differential Revision:  https://reviews.freebsd.org/D56114
DeltaFile
+45-0tests/sys/posixshm/posixshm.h
+13-25tests/sys/posixshm/posixshm_test.c
+35-0tests/sys/posixshm/memfd_test.c
+27-4lib/libsys/shm_open.2
+16-7lib/libc/gen/memfd_create.c
+136-365 files

FreeBSD/src 0c9cec8tests/sys/kqueue kqueue_fork.c

tests: kqueue: add a basic test for CPONFORK

Just copy over a timer and a write-filter, be sure that we can observe
both in the child.  Maybe the timer should check for a minimum time
passed, but I don't know that we'd be likely to get that wrong.

This also adds a negative test with a kqueue that is *not* set for
CPONFORK being added to the first one, made readable, and confirming
that we don't see a knote for it in the child.

Some other improvements to the test noted in the review are planned in
the short term, but they're not particularly worth blocking adding this
as a basic sanity check.

Reviewed by:    kib, markj
Differential Revision:  https://reviews.freebsd.org/D56223
DeltaFile
+140-0tests/sys/kqueue/kqueue_fork.c
+140-01 files

FreeBSD/src c6dd40fsys/kern kern_event.c

kqueue: slightly clarify the flow in knlist_cleardel()

This is purely a cosmetic change to make it a little easier on the eyes,
rather than jumping back to the else branch up top.  Re-flow it to use
another loop on the outside and just inline the re-lock before we repeat
after awaking from fluxwait.

The !killkn path should maybe issue a wakeup if there's a thread in
KQ_SLEEP so that userland can observe the EOF, but this isn't a
practical problem today: pretty much every case of knlist_clear is tied
to a file descriptor and called in the close(2) path.  As a consequence,
potentially affected knotes are almost always destroyed before we even
get to knlist_clear().

Reviewed by:    kib, markj
Differential Revision:  https://reviews.freebsd.org/D56226
DeltaFile
+29-21sys/kern/kern_event.c
+29-211 files

FreeBSD/src 0bf4d22sys/kern kern_event.c

kqueue: don't leak file refs on failure to knote_attach()

We'll subsequently just knote_free() since the knote is barely
constructed, but that bypasses any logic that might release references
on owned files/fops.  Defer clearing those until the knote actually owns
them and update the comment to draw the line more clearly.

Reviewed by:    kib
Differential Revision:  https://reviews.freebsd.org/D56318
DeltaFile
+10-6sys/kern/kern_event.c
+10-61 files

FreeBSD/src 9f7080bsecure/lib/libcrypto/man/man3 X509V3_EXT_print.3 Makefile

crypto/openssl: add new manpage from release 3.5.6

MFC after:      1 day (the security issues warrant a quick backport).
MFC with:       10a428653ee7216475f1ddce3fb4cbf1200319f8
DeltaFile
+108-0secure/lib/libcrypto/man/man3/X509V3_EXT_print.3
+2-0secure/lib/libcrypto/man/man3/Makefile
+110-02 files

FreeBSD/src 5254e16secure/lib/libcrypto/man/man3 SSL_CTX_set1_curves.3 SSL_CONF_cmd.3, secure/lib/libcrypto/man/man7 property.7

crypto/openssl: update artifacts to match 3.5.6 release artifacts

A new manpage and any associated links will be added in the next commit.

MFC after:      1 day (the security issues warrant a quick backport).
MFC with:       10a428653ee7216475f1ddce3fb4cbf1200319f8
DeltaFile
+442-346secure/usr.bin/openssl/man/openssl-ciphers.1
+85-36secure/lib/libcrypto/man/man3/SSL_CTX_set1_curves.3
+56-48sys/crypto/openssl/aarch64/vpsm4_ex-armv8.S
+27-2secure/lib/libcrypto/man/man7/property.7
+9-11secure/lib/libcrypto/man/man3/SSL_CONF_cmd.3
+12-3secure/lib/libcrypto/man/man3/PKCS5_PBE_keyivgen.3
+631-446903 files not shown
+1,654-1,424909 files

FreeBSD/src 10a4286crypto/openssl CHANGES.md NEWS.md, crypto/openssl/doc/man1 openssl-ciphers.pod.in

MFV: crypto/openssl: update to 3.5.6

This change brings in version 3.5.6 of OpenSSL, which features
several security fixes (the highest of which is a MEDIUM severity
issue), as well as some miscellaneous feature updates.

Please see the release notes [1] for more details.

PS Apologies for the confusing merge commits -- I was testing out a
new automated update process and failed to catch the commit message
issues until after I pushed the change.

1. https://github.com/openssl/openssl/blob/openssl-3.5.6/NEWS.md

MFC after:      1 day (the security issues warrant a quick backport).
Merge commit 'ab5fc4ac933ff67bc800e774dffce15e2a541e90'
DeltaFile
+438-329crypto/openssl/doc/man1/openssl-ciphers.pod.in
+363-212crypto/openssl/CHANGES.md
+232-195crypto/openssl/NEWS.md
+152-213crypto/openssl/util/platform_symbols/windows-symbols.txt
+84-35crypto/openssl/doc/man3/SSL_CTX_set1_curves.pod
+109-1crypto/openssl/test/evp_extra_test.c
+1,378-985250 files not shown
+3,695-2,017256 files

FreeBSD/src 36d9714sys/geom geom_event.c

geom: Make g_waitidle() wait for orphaned providers

This is motivated by the following race in the ZFS zvol code.

When a zvol is created, we create a GEOM-backed zvol, which results in a
/dev/zvol/<zvol path> device file, created by GEOM::dev.  If volmode=dev
is specified, zvol_set_volmode_impl() will wither the GEOM, then create
a device file with the same name.  This sometimes fails because
g_wither_geom() is asynchronous, so we end up trying to create a device
file while the old one still exists.  I want to fix this by adding a
g_waitidle() call to zvol_os_remove_minor().

g_waitidle() is not sufficient: GEOM::dev does not destroy the device
until g_dev_orphan() is called.  (In fact the device destruction is
asynchronous too, but the delist_dev() call is sufficient to address
this race.)  So, I propose modifying g_waitidle() to block until
orphaned providers are processed.

PR:             258766

    [3 lines not shown]
DeltaFile
+1-1sys/geom/geom_event.c
+1-11 files

FreeBSD/src c0d9a07sys/contrib/zstd/lib zstd.h, sys/contrib/zstd/lib/common xxhash.h

MFV: zstd 1.5.7.

MFC after:      2 weeks
Relnotes:       yes
DeltaFile
+2,416-1,011sys/contrib/zstd/lib/common/xxhash.h
+2,413-897sys/contrib/zstd/lib/compress/zstd_compress.c
+1,063-820sys/contrib/zstd/programs/fileio.c
+835-446sys/contrib/zstd/programs/benchzstd.c
+630-535sys/contrib/zstd/lib/compress/zstd_lazy.c
+889-266sys/contrib/zstd/lib/zstd.h
+8,246-3,975170 files not shown
+19,451-11,214176 files

FreeBSD/src dd201e4usr.bin/lockf lockf.1

lockf.1: Organize and provide error numbers

Add error numbers to the exit codes so that readers can decode them
without having to use a separate utility. Organize exits by error code.
Mark up the error constants with the error constant macro, even though
this is really not very helpful because people will search for the error
code, the macro is explicitly for the constants and not the codes.

While where, align and alphabetize the options list as well, fix
misaligned padding in an example, and a one-sentance-per-line error.

MFC after:              3 days
Reported by:            Antranig Vartanian <antranigv at freebsd.am>
Differential Revision:  https://reviews.freebsd.org/D48470
DeltaFile
+33-30usr.bin/lockf/lockf.1
+33-301 files

FreeBSD/src 8e99453sys/dev/dpaa2 dpaa2_ni.c dpaa2_frame.h

dpaa2: Extract frame-specific routines to dpaa2_frame.[h,c]

As soon as we need information from the hardware frame annotation to
make sure that checksums of the ingress frames were verified by the
DPAA2 HW, I've decided to make a preparation and extracted all of the
frame related routines into the separate dpaa2_frame.[h,c] along with
some clean up and improvements, e.g. no more dpaa2_fa, but dpaa2_swa
and dpaa2_hwa structures to describe software and hardware frame
annotations respectively, dpaa2_fa_get_swa/dpaa2_fa_get_hwa to obtain
those annotations from the frame descriptor. The next step is to
implement dpaa2_fa_get_hwa.

PR:             292006
Approved by:    tuexen
MFC after:      1 week
Differential Revision:  https://reviews.freebsd.org/D56315
DeltaFile
+63-145sys/dev/dpaa2/dpaa2_ni.c
+174-0sys/dev/dpaa2/dpaa2_frame.h
+165-0sys/dev/dpaa2/dpaa2_frame.c
+1-50sys/dev/dpaa2/dpaa2_swp.h
+5-4sys/dev/dpaa2/dpaa2_buf.c
+5-0sys/dev/dpaa2/dpaa2_types.h
+413-1994 files not shown
+419-20010 files

FreeBSD/src 8a0d626contrib/tcpdump tcpdump.c print-icmp6.c, contrib/tcpdump/missing snprintf.c

tcpdump: Update to 4.99.6

Changes:        https://github.com/the-tcpdump-group/tcpdump/blob/tcpdump-4.99/CHANGES
Obtained from:  https://www.tcpdump.org/release/tcpdump-4.99.6.tar.xz
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D55578
Differential Revision:  https://reviews.freebsd.org/D55871

(cherry picked from commit e6083790f217ba7f89cd2957922bd45e35466359)
DeltaFile
+0-508contrib/tcpdump/missing/snprintf.c
+311-47contrib/tcpdump/tcpdump.c
+84-103contrib/tcpdump/print-icmp6.c
+79-105contrib/tcpdump/print-egp.c
+110-56contrib/tcpdump/CMakeLists.txt
+54-84contrib/tcpdump/print-mobility.c
+638-90363 files not shown
+1,581-1,65869 files

FreeBSD/src 1500488usr.sbin/ipfwpcap ipfwpcap.c

ipfwpcap: Fix build after libpcap 1.10.6 update

pcap-int.h now references SIZEOF_TIME_T from libpcap's config.h, which
is not available to consumers of the internal header outside of the
libpcap build.  Switch to the public <pcap.h> header and replace the
direct FILE* casts and ferror()/fflush() calls with pcap_dump_flush(3),
which is the correct public API for flushing a pcap dump file.

Sponsored by:   The FreeBSD Foundation

(cherry picked from commit a0b3ef1952603ebf0307ca723b03e5a71598dd5a)
DeltaFile
+2-7usr.sbin/ipfwpcap/ipfwpcap.c
+2-71 files

FreeBSD/src 09db150contrib/libpcap configure pcap-linux.c, lib/libpcap config.h

libpcap: Update to 1.10.6

Changes:        https://raw.githubusercontent.com/the-tcpdump-group/libpcap/89e982c37c36ad0bf9f10b7ded421cb42422effa/CHANGES
Reviewed by:    bms, emaste
Obtained from:  https://www.tcpdump.org/release/libpcap-1.10.6.tar.gz
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D55545
Differential Revision:  https://reviews.freebsd.org/D55858

(cherry picked from commit 16cef5f7a65588def71db4fdfa961f959847e3b6)
DeltaFile
+361-360contrib/libpcap/configure
+566-102contrib/libpcap/pcap-linux.c
+404-50contrib/libpcap/nametoaddr.c
+225-123contrib/libpcap/pcap-dlpi.c
+245-101contrib/libpcap/gencode.c
+209-54lib/libpcap/config.h
+2,010-79067 files not shown
+3,572-1,50173 files

FreeBSD/src 5b4d222sys/kern kern_event.c

kqueue: assert that kqueue knote lists own the knotes

(cherry picked from commit 51db69c14fb1a1c2dc807695e6f564d498d33d5a)
DeltaFile
+12-2sys/kern/kern_event.c
+12-21 files

FreeBSD/src 2031871libexec/rtld-elf/tests dlopen_hash_test.c Makefile

rtld: add test for dlopen("#dirfd/path")

(cherry picked from commit 72252591ac01037fa53501adb88f00d5d3cc09ed)
DeltaFile
+45-0libexec/rtld-elf/tests/dlopen_hash_test.c
+1-0libexec/rtld-elf/tests/Makefile
+46-02 files

FreeBSD/src b6527c9contrib/netbsd-tests/lib/libc/gen/posix_spawn t_fileactions.c

posix_spawn test: switch to POSIX spelling for addchdir and addfchdir

(cherry picked from commit e56858f05fd7071a39de7f7b1e632426fdf0624d)
DeltaFile
+2-2contrib/netbsd-tests/lib/libc/gen/posix_spawn/t_fileactions.c
+2-21 files

FreeBSD/src 8fb16a5lib/libc/gen dlopen.3, libexec/rtld-elf rtld.c

rtld: allow dlopen("#<number>/<path>")

(cherry picked from commit ffbf3fecdeffa17c0745e7ed342989acb620d68e)
DeltaFile
+54-3libexec/rtld-elf/rtld.c
+14-0lib/libc/gen/dlopen.3
+68-32 files

FreeBSD/src 43347b2. ObsoleteFiles.inc, include spawn.h

posix_spawn: actions chdir and fchdir are now required by POSIX

(cherry picked from commit 7caa71145c5eea5925c295e0cdd95b517005acf9)
DeltaFile
+17-12lib/libc/gen/posix_spawn_file_actions_addopen.3
+5-0lib/libc/gen/posix_spawn.c
+4-0ObsoleteFiles.inc
+4-0include/spawn.h
+2-2lib/libc/gen/Makefile.inc
+2-2lib/libc/gen/posix_spawn.3
+34-161 files not shown
+36-167 files