FreeBSD/src 013f177 — sys/dev/ice if_ice_iflib.c ice_ddp_common.c

ice(4): Do not leave device non-functional if Tx scheduler config fails

The ice_cfg_tx_topo function attempts to apply Tx scheduler topology
configuration based on NVM parameters, selecting either a 5 or 9 layer
topology. As part of this flow, the driver acquires the "Global Configuration Lock",
which is a hardware resource associated with programming the DDP package
to the device. This "lock" is implemented by firmware as a way to
guarantee that only one PF can program the DDP for a device. Unlike a
traditional lock, once a PF has acquired this lock, no other PF will be
able to acquire it again (including that PF) until a CORER of the device.
However, if configuration of the Tx topology fails, (i.e.
ice_get_set_tx_topo returns an error code), the driver exits
ice_cfg_tx_topo() immediately, and fails to trigger CORER.
While the global configuration lock is held, the firmware rejects most
AdminQ commands, as it is waiting for the DDP package download (or Tx
scheduler topology programming) to occur.
Refactor ice_cfg_tx_topo() to always trigger a CORER after acquiring the
global lock, regardless of success or failure of the topology
configuration.

    [14 lines not shown]
DeltaFile
+21-11sys/dev/ice/ice_ddp_common.c
+7-10sys/dev/ice/if_ice_iflib.c
+28-212 files

FreeBSD/src 5a9d56c — sys/dev/acpi_support acpi_panasonic.c

acpi_panasonic: Clear wireless RF_KILL on boot and resume

On Panasonic FZ-Y1 and similar models, the EC latches RF_KILL on
shutdown and suspend when battery is at certain level, causing wireless
to boot with hard block.

Call WLSW.SHRF during attach and resume to clear the block.

Tested on Panasonic FZ-Y1 with Intel Wireless 7265.

Reviewed by:    adrian, obiwac
Approved by:    adrian, obiwac
Differential Revision:  https://reviews.freebsd.org/D55265

(cherry picked from commit 16822dac32ab8955539ffa4eda05145df8638154)
DeltaFile
+36-0sys/dev/acpi_support/acpi_panasonic.c
+36-01 files

FreeBSD/src 029bb78 — sys/dev/acpi_support acpi_panasonic.c

acpi_panasonic: acquire serial lock before calling hkey_sound_mute in shutdown

acpi_panasonic_shutdown() calls hkey_sound_mute() without holding
the ACPI serial lock. Every other call site holds
`ACPI_SERIAL_BEGIN(panasonic)` before calling it, as the locking
model is caller-owned.

This seems to affect the whole Panasonic Toughtbook lineup btw.

Reviewed by:    ngie
Differential Revision:  https://reviews.freebsd.org/D56718

(cherry picked from commit 7619d14d08a0036a07dce670f55b9568f8133b38)
DeltaFile
+2-0sys/dev/acpi_support/acpi_panasonic.c
+2-01 files

FreeBSD/src 0fc7fbe — sys/dev/acpi_support acpi_panasonic.c

acpi_panasonic: Clear wireless RF_KILL on boot and resume

On Panasonic FZ-Y1 and similar models, the EC latches RF_KILL on
shutdown and suspend when battery is at certain level, causing wireless
to boot with hard block.

Call WLSW.SHRF during attach and resume to clear the block.

Tested on Panasonic FZ-Y1 with Intel Wireless 7265.

Reviewed by:    adrian, obiwac
Approved by:    adrian, obiwac
Differential Revision:  https://reviews.freebsd.org/D55265

(cherry picked from commit 16822dac32ab8955539ffa4eda05145df8638154)
DeltaFile
+36-0sys/dev/acpi_support/acpi_panasonic.c
+36-01 files

FreeBSD/src 20f7b53 — sys/dev/acpi_support acpi_panasonic.c

acpi_panasonic: acquire serial lock before calling hkey_sound_mute in shutdown

acpi_panasonic_shutdown() calls hkey_sound_mute() without holding
the ACPI serial lock. Every other call site holds
`ACPI_SERIAL_BEGIN(panasonic)` before calling it, as the locking
model is caller-owned.

This seems to affect the whole Panasonic Toughtbook lineup btw.

Reviewed by:    ngie
Differential Revision:  https://reviews.freebsd.org/D56718

(cherry picked from commit 7619d14d08a0036a07dce670f55b9568f8133b38)
DeltaFile
+2-0sys/dev/acpi_support/acpi_panasonic.c
+2-01 files

FreeBSD/src 5cc0873 — . RELNOTES UPDATING, sys/sys param.h

__FreeBSD_version: Bump for USB 3.1 and 3.2 changes

Bump new USB changes. Also, update RELNOTE and UPDATING.

Sponsored by:   The FreeBSD Foundation
DeltaFile
+8-0UPDATING
+7-0RELNOTES
+1-1sys/sys/param.h
+16-13 files

FreeBSD/src 20b1998 — sys/dev/usb/controller xhcireg.h xhci.h

usb: support SSP and SSPx2 xHCI

Only the default PSI IDs are supported, other controllers fall back to
USB 3.0.  Record the speed IDs the controller has: the root hub BOS
lists those, and a link without one uses the closest lower ID.

Per xHCI 6.2.2, take the parent hub slot ID and port number of SS and
SSP devices from the closest higher-rank hub.

Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D52347
DeltaFile
+268-37sys/dev/usb/controller/xhci.c
+14-0sys/dev/usb/controller/xhci.h
+12-0sys/dev/usb/controller/xhcireg.h
+294-373 files

FreeBSD/src fb470e8 — sys/dev/usb usb_hub_private.h usb_request.c

usb: Add support for SSP and SSPx2 hubs

An SSP hub reports its sublink speeds in the BOS descriptor, and
Extended Port Status tells which one each port uses.  Read it based on
bcdUSB, since the ports of a hub can be faster than its upstream link.
Without it, the ports are treated as SuperSpeed.

Read the speed again in usbd_req_re_enumerate(), since a link can come
back at another speed.

Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D57204
DeltaFile
+218-8sys/dev/usb/usb_hub.c
+21-0sys/dev/usb/usb_hub.h
+7-0sys/dev/usb/usb_request.c
+2-0sys/dev/usb/usb_hub_private.h
+248-84 files

FreeBSD/src 2f79adc — sys/dev/usb usb.h usb_request.h

usb: Implement usbd_req_get_bos_descriptor helper

Get the header or the complete BOS descriptor of SS+ devices.

Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D57202
DeltaFile
+62-0sys/dev/usb/usb_request.c
+4-0sys/dev/usb/usb_request.h
+3-0sys/dev/usb/usb.h
+69-03 files

FreeBSD/src 1928deb — sys/dev/usb usb_request.h usb_request.c

usb: Add get_ext_port_status helper function

usbd_req_get_ext_port_status() wraps the Get Extended Port Status
request.

Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D57201
DeltaFile
+23-0sys/dev/usb/usb_request.c
+2-0sys/dev/usb/usb_request.h
+25-02 files

FreeBSD/src ab18352 — sys/dev/usb usbdi_util.h usb_parse.c

usb: Add usbd_bos_foreach helper

Iterate the capabilities of a BOS descriptor.

Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D57199
DeltaFile
+45-0sys/dev/usb/usb_parse.c
+2-0sys/dev/usb/usbdi_util.h
+47-02 files

FreeBSD/src 23ef0bd — sys/dev/usb usb.h

usb: Add SSPlus device capability descriptor

Add the SuperSpeedPlus USB Device Capability descriptor and its field
macros.

Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D57203
DeltaFile
+28-0sys/dev/usb/usb.h
+28-01 files

FreeBSD/src 1fe552b — sys/dev/usb usb.h

usb: Add extended port status struct

Extended Port Status reports the speed and lane count of SS and SSP
links.

Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D57200
DeltaFile
+10-0sys/dev/usb/usb.h
+10-01 files

FreeBSD/src 85c3bd4 — sys/dev/usb usb_transfer.c, sys/dev/usb/controller usb_controller.c

usb: support SSP/SSPx2 devices in all-speed consumers

Handle the new speeds wherever USB_SPEED_SUPER was checked.  Most
consumers treat them as SS.

Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D57198
DeltaFile
+18-0sys/dev/usb/usb_transfer.c
+12-0sys/dev/usb/controller/usb_controller.c
+6-3sys/dev/usb/net/if_ure.c
+9-0sys/dev/usb/template/usb_template.c
+8-0sys/dev/usb/storage/umass.c
+6-0sys/dev/usb/net/if_muge.c
+59-34 files not shown
+65-1010 files

FreeBSD/src 65346af — usr.sbin/usbdump usbdump.c

usbdump: Support SSP and SSPx2 speed display

Add the SuperSpeedPlus speed names.

Reviewed by:    bz
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D57197
DeltaFile
+3-0usr.sbin/usbdump/usbdump.c
+3-01 files

FreeBSD/src 1a38209 — lib/libusb libusb20_ugen20.c

libusb: Add SSP and SSPx2 enum support

Report the new kernel speeds as LIBUSB20_SPEED_SUPER_PLUS.

Reviewed by:    bz
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D57195
DeltaFile
+5-0lib/libusb/libusb20_ugen20.c
+5-01 files

FreeBSD/src 6e575d0 — sys/dev/usb usb.h

usb: Add SSP and SSPx2 speed and move USB_*_MAX into enum

Add the USB 3.1 and 3.2 speeds and revisions.  The speeds are in USB
3.2 rank order, so they can be compared directly.

Also, move USB_*_MAX into the enums.

Reviewed by:    bz
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D57194
DeltaFile
+12-6sys/dev/usb/usb.h
+12-61 files

FreeBSD/src 2802f8d — usr.sbin/usbconfig dump.c

usbconfig: Add SSPx2 support

libusb has one speed for all SSP links, so print "SUPER+ (>=10Gbps)".

Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D57196
DeltaFile
+1-1usr.sbin/usbconfig/dump.c
+1-11 files

FreeBSD/src 9462353 — sys/dev/ufshci ufshci_sim.c

ufshci: fix the WLUN peripheral lookup timeout

The timeout in ufshci_sim_find_periph() is uint64_t, making the
comparison of timeout - ticks with zero always false. If the requested
peripheral does not become available, the lookup can wait indefinitely.

Use an sbintime_t deadline based on sbinuptime() and mstosbt(), and
compare the current uptime directly with the deadline. Preserve the
successful lookup path and existing timeout cleanup.

On an HP 15-fd0118ca with Intel N150 and Samsung UFS 3.1 storage, a
kernel built from stable/15 revision 84aa3cb3204d with this change
logged the missing-WLUN timeout, attached da0 and mounted root in two
boot trials.

Signed-off-by:  Denis Lemire <denis at lemire.name>
Reviewed by:    jaeyoon
Fixes:          31407551c3d4 ("ufshci: Add a check for WLUN during driver initialization")
MFC after:      3 days

    [3 lines not shown]
DeltaFile
+3-3sys/dev/ufshci/ufshci_sim.c
+3-31 files

FreeBSD/src b669226 — . UPDATING, release/tools oci-image-static.conf

pkg: Enable FreeBSD-base by default

Enable the FreeBSD-base repository in all of the /etc/pkg/FreeBSD.conf
variants, and remove code from various install paths which enabled the
repository via /usr/local/etc/pkg/repos/FreeBSD.conf.

Relnotes:       yes
Differential Revision:  https://reviews.freebsd.org/D60946
DeltaFile
+0-8release/tools/oci-image-static.conf
+2-3usr.sbin/pkg/FreeBSD.conf.quarterly-release
+2-3usr.sbin/pkg/FreeBSD.conf.quarterly
+2-3usr.sbin/pkg/FreeBSD.conf.latest
+5-0UPDATING
+0-4usr.sbin/bsdinstall/scripts/pkgbase.in
+11-211 files not shown
+11-257 files

FreeBSD/src 7b67aa6 — release Makefile

release: No distribution sets by default

Remove the "NODISTSETS" option and add a "DISTSETS" option.  This
option will remain, disabled by default, for the duration of the
16.x branch but will be removed in 17.0.

With hat:       re
Relnotes:       yes
Differential Revision:  https://reviews.freebsd.org/D60945
DeltaFile
+10-7release/Makefile
+10-71 files

FreeBSD/src 2650d01 — release Makefile.vm, release/tools gce.conf

GCE: Copy /usr/{src,ports} directly

Distribution sets are going away, so we can't extract those into GCE
images for all-source-code-included compliance purposes.

Differential Revision:  https://reviews.freebsd.org/D60944
DeltaFile
+23-25release/tools/gce.conf
+0-7release/Makefile.vm
+23-322 files

FreeBSD/src 2265b54 — release Makefile.vm

release: Expose PORTSDIR to VM image building

Differential Revision:  https://reviews.freebsd.org/D60943
DeltaFile
+1-0release/Makefile.vm
+1-01 files

FreeBSD/src 845f974 — sys/dev/iavf iavf_lib.h iavf_vc_common.c

iavf: Handle queue disable during reset recovery

Some PFs reject a redundant DISABLE_QUEUES request after queues have
already stopped. The historical driver retried the request but
continued. The mailbox recovery change instead treated this NACK as a
transport failure, tore down the Admin Queue without a VF reset, and
could not recover the interface during API rediscovery.

Track a PF's pre-reset warning separately from an observed reset and
from exclusive ownership of polled AdminQ replies. RESET_IMPENDING
leaves asynchronous AdminQ processing available so a concurrent stop
can consume its DISABLE_QUEUES reply. VC_POLLING protects VERSION and
GET_VF_RESOURCES rediscovery without blocking that reply. Record
completed resets so subsequent stop/init operations do not issue a
redundant queue-disable request.

If queue disable is not confirmed, wait for an observed reset or request
a VF reset and wait for completion. Give queue shutdown a separate
60-second monotonic deadline to accommodate slow PF reset recovery.

    [21 lines not shown]
DeltaFile
+193-26sys/dev/iavf/if_iavf_iflib.c
+20-10sys/dev/iavf/iavf_lib.c
+21-8sys/dev/iavf/iavf_vc_common.c
+2-0sys/dev/iavf/iavf_lib.h
+236-444 files

FreeBSD/src 7a0021a — sys/fs/nfsclient nfs_clrpcops.c

nfscl: Do not delay recovery for a stale ClientID

When a CREATE_SESSION with the extant ClientID failed with
NFS4ERR_STALE_CLIENTID within nfsc_renew of the previous full recovery,
nfsrpc_setclient() returned EIO and the mount did no I/O until that window
expired (about 45s).
The server has discarded the ClientID, so waiting cannot help; RFC 8881
Section 8.4.2 requires a new ClientID (EXCHANGE_ID) and a state reclaim.

AWS EFS discards both the session and the ClientID of clients whose lease is
current whenever it resets a connection, which makes this path common there.

PR:             299221
Approved by:    rmacklem@
Sponsored by:   Netflix
DeltaFile
+6-3sys/fs/nfsclient/nfs_clrpcops.c
+6-31 files

FreeBSD/src fe9da42 — cli core.c, cli/pccritic main.c critic.c

Vendor import of pkgconf 3.0.9

Obtained from https://github.com/pkgconf/pkgconf/archive/refs/tags/pkgconf-3.0.9.tar.gz

SHA1: a390f016a7a5ff419c9eef9e2b2c01fe86c11971  -
SHA256: 32310a33bb97425ebc0707cb5af59f9dc05d10282dcd4db628a45ed904993dc6  -
SHA512: 30776d31f860910286b96fbf60a19b5a6d1e73cb6a1077a019d763ae6e5ed1e8d81bc3649978c83f40e5e90ae779f7e530c513b700c8e73bb6399883dd6ef7ab  -

Sponsored by:   The FreeBSD Foundation
DeltaFile
+628-246libpkgconf/fragment.c
+588-0cli/pccritic/critic.c
+422-0cli/pccritic/main.c
+225-89libpkgconf/pkg.c
+232-48libpkgconf/buffer.c
+152-119cli/core.c
+2,247-502184 files not shown
+5,965-1,375190 files

FreeBSD/src 6485741 — sys/fs/nfsserver nfs_nfsdstate.c nfs_nfsdserv.c

nfsd: Fix handling of RPC messages too large to cache

The NFSv4.1/4.2 session negotiates a limit to the size
of an RPC reply message that can be cached for the session
slot.

This patch fixes the code so that it checks that limit and
does not cache replies larger than the limit, even if the
client requested that it be cached.

This patch is slightly different than what the author
submitted, but retains the check for reply cache size limit.

Reviewed by:    rmacklem
MFC after:      1 month
DeltaFile
+6-0sys/fs/nfsserver/nfs_nfsdserv.c
+4-0sys/fs/nfsserver/nfs_nfsdstate.c
+10-02 files

FreeBSD/src bd4975e — sys/kern uipc_socket.c, tests/sys/kern ktls_test.c

ktls: Check the record type message holds its byte

sosend_generic() read the TLS record type past a TLS_SET_RECORD_TYPE
control message holding only a cmsghdr, and sent that stale byte.

Approved by:    markj
Fixes:          b2e60773c6b0 ("Add kernel-side support for in-kernel TLS.")
Sponsored by:   Netflix
DeltaFile
+43-0tests/sys/kern/ktls_test.c
+1-1sys/kern/uipc_socket.c
+44-12 files

FreeBSD/src c334757 — lib/libthr/thread thr_join.c

libthr: Remove deadcode in join_common

The while loop previous can only be break when ret == ETIMEDOUT. They
never produce EBUSY. Remove the deadcode here.

Reviewed by:    kib
MFC after:      2 weeks
Differential Revision: https://reviews.freebsd.org/D60711

(cherry picked from commit a0e152973613e0d0d55257f4e1f614509b7ec4c9)
DeltaFile
+1-1lib/libthr/thread/thr_join.c
+1-11 files

FreeBSD/src 8b3f74c — lib/libthr libthr.3, lib/libthr/thread thr_init.c

libthr: Fix LIBPTHREAD_QUEUE_FIFO range

LIBPTHREAD_QUEUE_FIFO is used in bitwise offset, we set the limit to
0~31 so that it won't cause undefined behavior. Also, create a new
helper function to do getenv++strtol directly and check the boundary of
the valid value.

Reviewed by:    kib
MFC after:      2 weeks
Differential Revision: https://reviews.freebsd.org/D60487

(cherry picked from commit 5fb07bbcd5d5d9a865d9e7765fb93e9ba5edef1c)
DeltaFile
+24-9lib/libthr/thread/thr_init.c
+2-2lib/libthr/libthr.3
+26-112 files