FreeBSD/src 17cf776sys/dev/mlx5/mlx5_en mlx5_en_main.c

mlx5en: guard against empty eth_proto_oper mask

eth_proto_oper is used to derive the active media mode, but an empty
mask leaves no valid bit for ilog2() to consume. Treat this as an
invalid carrier update, reset the active media state, and report the
unexpected PTYS value.

Reviewed by:    kib
Tested by:      Wafa Hamzah <wafah at nvidia.com>
MFC after:      1 week
Sponsored by:   NVIDIA Networking
DeltaFile
+7-0sys/dev/mlx5/mlx5_en/mlx5_en_main.c
+7-01 files

FreeBSD/src 0e2175ccontrib/ofed/libmlx5 mlx5.c, sys/dev/mlx5/mlx5_core mlx5_main.c

libmlx5: sync PCI device allowlist with mlx5_core_pci_table

Userspace mlx5_driver_init() only attached when vendor/device matched
hca_table, while the kernel already probed additional Mellanox PCI IDs
That mismatch prevented libibverbs from loading the mlx5 provider on
those HCAs.

Extend hca_table to mirror mlx5_core_pci_table and add cross-references
so future kernel ID additions are paired with a userspace update.

Reviewed by:    kib
Tested by:      Wafa Hamzah <wafah at nvidia.com>
Sponsored by:   Nvidia networking
MFC after:      1 week
DeltaFile
+19-0contrib/ofed/libmlx5/mlx5.c
+4-0sys/dev/mlx5/mlx5_core/mlx5_main.c
+23-02 files

FreeBSD/src 49b7836sys/dev/mlx5/mlx5_core mlx5_port.c

mlx5: Add missing speeds translation

Reviewed by:    kib
Tested by:      Wafa Hamzah <wafah at nvidia.com>
Sponsored by:   Nvidia networking
MFC after:      1 week
DeltaFile
+3-0sys/dev/mlx5/mlx5_core/mlx5_port.c
+3-01 files

FreeBSD/src b3c09afsys/ofed/drivers/infiniband/core ib_sysfs.c, sys/ofed/include/rdma ib_verbs.h

ibcore: Add support for XDR link speed.

Add new IBTA speed XDR, supporting signaling rate of 200Gb.

Reviewed by:    kib
Tested by:      Wafa Hamzah <wafah at nvidia.com>
MFC after:      1 week
Sponsored by:   NVIDIA Networking
Differential revision: https://reviews.freebsd.org/D57085
DeltaFile
+4-0sys/ofed/drivers/infiniband/core/ib_sysfs.c
+2-1sys/ofed/include/rdma/ib_verbs.h
+6-12 files

FreeBSD/src e5d8b77sys/dev/bnxt/bnxt_re ib_verbs.c, sys/dev/irdma irdma_kcompat.c

RDMA: Fix link active_speed size

According to the IB spec active_speed size should be u16 and not u8 as
before. Changing it to allow further extensions in offered speeds.

Linux commit:
376ceb31ff87 RDMA: Fix link active_speed size

Reviewed by:    kib
Tested by:      Wafa Hamzah <wafah at nvidia.com>
MFC after:      1 week
Sponsored by:   NVIDIA Networking
Differential revision: https://reviews.freebsd.org/D57084
DeltaFile
+3-3sys/dev/mlx5/mlx5_ib/mlx5_ib_main.c
+3-2sys/dev/bnxt/bnxt_re/ib_verbs.c
+2-1sys/ofed/drivers/infiniband/core/ib_uverbs_std_types_device.c
+1-1sys/dev/irdma/irdma_kcompat.c
+1-1sys/dev/qlnx/qlnxr/qlnxr_verbs.c
+1-1sys/ofed/include/rdma/ib_verbs.h
+11-96 files

FreeBSD/src 51f313dsys/net if_media.h ieee8023ad_lacp.c

net/if_media.h: Add 800GBase-X and 200Gbit/s per lane support

Reviewed by:    kib
Tested by:      Wafa Hamzah <wafah at nvidia.com>
MFC after:      1 week
Sponsored by:   Nvidia networking
Differential revision: https://reviews.freebsd.org/D57083
DeltaFile
+42-0sys/net/if_media.h
+3-0sys/net/ieee8023ad_lacp.c
+45-02 files

FreeBSD/src 3e4cbdesys/dev/mlx5 port.h, sys/dev/mlx5/mlx5_core mlx5_port.c

mlx5: Add support for 800Gbit/s and 400Gbit/s with 2 lanes

Reviewed by:    kib
Tested by:      Wafa Hamzah <wafah at nvidia.com>
MFC after:      1 week
Sponsored by:   NVIDIA Networking
DeltaFile
+44-0sys/dev/mlx5/mlx5_en/mlx5_en_main.c
+12-0sys/dev/mlx5/mlx5_ib/mlx5_ib_main.c
+4-0sys/dev/mlx5/mlx5_core/mlx5_port.c
+3-0sys/dev/mlx5/port.h
+63-04 files

FreeBSD/src 741f489contrib/ofed/libmlx5 mlx5.c, sys/dev/mlx5/mlx5_core mlx5_main.c

mlx5: Add PCI IDs for ConnectX-9.

- Add descriptions for ConnectX-9.
- Add ConnectX-9 for libmlx5

Reviewed by:    kib
Tested by:      Wafa Hamzah <wafah at nvidia.com>
Sponsored by:   Nvidia networking
MFC after:      1 week
DeltaFile
+1-1sys/dev/mlx5/mlx5_core/mlx5_main.c
+1-0contrib/ofed/libmlx5/mlx5.c
+2-12 files

FreeBSD/src 0bc852cshare/man/man4 tcp.4, sys/netinet tcp_fastopen.c

tcp.fastopen.client_enable: Fix documented default

The default value has been 1 since June 2018, but the docs were not
updated to reflect the change.

MFC after:      3 days
Reviewed by:    ziaee
Fixes:          af4da5865557 (Enable TCP_FASTOPEN by default)
Signed-off-by:  Matteo Riondato <matteo at FreeBSD.org>
Closes:         https://github.com/freebsd/freebsd-src/pull/2285
DeltaFile
+2-2share/man/man4/tcp.4
+1-1sys/netinet/tcp_fastopen.c
+3-32 files

FreeBSD/src 19af9c7lib/msun/tests logarithm_test.c

msun/logarithm_test: expect_fail log1p_accuracy_tests in the correct spot

While here, remove the conditional on the "ci" config var to ensure that
this is reproducible locally as well.

This fixes a case where we are expecting a fail before the failing ATF_CHECK_*
assertion happens. Found in a CI failure here:
https://ci.freebsd.org/job/FreeBSD-main-riscv64-test/16608/testReport/lib.msun/logarithm_test/log1p_accuracy_tests/

PR:             253984
Fixes:          405188aeac540f7666dfde37c2f32d222119f56e
MFC after:      3 days
Differential Revision:  https://reviews.freebsd.org/D57351
DeltaFile
+3-4lib/msun/tests/logarithm_test.c
+3-41 files

FreeBSD/src 1294f33tests/sys/netpfil/pf route_to.sh

tests/pf/route_to: check_random: rely on test timeout to fail

This test is known to be flaky if 10 attempts happens to be
not enough for the test to pass. Usually, this test passes in ~4-6 attempts.
See https://ci.freebsd.org/job/FreeBSD-main-amd64-test/28664/testReport/junit/sys.netpfil.pf/route_to/random_table/

Rely on the timeout (default 5 mins) to catch a failure here, rather than just 10
attempts. It's very unlikely that 5 mins worth of attempts still isn't enough.

For a history of flakiness, see
https://ci.freebsd.org/job/FreeBSD-main-amd64-test/lastSuccessfulBuild/testReport/junit/sys.netpfil.pf/route_to/random_table/history/

PR:             289477
Reviewed by:    kp
MFC after:      3 days
Differential Revision:  https://reviews.freebsd.org/D57408
DeltaFile
+8-12tests/sys/netpfil/pf/route_to.sh
+8-121 files

FreeBSD/src 00c8e76usr.sbin/bsdconfig/dot USAGE

bsdconfig: Update dot USAGE

graphics/gx is no longer in ports, remove reference
DeltaFile
+0-7usr.sbin/bsdconfig/dot/USAGE
+0-71 files

FreeBSD/src 4acaa22usr.sbin/bsdconfig/dot USAGE

Update bsdconfig dot USAGE

Add gm prefix to convert command.

`convert` of ImageMagick is now available under `gm convert` where
`gm` is the main entry point for GraphicsMagick commands.
DeltaFile
+1-1usr.sbin/bsdconfig/dot/USAGE
+1-11 files

FreeBSD/src 4519d98usr.sbin/bsdconfig/dot USAGE

Update bsdconfig dot USAGE

print/gsview is no longer in ports, remove mention
DeltaFile
+0-6usr.sbin/bsdconfig/dot/USAGE
+0-61 files

FreeBSD/src 08da432usr.sbin/bsdconfig/dot USAGE

Update bsdconfig dot USAGE copyright following previous commits
DeltaFile
+1-1usr.sbin/bsdconfig/dot/USAGE
+1-11 files

FreeBSD/src 949804csys/dev/nvme nvme_if.m nvme_pci.c

nvme: Use newbus to ask if a device is storage

As NVMe is in more places, it has a variety of attachments. On non PCI
busses, we assume we're a storage device. For PCI, we look at the
interface ID. Add newbus glue to make this happen.

Sponsored by:           Netflix
Discussed with:         jhb
Reviewed by:            adrian
Differential Revision:  https://reviews.freebsd.org/D56994
DeltaFile
+15-0sys/dev/nvme/nvme_if.m
+15-0sys/dev/nvme/nvme_pci.c
+3-0sys/dev/nvme/nvme_sim.c
+33-03 files

FreeBSD/src 52c0d52sys/netinet tcp.h in.h, sys/netinet6 in6.h

socket: Tag all socket option comments consistently

For all the socket options that have a fixed type, add the type of the
socket option arg to the comment. Most of them already had this, but a
few did not. The ones that don't have a tag use a variable length data
structure of some kind, and are beyond the scope of this
commit. Slightly expand the syntax to allow a comma separated list for
those sockopts that have multiple fixed-length versions.

Sponsored by:           Netflix
Reviewed by:            pouria, peter.lei_ieee.org, tuexen
Differential Revision:  https://reviews.freebsd.org/D57545
DeltaFile
+120-120sys/netinet/tcp.h
+36-36sys/sys/socket.h
+20-20sys/netinet/in.h
+4-4sys/netinet6/in6.h
+2-2sys/sys/un.h
+1-1sys/netinet/udp.h
+183-1836 files

FreeBSD/src 85814f5sys/x86/cpufreq est.c

est: gate "not recognized" message behind bootverbose

On modern Intel CPUs that use HWP (hwpstate_intel: /usr/src/sys/x86/cpufreq/hwpstate_intel.c) instead of EST,
this message prints unconditionally during probe even though it is
expected and harmless. Gated behind bootverbose to reduce console
noise on systems where EST is present but considered legacy.

Reviewed by:    adrian
Differential Revision:  https://reviews.freebsd.org/D57616
DeltaFile
+4-3sys/x86/cpufreq/est.c
+4-31 files

FreeBSD/src 021a190sys/x86/cpufreq est.c

est: prevent divide-by-zero in est_msr_info

When hw.est.msr_info=1 is set, est_msr_info() extracts the bus clock
from MSR_PERF_STATUS upper bits. On secondary CPUs, the MSR may
contain zero in the frequency ratio field, causing a
divide-by-zero panic.

Observed in pre Skylake Intel cpu.

Reviewed by:    adrian
Differential Revision:  https://reviews.freebsd.org/D57614
DeltaFile
+4-0sys/x86/cpufreq/est.c
+4-01 files

FreeBSD/src f981fa1sys/dev/usb/wlan if_mtw.c

mtw: Fix firmware loading and memory leaks

- Skip firmware reload if MCU already initialized
- Fix firmware_put() memory leaks on error paths
- Increase MCU init timeout to 15 seconds
- Use debug macros instead of device_printf for verbose output
- Remove unused 'ret' variable
- Fix space indentation to tabs per style(9)

Reviewed by:    adrian
Differential Revision:  https://reviews.freebsd.org/D57597
DeltaFile
+60-43sys/dev/usb/wlan/if_mtw.c
+60-431 files

FreeBSD/src 12ec782usr.sbin/bsdconfig/dot USAGE

Update bsdconfig dot USAGE

graphics/gqview is no longer in ports, remove mention
DeltaFile
+0-6usr.sbin/bsdconfig/dot/USAGE
+0-61 files

FreeBSD/src 234bb65usr.sbin/bsdconfig/dot USAGE

Update bsdconfig dot USAGE

graphics/gimmage is no longer in ports, remove mention
DeltaFile
+0-6usr.sbin/bsdconfig/dot/USAGE
+0-61 files

FreeBSD/src ef0654fusr.sbin/bsdconfig/dot USAGE

Update bsdconfig dot USAGE

Replace mention of graphics/ImageMagick with graphics/GraphicsMagick
DeltaFile
+1-1usr.sbin/bsdconfig/dot/USAGE
+1-11 files

FreeBSD/src 1ed2bf1sys/netinet tcp_syncache.c

tcp: cleanup resource handling in SYN handling

Handle cred, ipopts, and maclabel using the same pattern:
allocate at the beginning and set to NULL when the object is
transferred to a struct syncache. When exiting the function, free
these objects if not transferred or when transferred to the on-stack
struct syncache. This makes use of a new function syncache_release().

This fixes a use after free problem: ipopts should only be freed,
if the on-stack struct syncache is used and the pointer in this
structure still points to the allocated ipopts. If the ipopts
are moved from the struct syncache to the struct inpcb in
syncache_socket(), which is called by syncache_tfo_expand(),
the pointer in the struct syncache is set to NULL.

In a FreeBSD default setup this problem is mitigated by
1. TCP fast open support on the server side not being enabled
   (the sysctl-variable net.inet.tcp.fastopen.server_enable is 0).
2. Incoming IP packet with source routing options are not being

    [11 lines not shown]
DeltaFile
+30-44sys/netinet/tcp_syncache.c
+30-441 files

FreeBSD/src 790a676stand/man loader.efi.8

loader.efi(8): document the ia32 loader

Reviewed by:    kib
MFC after:      3 days
Differential Revision:  https://reviews.freebsd.org/D57569

(cherry picked from commit 2e1f5b78976ad09bee41e602e75e79a0c3892e59)
DeltaFile
+12-0stand/man/loader.efi.8
+12-01 files

FreeBSD/src b8a7dd6stand/man loader.efi.8

loader.efi(8): the amd64 loader doesn't do protected mode

The amd64 UEFI loader executes in long mode, not protected mode.

Reviewed by:    kib
MFC after:      3 days
Differential Revision:  https://reviews.freebsd.org/D57568

(cherry picked from commit f771deb193d5743e74515614b7cec40d68ab02ca)
DeltaFile
+2-2stand/man/loader.efi.8
+2-21 files

FreeBSD/src 4aeeb4dstand/man loader.efi.8

loader.efi(8): document the ia32 loader

Reviewed by:    kib
MFC after:      3 days
Differential Revision:  https://reviews.freebsd.org/D57569

(cherry picked from commit 2e1f5b78976ad09bee41e602e75e79a0c3892e59)
DeltaFile
+12-0stand/man/loader.efi.8
+12-01 files

FreeBSD/src e3aba9estand/man loader.efi.8

loader.efi(8): the amd64 loader doesn't do protected mode

The amd64 UEFI loader executes in long mode, not protected mode.

Reviewed by:    kib
MFC after:      3 days
Differential Revision:  https://reviews.freebsd.org/D57568

(cherry picked from commit f771deb193d5743e74515614b7cec40d68ab02ca)
DeltaFile
+2-2stand/man/loader.efi.8
+2-21 files

FreeBSD/src a48bbefshare/examples/sound mmap.c

sound: Adjust mmap example to use kqueue

Reviewed by:    christos
Differential Revision:  https://reviews.freebsd.org/D57410
DeltaFile
+50-128share/examples/sound/mmap.c
+50-1281 files

FreeBSD/src fe13f70share/man/man4 pcm.4, sys/dev/sound/pcm dsp.c

sound: Include more information in kevent returned from the kernel

Reviewed by:    christos
Differential Revision:  https://reviews.freebsd.org/D57362
DeltaFile
+77-1share/man/man4/pcm.4
+12-2sys/dev/sound/pcm/dsp.c
+89-32 files