FreeBSD/src 55c3348release/tools ec2.conf, sys/dev/acpica acpivar.h acpi_pci.c

acpi_pci: Add quirk for DELAY-after-EJ0

On some EC2 instances, there is a race between removing a device from
the system and making the PCI bus stop reporting the presence of the
device.  As a result, a PCI BUS_RESCAN performed immediately after
the _EJ0 method returns "sees" the device which is being ejected, which
then causes problems later (e.g. we won't recognize a new device being
plugged into that slot because we never knew it was vacant).

On other operating systems the bus is synchronously marked as needing
to be rescanned but the rescan does not occur until O(1) seconds later.

Create a new ACPI_Q_DELAY_BEFORE_EJECT_RESCAN quirk and set it in EC2
AMIs, and add a 10 ms DELAY between _EJ0 and BUS_RESCAN when tht quirk
is set.

Reviewed by:    jhb
MFC after:      1 month
Sponsored by:   Amazon
Differential Revision:  https://reviews.freebsd.org/D49252
DeltaFile
+3-2release/tools/ec2.conf
+3-0sys/dev/acpica/acpivar.h
+2-0sys/dev/acpica/acpi_pci.c
+8-23 files

FreeBSD/src 81eb546share/vt/keymaps ca-multi.kbd INDEX.keymaps

keymaps: Add Canadian Mulitlingual Standard

Pull Request: https://github.com/freebsd/freebsd-src/pull/1586

(cherry picked from commit 602be8e1a8711dd9c264e75078a35533f07526eb)
DeltaFile
+142-0share/vt/keymaps/ca-multi.kbd
+3-0share/vt/keymaps/INDEX.keymaps
+1-0share/vt/keymaps/Makefile
+146-03 files

FreeBSD/src a4a2714sys/sys signal.h

posix: POSIX-1.2008 moved SA_* from XSI to base standard

Starting with POSIX-1.2008, "The SA_RESETHAND, SA_RESTART, SA_SIGINFO,
SA_NOCLDWAIT, and SA_NODEFER constants are moved from the XSI option to
the Base." Make them so visible.

PR: 275328
Sponsored by:           Netflix

(cherry picked from commit 06af7bd12a4a654f5c5e8da41cf329eee3aa61f6)
DeltaFile
+1-1sys/sys/signal.h
+1-11 files

FreeBSD/src b9296d4sys/geom geom_dev.c

g_dev_orphan(): Return early if the device is already gone

The following panic was the result of running "cdcontrol eject" after
using the physical ejection key on the device before the tray was
actually ejected. So we have hardware racing software.

The device was loaded with a DVD.

Resulted in a NULL pointer dereference

g_dev_orphan() at g_dev_orphan+0x2e/frame 0xfffffe01eba0a9f0
g_resize_provider_event() at g_resize_provider_event+0x71/frame 0xfffffe01eba0aa20
g_run_events() at g_run_events+0x20e/frame 0xfffffe01eba0aa70
fork_exit() at fork_exit+0x85/frame 0xfffffe01eba0aab0
fork_trampoline() at fork_trampoline+0xe/frame 0xfffffe01eba0aab0

Avoid this possibility and return early of dev is NULL already.

PR:  215856

    [4 lines not shown]
DeltaFile
+3-0sys/geom/geom_dev.c
+3-01 files

FreeBSD/src 8130722sys/sys signal.h

posix: POSIX-1.2008 moved SA_* from XSI to base standard

Starting with POSIX-1.2008, "The SA_RESETHAND, SA_RESTART, SA_SIGINFO,
SA_NOCLDWAIT, and SA_NODEFER constants are moved from the XSI option to
the Base." Make them so visible.

PR: 275328
Sponsored by:           Netflix

(cherry picked from commit 06af7bd12a4a654f5c5e8da41cf329eee3aa61f6)
DeltaFile
+1-1sys/sys/signal.h
+1-11 files

FreeBSD/src 1cae712. UPDATING, share/man/man5 src.conf.5

Enable LLVM_BINUTILS by default

Starting in 2014 FreeBSD migrated from GNU binutils to ELF Tool Chain
tools.  At that time there were no usable LLVM versions of those tools,
but they have been developing rapidly since then.  Migrate to LLVML's
tools for both functionality and maintainability reasons.

This will eventually support the use of link-time optimization (LTO) in
the FreeBSD base system.  LTO runs optimization passes over the entire
executable (or library) at link time and thus allows for more effective
optimization than when performed on individual compilation units.

When using LTO object files (.o) including those contained in static
library archives (.a) contain LLVM IR bitcode rather than target
object code.  This means that utilities that operate on object files
need to support LLVM IR.

As with ELF Tool Chain the LLVM tools aim for command line and output
format compatibility with GNU binutils, although there are a few minor

    [8 lines not shown]
DeltaFile
+12-4share/man/man5/src.conf.5
+5-0UPDATING
+1-1share/mk/src.opts.mk
+18-53 files

FreeBSD/src 4a4eee5sys/contrib/dev/iwlwifi/mvm tx.c

iwlwifi: adjust a debug comment referring to a PR

A FreeBSD specific comment asked people to report to a PR if they see
this.  By now we got enough feedback and also left this in a release.
Simply point to the PR so people can check the status but not longer
ask to submit a report to the PR.

Sponsored by:   The FreeBSD Foundation
PR:             274382
MFC after:      3 days
DeltaFile
+2-2sys/contrib/dev/iwlwifi/mvm/tx.c
+2-21 files

FreeBSD/src a5c7b44sys/compat/linuxkpi/common/src linux_page.c

LinuxKPI: always use contig allocations in linux_alloc_kmem()

In linux_alloc_kmem() [used by *get_page*()] we always at least allocate
PAGE_SIZE and we want the allocation to be contiguous so it can be passed
to DMA.  Always use kmem_alloc_contig() and only change the low argument
depending on the GFP_DMA32 flag being given or not.

Sponsored by:   The FreeBSD Foundation
MFC after:      3 days
Reviewed by:    jhb, dumbbell
Differential Revision: https://reviews.freebsd.org/D46661
DeltaFile
+4-6sys/compat/linuxkpi/common/src/linux_page.c
+4-61 files

FreeBSD/src 19df0c5sys/compat/linuxkpi/common/src linux_slab.c

LinuxKPI: make __kmalloc() play by the rules

According to Documentation/core-api/dma-api.rst kmalloc() is supposd
to provide physically contiguous memory. [1]

In order to guarantee that allocations are contiguous even if using
PAGE_SIZE or larger check the size and use contigmalloc if needed.
This makes use of 9e6544dd6e02 (and following) allowing free(9) to
also work for contigmalloced memory.

Sponsored by:   The FreeBSD Foundation
Pointed out by: jhb [1]
Reviewed by:    jhb, emaste
MFC after:      3 days
Differential Revision: https://reviews.freebsd.org/D46656
DeltaFile
+5-1sys/compat/linuxkpi/common/src/linux_slab.c
+5-11 files

FreeBSD/src d2a55e6crypto/openssl/include/openssl opensslv.h, secure/lib/libcrypto Makefile.inc

openssl: update ASM and version info for 3.0.16 import

MFC after:      1 week
MFC with:       0d0c8621fd181e507f0fb50ffcca606faf66a8c2
Differential Revision:  https://reviews.freebsd.org/D49297
DeltaFile
+5-5crypto/openssl/include/openssl/opensslv.h
+2-2secure/lib/libcrypto/Makefile.inc
+2-0sys/crypto/openssl/aarch64/armv8-mont.S
+9-73 files

FreeBSD/src 0d0c862crypto/openssl/apps speed.c, crypto/openssl/doc/man1 openssl-verification-options.pod openssl.pod

openssl: Import OpenSSL 3.0.16

This release incorporates the following bug fixes and mitigations:
- [CVE-2024-13176](https://www.openssl.org/news/vulnerabilities.html#CVE-2024-13176
- [CVE-2024-9143](https://www.openssl.org/news/vulnerabilities.html#CVE-2024-9143)

Release notes can be found at:
https://openssl-library.org/news/openssl-3.0-notes/index.html

MFC after:      1 week
Differential Revision:  https://reviews.freebsd.org/D49296
DeltaFile
+292-79crypto/openssl/apps/speed.c
+127-127crypto/openssl/providers/fips-sources.checksums
+114-78crypto/openssl/doc/man1/openssl-verification-options.pod
+94-95crypto/openssl/util/check-format-commit.sh
+72-54crypto/openssl/test/evp_libctx_test.c
+9-98crypto/openssl/doc/man1/openssl.pod
+708-531160 files not shown
+2,039-1,079166 files

FreeBSD/src 47f4137sys/dev/mana mana_en.c

mana: remove redundant doorbell in mana_poll_rx_cq()

With the last commit to refill the rx mbuf in batch, the doorbell
in mana_poll_rx_cq() becomes redundant. Remove it to save a few
microseconds spent in mmio call.

Reported by:    NetApp
Reviewed by:    Tallamraju, Sai
Tested by:      whu
Fixes:          9b8701b8 ("mana: refill the rx mbuf in batch")
MFC after:      3 days
Sponsored by:   Microsoft
DeltaFile
+0-7sys/dev/mana/mana_en.c
+0-71 files

FreeBSD/src 6207ca7usr.bin/truncate truncate.1

truncate.1: improve the example section

Notably:
 * spell "Megabytes" as "megabytes" consistently;
 * remove a stray asterisk from the /boot/kernel/kernel listing
 * avoid using a shell prompt in the examples consistently
 * fixes the size parameter
 * add an example how to increase the file size

PR:             273997
MFC after:      1 week

(cherry picked from commit 5460bdda9d4cb3ce1d7431824b6f53c545888b53)
DeltaFile
+19-9usr.bin/truncate/truncate.1
+19-91 files

FreeBSD/src f7856fesys/geom geom_dev.c

g_dev_orphan(): Return early if the device is already gone

The following panic was the result of running "cdcontrol eject" after
using the physical ejection key on the device before the tray was
actually ejected. So we have hardware racing software.

The device was loaded with a DVD.

Resulted in a NULL pointer dereference

g_dev_orphan() at g_dev_orphan+0x2e/frame 0xfffffe01eba0a9f0
g_resize_provider_event() at g_resize_provider_event+0x71/frame 0xfffffe01eba0aa20
g_run_events() at g_run_events+0x20e/frame 0xfffffe01eba0aa70
fork_exit() at fork_exit+0x85/frame 0xfffffe01eba0aab0
fork_trampoline() at fork_trampoline+0xe/frame 0xfffffe01eba0aab0

Avoid this possibility and return early of dev is NULL already.

PR:  215856

    [2 lines not shown]
DeltaFile
+3-0sys/geom/geom_dev.c
+3-01 files

FreeBSD/src 732c168. ObsoleteFiles.inc

ObsoleteFiles: Remove if_rtwn.4 removal

if_rtwn.4 was previously removed, but actually it is correct because
the interfaces is called rtwn.

Fixes:                  4262dbc579823
MFC after:              3 days
Reported by:            bz
Approved by:            mhorne (mentor)
Differential Revision:  https://reviews.freebsd.org/D49323
DeltaFile
+0-2ObsoleteFiles.inc
+0-21 files

FreeBSD/src 68b6567sys/dev/sound/pci/hda hdaa_patches.c hdac.h

snd_hda: Patch Framework AMD 13th gen

Redirect sound to headphone jack when plugged in.

Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
Reviewed by:    emaste
Differential Revision:  https://reviews.freebsd.org/D49346
DeltaFile
+7-0sys/dev/sound/pci/hda/hdaa_patches.c
+1-0sys/dev/sound/pci/hda/hdac.h
+8-02 files

FreeBSD/src d6c34d1libexec/rc/rc.d sendmail

rc.d/sendmail: remove a obsolete upgrade seatbelt

This check was in place to aid the transition from sendmail pre-8.10.
8.10 was released in 2000.  It's not possible to upgrade directly from
such as system (Freebsd 3?) to FreeBSD 15 so we can drop this.

Reviewed by:    gshapiro, jhb
Differential Revision:  https://reviews.freebsd.org/D49308
DeltaFile
+0-11libexec/rc/rc.d/sendmail
+0-111 files

FreeBSD/src 537e512share/man/man7 arch.7

arch.7: Update version reference to 13.0

This document is intended to be a reference for supported FreeBSD
versions, so update text to refer to 13.0 and later.

Sponsored by:   The FreeBSD Foundation

(cherry picked from commit 46b91601bb165f20a40529775fffb4d05fe73d15)
DeltaFile
+2-2share/man/man7/arch.7
+2-21 files

FreeBSD/src 9ca20e5. Makefile.inc1

Makefile.inc1: Conditionalize some package related variables

In particular, don't invoke git to compute SOURCE_DATE_EPOCH for
unrelated targets like check-old or delete-old.  If the git invocation
fails (e.g. when using a git worktree mounted over NFS) it can
generate a lot of irrelevant warning spam.

Reviewed by:    emaste
Fixes:          8a3537aaf7c1 ("Makefile.inc1: Make package timestamps reproducible by default")
Differential Revision:  https://reviews.freebsd.org/D49278

(cherry picked from commit db6f2bb93a9706963f66d270edb5ee62c37a9296)
DeltaFile
+2-0Makefile.inc1
+2-01 files

FreeBSD/src 09afabd. Makefile.inc1

Makefile.inc1: Make package timestamps reproducible by default

Set package archive timestamps based on most recent source commit
timestamp (approach suggested by bapt).

I'd like to include git metadata in a file included in src tarballs, so
that the build is reproducible (including the hash shown in uname etc.)
outside of a git checkout.  There are still details to be sorted out to
do that, so this is an interim step to improve reproducibility.

Reviewed by:    bapt
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D49165

(cherry picked from commit 8a3537aaf7c19f7331fcc160ab42e36fc79e408a)
DeltaFile
+4-0Makefile.inc1
+4-01 files

FreeBSD/src f402078sys/vm device_pager.c

device_pager: Assert that the handle is not NULL

Reviewed by:    kib
Differential Revision:  https://reviews.freebsd.org/D49333
DeltaFile
+2-0sys/vm/device_pager.c
+2-01 files

FreeBSD/src 00d78c5sys/kern kern_rwlock.c kern_sx.c

rwmlock/rwlock/sx: Print the pointer of destroyed locks in panic messages

Suggested by:   markj
Reviewed by:    kib, markj
Sponsored by:   AFRL, DARPA
Differential Revision:  https://reviews.freebsd.org/D49332
DeltaFile
+10-8sys/kern/kern_rwlock.c
+9-8sys/kern/kern_sx.c
+4-4sys/kern/kern_rmlock.c
+23-203 files

FreeBSD/src a52a51asys/kern kern_rwlock.c kern_sx.c

lockmgr/rmlock/rwlock/sx: Make various assertions more robust

Print pointers to locks instead of their names to avoid a nested panic
if the lock object is corrupted.

Reviewed by:    markj
Sponsored by:   AFRL, DARPA
Differential Revision:  https://reviews.freebsd.org/D49331
DeltaFile
+12-12sys/kern/kern_rwlock.c
+10-10sys/kern/kern_sx.c
+6-6sys/kern/kern_rmlock.c
+2-2sys/kern/kern_lock.c
+30-304 files

FreeBSD/src c56e753sys/netinet in_pcb.c

inpcb: make sure we don't pass uninitialized faddr to in_pcbladdr()

This very theoretical edge case was discovered by Coverity, not sure if
it was introduced by 2af953b132ee or was there before.

CID:                    1593695
Fixes:                  2af953b132ee8d2eb4d8d7bb15fc38bf04dde348
DeltaFile
+7-8sys/netinet/in_pcb.c
+7-81 files

FreeBSD/src c78a14asys/netinet in_pcb.c

inpcb: in_pcb_lport_dest() doesn't use lportp as input argument

This assignment just created false positive analyzer report.

CID:                    1593692
DeltaFile
+0-1sys/netinet/in_pcb.c
+0-11 files

FreeBSD/src 5f42f87sys/netinet6 in6_pcb.c

inpcb: in_pcbinshash() can't fail on connect(2)

CID:                    1593687
DeltaFile
+2-1sys/netinet6/in6_pcb.c
+2-11 files

FreeBSD/src 9491ae6usr.bin/procstat procstat.1

procstat.1: correct description of the kstack subcommand after removal of swapping

Reviewed by:    markj
Sponsored by:   The FreeBSD Foundation
Differential revision:  https://reviews.freebsd.org/D49163
DeltaFile
+1-1usr.bin/procstat/procstat.1
+1-11 files

FreeBSD/src e60f608sys/kern kern_event.c vfs_subr.c, sys/sys user.h event.h

Add sysctl kern.proc.kqueue

reporting registered events in the specified kqueue.

Reviewed by:    markj
Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
Differential revision:  https://reviews.freebsd.org/D49163
DeltaFile
+139-2sys/kern/kern_event.c
+46-4sys/kern/vfs_subr.c
+28-0sys/sys/user.h
+18-2sys/kern/sys_pipe.c
+5-0sys/sys/event.h
+1-0sys/sys/sysctl.h
+237-81 files not shown
+238-87 files

FreeBSD/src d76a31cusr.bin/procstat procstat.1

procstat.1: document kqueues

Reviewed by:    markj
Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
Differential revision:  https://reviews.freebsd.org/D49163
DeltaFile
+41-0usr.bin/procstat/procstat.1
+41-01 files

FreeBSD/src 0832381usr.bin/procstat procstat.1

procstat.1: sort subcommands

Reviewed by:    markj
Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
Differential revision:  https://reviews.freebsd.org/D49163
DeltaFile
+34-34usr.bin/procstat/procstat.1
+34-341 files