FreeBSD/src d285043sys/dev/aq aq_common.h aq_dbg.h

aq(4): Use sys, not userland, headers

And remove some unused definitions.

Sponsored by:   The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D54152
DeltaFile
+1-7sys/dev/aq/aq_common.h
+1-1sys/dev/aq/aq_dbg.h
+1-1sys/dev/aq/aq_fw.c
+1-1sys/dev/aq/aq_fw1x.c
+1-1sys/dev/aq/aq_fw2x.c
+0-1sys/dev/aq/aq_hw.h
+5-126 files

FreeBSD/src 473bc57share/man/man4 bnxt.4

bnxt.4: Adjust for recent HARDWARE

+ Adjust document description matching another terabit driver
+ Add BCM576XX family to DESCRIPTION, switch to XX notation
+ Add some model names, additional models, and improvements to HARDWARE

MFC after:              3 days
Reviewed by:            sumit.saxena_broadcom.com (previous)
Differential Revision:  https://reviews.freebsd.org/D54028
DeltaFile
+23-10share/man/man4/bnxt.4
+23-101 files

FreeBSD/src e967a2asys/kern uipc_socket.c

sockets: remove compat shim for divert(4)

All known software in ports had been addressed three years ago and the
shim stays in stable/14 and stable/15 for another couple years with its
printf(), so all ourliers are expected to conform before 16.0-RELEASE.
See 8624f4347e8133911b0554e816f6bedb56dc5fb3 for details.
DeltaFile
+0-11sys/kern/uipc_socket.c
+0-111 files

FreeBSD/src 567a097sys/compat/linuxkpi/common/src linux_80211.c linux_80211.h

LinuxKPI: 802.11: lock down the "txq_scheduled" tailq

For consistency rename the "scheduled_txqs" tailq to
"txq_scheduled" and add a lock per txq ("txq_scheduled_lock[]").
We use the "_bh" locking as this called from the device driver.

This fixes panics due to concurrent access to the tailq, especially
in between "first" and "remove" on the out-direction and between
"insert" and "elem_init" on the in-direction.

This was easily reproducible just running iperf3 at basic rates for
a few seconds to minutes with multiple chipsets, not only rtw89.

Sponsored by:   The FreeBSD Foundation
PR:             290636
Reported by:    arved, and others before
MFC after:      3 days
DeltaFile
+40-11sys/compat/linuxkpi/common/src/linux_80211.c
+2-1sys/compat/linuxkpi/common/src/linux_80211.h
+42-122 files

FreeBSD/src 0a19464sys/cam cam_ccb.h, sys/dev/nvme nvme_sim.c

nvme: Only attach to storage NVMe devices

Only attach CAM to the nvme storage devices.

Sponsored by:           Netflix
DeltaFile
+8-1sys/dev/nvme/nvme_sim.c
+1-1sys/cam/cam_ccb.h
+9-22 files

FreeBSD/src 8486028sys/dev/nvd nvd.c, sys/dev/nvme nvme.c nvme.h

nvme: remove now-redundant consumer interface

Now that we've moved to newbus methods, we can delete this...

Sponsored by:           Netflix
Reviewed by:            dab
Differential Revision:  https://reviews.freebsd.org/D54095
DeltaFile
+0-133sys/dev/nvme/nvme.c
+0-14sys/dev/nvme/nvme.h
+0-5sys/dev/nvme/nvme_private.h
+0-2sys/dev/nvd/nvd.c
+0-1sys/dev/nvme/nvme_ctrlr.c
+0-1555 files

FreeBSD/src b6b52a9sys/dev/nvme nvme.c nvme_ctrlr.c

nvme: Notify failure with newbus call

Sponsored by:           Netflix
Reviewed by:            dab
Differential Revision:  https://reviews.freebsd.org/D51391
DeltaFile
+10-13sys/dev/nvme/nvme.c
+2-2sys/dev/nvme/nvme_ctrlr.c
+1-1sys/dev/nvme/nvme_private.h
+13-163 files

FreeBSD/src 9b170dcsys/dev/nvme nvme.c nvme_ctrlr.c

nvme: Use new method to do async notifications

Nothing uses these at the moment, but it would be useful to use in the
future so convert this functionality to an newbus function dispatch.

Sponsored by:           Netflix
Reviewed by:            dab
Differential Revision:  https://reviews.freebsd.org/D51390
DeltaFile
+14-15sys/dev/nvme/nvme.c
+5-6sys/dev/nvme/nvme_ctrlr.c
+4-4sys/dev/nvme/nvme_private.h
+23-253 files

FreeBSD/src aed4471sys/dev/nvd nvd.c, sys/dev/nvme nvme_ctrlr.c nvme.c

nvd: Connect nvme_if methods

Conenct methods to manage namespaces explicitly to replace the old
consumer interface.

Sponsored by:           Netflix
Differential Revision:  https://reviews.freebsd.org/D51388
DeltaFile
+135-102sys/dev/nvd/nvd.c
+31-16sys/dev/nvme/nvme_ctrlr.c
+0-36sys/dev/nvme/nvme.c
+0-2sys/dev/nvme/nvme_private.h
+1-1sys/dev/nvme/nvme_if.m
+1-1sys/modules/nvd/Makefile
+168-1586 files

FreeBSD/src a21f128sys/dev/nvme nvme_sim.c, sys/modules/nvme Makefile

nvme_sim: Connect to events broadcast with nvme_if

Connect up the nvme_ns_* events. Copy code from old ways, as needed, and
refactor a little.

Sponsored by:           Netflix
Reviewed by:            dab
Differential Revision:  https://reviews.freebsd.org/D51387
DeltaFile
+93-70sys/dev/nvme/nvme_sim.c
+1-0sys/modules/nvme/Makefile
+94-702 files

FreeBSD/src b32470bsys/dev/nvd nvd.c

nvd: Attach as a child of nvme

Rather than registering as a consumer of the nvme controller, hook into
the child device and use that.

This is a small regression at the moment: we don't fail the device when
that happens at runtime.

Sponsored by:           Netflix
Differential Revision:  https://reviews.freebsd.org/D51385
DeltaFile
+73-37sys/dev/nvd/nvd.c
+73-371 files

FreeBSD/src 1e39b5dsys/dev/nvme nvme_sim.c

nvme_sim: Attach as a child of nvme

Rather than registering as a consumer of the nvme controller, hook into
the child device and use that.

This is a small regression at the moment: we don't fail the device when
that happens at runtime, and we don't handle new namespaces when they
arrive (though that feature is currently fragile).

Sponsored by:           Netflix
Differential Revision:  https://reviews.freebsd.org/D51384
DeltaFile
+86-54sys/dev/nvme/nvme_sim.c
+86-541 files

FreeBSD/src 743fbb5sys/dev/nvme nvme.c nvme_ctrlr.c

nvme: Add child device for each controller

Step 1 in the move from registering consumers for NVMe drives to newbus
nvme drives:

Add a child device and attach them for each controller that we
initialize. Detach them when we detach the main device.

Sponsored by:           Netflix
Reviewed by:            dab
Differential Revision:  https://reviews.freebsd.org/D51383
DeltaFile
+5-0sys/dev/nvme/nvme.c
+5-0sys/dev/nvme/nvme_ctrlr.c
+10-02 files

FreeBSD/src e5c770dsys/conf files, sys/dev/nvme nvme_if.m

nvme: Nvme controller generated events

Interface for the nvme driver notifying its children of different
events: async notifications, namespace events and device failure. These
aren't yet connected.

Sponsored by:           Netflix
Reviewed by:    dab
Differential Revision:  https://reviews.freebsd.org/D51386
DeltaFile
+55-0sys/dev/nvme/nvme_if.m
+1-0sys/conf/files
+56-02 files

FreeBSD/src a8d8bf4sys/kern kern_sendfile.c

sendfile: if sendfile_getobj() fails jump to the function epilogue

The functional change here is that *sent would be zeroed.  Note that some
portable applications, e.g. OpenSSL, use a wrapper around our sendfile(2)
to make it more Linux-like.  These wrappers are usually written in a
manner that expects *sbytes to always be initialized regardless of the
error code returned.
DeltaFile
+1-1sys/kern/kern_sendfile.c
+1-11 files

FreeBSD/src 45b3846sys/compat/linux linux_if.c

linux: fix unr(9) leak on module unload

Suggested by:   jhb
Fixes:          607f11055d2d421770963162a4d9a99cdd136152
DeltaFile
+0-2sys/compat/linux/linux_if.c
+0-21 files

FreeBSD/src b19e5e7sys/cam cam_periph.c, sys/cam/scsi scsi_all.c scsi_all.h

cam: Expand the parts of the sense buffer we report

Decode the descriptors we put into devd.

Sponsored by:           Netflix
DeltaFile
+207-0sys/cam/scsi/scsi_all.c
+2-6sys/cam/cam_periph.c
+3-0sys/cam/scsi/scsi_all.h
+212-63 files

FreeBSD/src d3e7918sys/cam/scsi scsi_all.c scsi_all.h

cam: decode and print direct accecss block device sense data

A more efficient way to include multiple bits of data in a sense
decriptor was defined in SBC4 in 2020. Decode and print it.

Sponsored by:           Netflix
DeltaFile
+45-2sys/cam/scsi/scsi_all.c
+23-0sys/cam/scsi/scsi_all.h
+68-22 files

FreeBSD/src d077ec7libexec/rc/rc.d ipfilter

rc.d/ipfilter: ipfilter must be enabled for options to take

ipfilter options are erased and reset to default when ipfilter is
disabled. This results in nullifying options from rc.conf that were
previously set.

8d6feaaaa26f, which added this code, was incorrect as it was for a bug in
ipfilter 4.2.28 and no longer applies to ipfilter 5.1.2.

Fixes:          8d6feaaaa26f

(cherry picked from commit cc1e4aae5a67a20f3c0fff13612364e6e4404f93)
DeltaFile
+3-6libexec/rc/rc.d/ipfilter
+3-61 files

FreeBSD/src 07b5eb3libexec/rc/rc.d ipfilter ippool

rc.d/{ipfilter,ippool}: Fix typo in variable name

(cherry picked from commit f04b23ce3547c238dcd52d4fa1a7d401ad38d1b1)
DeltaFile
+1-1libexec/rc/rc.d/ipfilter
+1-1libexec/rc/rc.d/ippool
+2-22 files

FreeBSD/src 448a117libexec/rc/rc.d ipfilter ippool

rc.d/{ipfilter,ippool}: Fix typo in variable name

(cherry picked from commit f04b23ce3547c238dcd52d4fa1a7d401ad38d1b1)
DeltaFile
+1-1libexec/rc/rc.d/ipfilter
+1-1libexec/rc/rc.d/ippool
+2-22 files

FreeBSD/src 0ce6b2flibexec/rc/rc.d ipfilter

rc.d/ipfilter: ipfilter must be enabled for options to take

ipfilter options are erased and reset to default when ipfilter is
disabled. This results in nullifying options from rc.conf that were
previously set.

8d6feaaaa26f, which added this code, was incorrect as it was for a bug in
ipfilter 4.2.28 and no longer applies to ipfilter 5.1.2.

Fixes:          8d6feaaaa26f

(cherry picked from commit cc1e4aae5a67a20f3c0fff13612364e6e4404f93)
DeltaFile
+3-6libexec/rc/rc.d/ipfilter
+3-61 files

FreeBSD/src d9b9de6libexec/rc/rc.d ipfilter

rc.d/ipfilter: ipfilter must be enabled for options to take

ipfilter options are erased and reset to default when ipfilter is
disabled. This results in nullifying options from rc.conf that were
previously set.

8d6feaaaa26f, which added this code, was incorrect as it was for a bug in
ipfilter 4.2.28 and no longer applies to ipfilter 5.1.2.

Fixes:          8d6feaaaa26f

(cherry picked from commit cc1e4aae5a67a20f3c0fff13612364e6e4404f93)
DeltaFile
+3-6libexec/rc/rc.d/ipfilter
+3-61 files

FreeBSD/src f9a4a42libexec/rc/rc.d ipfilter ippool

rc.d/{ipfilter,ippool}: Fix typo in variable name

(cherry picked from commit f04b23ce3547c238dcd52d4fa1a7d401ad38d1b1)
DeltaFile
+1-1libexec/rc/rc.d/ipfilter
+1-1libexec/rc/rc.d/ippool
+2-22 files

FreeBSD/src 84d198esys/dev/mpr mpr_sas.c mpr_sas.h

mpr: Partially revert 332096ebb638

These were a doodle that escaped into my staging tree. Remove them.

Sponsored by:           Netflix
DeltaFile
+2-29sys/dev/mpr/mpr_sas.c
+0-3sys/dev/mpr/mpr_sas.h
+2-322 files

FreeBSD/src 89eddfbsys/compat/linux linux_if.c

linux: fix panic on kldunload

The vnet_deregister_sysuninit() that is called by linker unload sequence also
calls every registered destructor before unregistering it.  IMHO, this is
not correct in principle, but for now plug the regression right in the code
that introduced the panic.

Fixes:  607f11055d2d421770963162a4d9a99cdd136152
DeltaFile
+7-0sys/compat/linux/linux_if.c
+7-01 files

FreeBSD/src 332096estand/kboot/libkboot dfk.c, sys/dev/mpr mpr_sas.c mpr_sas.h

kboot: Explicitly use host:/proc

When looking for the boot_params symbol we need to get the UEFI memory
map, use host: prefix. The short-circuit we have for this only works
when we have a filesystem. During the earliest parts of boot, we can
sometimes not have this yet, so making this explicit allows these
environments to function.

It's always in the host path. Print better
error messages, and add newlines in two palces.

Sponsored by:           Netflix
DeltaFile
+29-2sys/dev/mpr/mpr_sas.c
+10-3stand/kboot/libkboot/dfk.c
+3-0sys/dev/mpr/mpr_sas.h
+42-53 files

FreeBSD/src a0347b0sbin/geom/core geom.c

gpart: "gpart --libxo:JP list" duplicates attribute keys

Add leaf-list modifier to attrib as it's possible to have multiple
attributes on a gpart provider.

I purposely made it so that the normal output still says "attrib:" just
so we don't break any scripts people may be using to parse the output,
but the libxo output now says "attribute" just like `gpart show` will do
once https://reviews.freebsd.org/D53950 is merged.

PR:             291377
MFC after:      1 week
Reviewed by:    asomers
Sponsored by:   ConnectWise
Differential Revision: https://reviews.freebsd.org/D54080
DeltaFile
+6-2sbin/geom/core/geom.c
+6-21 files

FreeBSD/src 23aaa07. Makefile.inc1

Makefile.inc1: Force NO_ROOT for distribute* and package*

These targets are used to produce legacy dist sets for install media and
now always use NO_ROOT mode.  Extend existing logic that forces NO_ROOT
mode to these cases to ensure they do not run in the wrong mode.

Sponsored by:   The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D50551

(cherry picked from commit 300aa267efaa08564337797e89590737a7cc6af0)
DeltaFile
+7-2Makefile.inc1
+7-21 files

FreeBSD/src 17bc015sys/dev/irdma irdma_hw.c irdma_cm.c

irdma(4): fix potential memory leak on qhash cqp operation

It was found that in some circumstances when launching
non-waiting create qhash cqp operation the refcount on
the cqp_request may be not properly decremented leading to a memory
leak.

Signed-off-by: Bartosz Sobczak <bartosz.sobczak at intel.com>

Reviewed by:    anzhu_netapp.com
Tested by:      mateusz.moga_intel.com
Approved by:    kbowling (mentor)
Sponsored by:   Intel Corporation
Differential Revision:  https://reviews.freebsd.org/D53732

(cherry picked from commit 7b6644e160ed63b633e7c68a3cacf2c71d216cd5)
DeltaFile
+108-24sys/dev/irdma/irdma_hw.c
+2-36sys/dev/irdma/irdma_cm.c
+2-2sys/dev/irdma/icrdma.c
+2-1sys/dev/irdma/irdma_main.h
+114-634 files