Linux/linux a75cb86fs/smb/server smb2pdu.c auth.c

Merge tag 'v7.0-rc1-ksmbd-server-fixes' of git://git.samba.org/ksmbd

Pull smb server fixes from Steve French:

 - auth security improvement

 - fix potential buffer overflow in smbdirect negotiation

* tag 'v7.0-rc1-ksmbd-server-fixes' of git://git.samba.org/ksmbd:
  ksmbd: fix signededness bug in smb_direct_prepare_negotiation()
  ksmbd: Compare MACs in constant time
DeltaFile
+3-2fs/smb/server/smb2pdu.c
+3-1fs/smb/server/auth.c
+2-2fs/smb/server/transport_rdma.c
+1-0fs/smb/server/Kconfig
+9-54 files

Linux/linux 69062f2. MAINTAINERS, include/linux liveupdate.h

Merge tag 'mm-hotfixes-stable-2026-02-26-14-14' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm

Pull misc fixes from Andrew Morton:
 "12 hotfixes.  7 are cc:stable.  8 are for MM.

  All are singletons - please see the changelogs for details"

* tag 'mm-hotfixes-stable-2026-02-26-14-14' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm:
  MAINTAINERS: update Yosry Ahmed's email address
  mailmap: add entry for Daniele Alessandrelli
  mm: fix NULL NODE_DATA dereference for memoryless nodes on boot
  mm/tracing: rss_stat: ensure curr is false from kthread context
  mm/kfence: fix KASAN hardware tag faults during late enablement
  mm/damon/core: disallow non-power of two min_region_sz
  Squashfs: check metadata block offset is within range
  MAINTAINERS, mailmap: update e-mail address for Vlastimil Babka
  liveupdate: luo_file: remember retrieve() status
  mm: thp: deny THP for files on anonymous inodes
  mm: change vma_alloc_folio_noprof() macro to inline function
  mm/kfence: disable KFENCE upon KASAN HW tags enablement
DeltaFile
+25-16kernel/liveupdate/luo_file.c
+23-6mm/kfence/core.c
+10-10MAINTAINERS
+6-3include/linux/liveupdate.h
+7-1include/trace/events/kmem.h
+6-1mm/memfd_luo.c
+77-377 files not shown
+102-4213 files

Linux/linux 944e15farch/sparc/kernel iommu.c pci_sun4v.c, kernel/dma direct.h

Merge tag 'dma-mapping-7.0-2026-02-26' of git://git.kernel.org/pub/scm/linux/kernel/git/mszyprowski/linux

Pull dma-mapping fixes from Marek Szyprowski:
 "Two DMA-mapping fixes for the recently merged API rework (Jiri Pirko
  and Stian Halseth)"

* tag 'dma-mapping-7.0-2026-02-26' of git://git.kernel.org/pub/scm/linux/kernel/git/mszyprowski/linux:
  sparc: Fix page alignment in dma mapping
  dma-mapping: avoid random addr value print out on error path
DeltaFile
+2-0arch/sparc/kernel/iommu.c
+2-0arch/sparc/kernel/pci_sun4v.c
+1-1kernel/dma/direct.h
+5-13 files

Linux/linux e094883drivers/acpi osi.c sleep.c

Merge tag 'acpi-7.0-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm

Pull ACPI fixes from Rafael Wysocki:
 "New platform quirks for two systems:

   - Add a quirk for Lenovo G70-35 to save the ACPI NVS memory on system
     suspend (Piotr Mazek)

   - Add a DMI quirk for Acer Aspire One D255 to work around a backlight
     issue by returning false to _OSI("Windows 2009") (Sofia Schneider)"

* tag 'acpi-7.0-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
  ACPI: OSI: Add DMI quirk for Acer Aspire One D255
  ACPI: PM: Save NVS memory on Lenovo G70-35
DeltaFile
+13-0drivers/acpi/osi.c
+8-0drivers/acpi/sleep.c
+21-02 files

Linux/linux db5781c. MAINTAINERS .mailmap, drivers/cpufreq intel_pstate.c

Merge tag 'pm-7.0-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm

Pull power management fixes from Rafael Wysocki:
 "These fix two intel_pstate driver issues causing it to crash on sysfs
  attribute accesses when some CPUs in the system are offline, finalize
  changes related to turning pm_runtime_put() into a void function, and
  update Daniel Lezcano's contact information:

   - Fix two issues in the intel_pstate driver causing it to crash when
     its sysfs interface is used on a system with some offline CPUs
     (David Arcari, Srinivas Pandruvada)

   - Update the last user of the pm_runtime_put() return value to
     discard it and turn pm_runtime_put() into a void function (Rafael
     Wysocki)

   - Update Daniel Lezcano's contact information in MAINTAINERS and
     .mailmap (Daniel Lezcano)"


    [6 lines not shown]
DeltaFile
+2-14include/linux/pm_runtime.h
+8-6drivers/cpufreq/intel_pstate.c
+6-6MAINTAINERS
+3-1drivers/pmdomain/imx/gpcv2.c
+4-0.mailmap
+23-275 files

Linux/linux c45be7cdrivers/char/ipmi ipmi_msghandler.c ipmi_si_intf.c

Merge tag 'for-linus-7.0-1' of https://github.com/cminyard/linux-ipmi

Pull IPMI driver fixes from Corey Minyard:
 "This mostly revolves around getting the driver to behave when the IPMI
  device misbehaves. Past attempts have not worked very well because I
  didn't have hardware I could make do this, and AI was fairly useless
  for help on this.

  So I modified qemu and my test suite so I could reproduce a
  misbehaving IPMI device, and with that I was able to fix the issues"

* tag 'for-linus-7.0-1' of https://github.com/cminyard/linux-ipmi:
  ipmi:si: Fix check for a misbehaving BMC
  ipmi:msghandler: Handle error returns from the SMI sender
  ipmi:si: Don't block module unload if the BMC is messed up
  ipmi:si: Use a long timeout when the BMC is misbehaving
  ipmi:si: Handle waiting messages when BMC failure detected
  ipmi:ls2k: Make ipmi_ls2k_platform_driver static
  ipmi: ipmb: initialise event handler read bytes

    [2 lines not shown]
DeltaFile
+96-47drivers/char/ipmi/ipmi_msghandler.c
+24-13drivers/char/ipmi/ipmi_si_intf.c
+5-0drivers/char/ipmi/ipmi_ipmb.c
+1-1drivers/char/ipmi/ipmi_si_ls2k.c
+126-614 files

Linux/linux 3d9b8b0drivers/acpi sleep.c

Merge branch 'acpi-pm'

Add a quirk for Lenovo G70-35 to save the ACPI NVS memory on system
suspend (Piotr Mazek)

* acpi-pm:
  ACPI: PM: Save NVS memory on Lenovo G70-35
DeltaFile
+8-0drivers/acpi/sleep.c
+8-01 files

Linux/linux b78030ddrivers/cpufreq intel_pstate.c, drivers/pmdomain/imx gpcv2.c

Merge branches 'pm-cpufreq' and 'pm-runtime'

Merge cpufreq and runtime PM updates for 7.0-rc2:

 - Fix two issues in the intel_pstate driver causing it to crash when
   its sysfs interface is used on a system with some offline CPUs (David
   Arcari, Srinivas Pandruvada)

 - Update the last user of the pm_runtime_put() return value to discard
   it and turn pm_runtime_put() into a void function (Rafael Wysocki)

* pm-cpufreq:
  cpufreq: intel_pstate: Fix crash during turbo disable
  cpufreq: intel_pstate: Fix NULL pointer dereference in update_cpu_qos_request()

* pm-runtime:
  PM: runtime: Change pm_runtime_put() return type to void
  pmdomain: imx: gpcv2: Discard pm_runtime_put() return value
DeltaFile
+2-14include/linux/pm_runtime.h
+8-6drivers/cpufreq/intel_pstate.c
+3-1drivers/pmdomain/imx/gpcv2.c
+13-213 files

Linux/linux 3f4a08earch/um/drivers ubd_kern.c, include/linux overflow.h

Merge tag 'kmalloc_obj-v7.0-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux

Pull kmalloc_obj fixes from Kees Cook:

 - Fix pointer-to-array allocation types for ubd and kcsan

 - Force size overflow helpers to __always_inline

 - Bump __builtin_counted_by_ref to Clang 22.1 from 22.0 (Nathan Chancellor)

* tag 'kmalloc_obj-v7.0-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux:
  kcsan: test: Adjust "expect" allocation type for kmalloc_obj
  overflow: Make sure size helpers are always inlined
  init/Kconfig: Adjust fixed clang version for __builtin_counted_by_ref
  ubd: Use pointer-to-pointers for io_thread_req arrays
DeltaFile
+5-5arch/um/drivers/ubd_kern.c
+4-4include/linux/overflow.h
+1-1kernel/kcsan/kcsan_test.c
+1-1init/Kconfig
+11-114 files

Linux/linux 7954698kernel/kcsan kcsan_test.c

kcsan: test: Adjust "expect" allocation type for kmalloc_obj

The call to kmalloc_obj(observed.lines) returns "char (*)[3][512]",
a pointer to the whole 2D array. But "expect" wants to be "char (*)[512]",
the decayed pointer type, as if it were observed.lines itself (though
without the "3" bounds). This produces the following build error:

../kernel/kcsan/kcsan_test.c: In function '__report_matches':
../kernel/kcsan/kcsan_test.c:171:16: error: assignment to 'char (*)[512]' from incompatible pointer type 'char (*)[3][512]'
[-Wincompatible-pointer-types]
  171 |         expect = kmalloc_obj(observed.lines);
      |                ^

Instead of changing the "expect" type to "char (*)[3][512]" and
requiring a dereference at each use (e.g. "(expect*)[0]"), just
explicitly cast the return to the desired type.

Note that I'm intentionally not switching back to byte-based "kmalloc"
here because I cannot find a way for the Coccinelle script (which will

    [13 lines not shown]
DeltaFile
+1-1kernel/kcsan/kcsan_test.c
+1-11 files

Linux/linux e3c81badrivers/infiniband/core device.c cache.c, drivers/infiniband/hw/bng_re bng_dev.c

Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma

Pull rdma fixes from Jason Gunthorpe:
 "Seems bigger than usual, a number of things were posted near/during
  the merg window:

   - Fix some compilation regressions related to the new DMABUF code

   - Close a race with ib_register_device() vs netdev events that causes
     GID table corruption

   - Compilation warnings with some compilers in bng_re

   - Correct error unwind in bng_re and the umem pinned dmabuf

   - Avoid NULL pointer crash in ionic during query_port()

   - Check the size for uAPI validation checks in EFA


    [18 lines not shown]
DeltaFile
+19-37drivers/infiniband/hw/bng_re/bng_dev.c
+33-1drivers/infiniband/core/device.c
+13-0drivers/infiniband/core/cache.c
+5-1drivers/infiniband/core/cma.c
+3-2drivers/infiniband/hw/mthca/mthca_provider.c
+1-3drivers/infiniband/core/umem_dmabuf.c
+74-448 files not shown
+86-4814 files

Linux/linux b9c8fc2drivers/net/ethernet/google/gve gve_tx_dqo.c, drivers/net/ovpn tcp.c

Merge tag 'net-7.0-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net

Pull networking fixes from Paolo Abeni:
 "Including fixes from IPsec, Bluetooth and netfilter

  Current release - regressions:

   - wifi: fix dev_alloc_name() return value check

   - rds: fix recursive lock in rds_tcp_conn_slots_available

  Current release - new code bugs:

   - vsock: lock down child_ns_mode as write-once

  Previous releases - regressions:

   - core:
      - do not pass flow_id to set_rps_cpu()

    [63 lines not shown]
DeltaFile
+74-29net/bluetooth/l2cap_core.c
+98-2tools/testing/selftests/drivers/net/hw/rss_ctx.py
+42-56net/ipv6/tcp_ipv6.c
+38-19drivers/net/ovpn/tcp.c
+24-30drivers/net/ethernet/google/gve/gve_tx_dqo.c
+42-6drivers/net/usb/pegasus.c
+318-14282 files not shown
+829-33488 files

Linux/linux baed0d9net/netfilter nf_conntrack_h323_asn1.c

netfilter: nf_conntrack_h323: fix OOB read in decode_choice()

In decode_choice(), the boundary check before get_len() uses the
variable `len`, which is still 0 from its initialization at the top of
the function:

    unsigned int type, ext, len = 0;
    ...
    if (ext || (son->attr & OPEN)) {
        BYTE_ALIGN(bs);
        if (nf_h323_error_boundary(bs, len, 0))  /* len is 0 here */
            return H323_ERROR_BOUND;
        len = get_len(bs);                        /* OOB read */

When the bitstream is exactly consumed (bs->cur == bs->end), the check
nf_h323_error_boundary(bs, 0, 0) evaluates to (bs->cur + 0 > bs->end),
which is false.  The subsequent get_len() call then dereferences
*bs->cur++, reading 1 byte past the end of the buffer.  If that byte
has bit 7 set, get_len() reads a second byte as well.

    [18 lines not shown]
DeltaFile
+1-1net/netfilter/nf_conntrack_h323_asn1.c
+1-11 files

Linux/linux 8a5752cdrivers/net/ethernet/freescale/dpaa2 dpaa2-switch.c

dpaa2-switch: validate num_ifs to prevent out-of-bounds write

The driver obtains sw_attr.num_ifs from firmware via dpsw_get_attributes()
but never validates it against DPSW_MAX_IF (64). This value controls
iteration in dpaa2_switch_fdb_get_flood_cfg(), which writes port indices
into the fixed-size cfg->if_id[DPSW_MAX_IF] array. When firmware reports
num_ifs >= 64, the loop can write past the array bounds.

Add a bound check for num_ifs in dpaa2_switch_init().

dpaa2_switch_fdb_get_flood_cfg() appends the control interface (port
num_ifs) after all matched ports. When num_ifs == DPSW_MAX_IF and all
ports match the flood filter, the loop fills all 64 slots and the control
interface write overflows by one entry.

The check uses >= because num_ifs == DPSW_MAX_IF is also functionally
broken.

build_if_id_bitmap() silently drops any ID >= 64:

    [8 lines not shown]
DeltaFile
+7-0drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
+7-01 files

Linux/linux 7aa767dnet/core dev.c

net: consume xmit errors of GSO frames

udpgro_frglist.sh and udpgro_bench.sh are the flakiest tests
currently in NIPA. They fail in the same exact way, TCP GRO
test stalls occasionally and the test gets killed after 10min.

These tests use veth to simulate GRO. They attach a trivial
("return XDP_PASS;") XDP program to the veth to force TSO off
and NAPI on.

Digging into the failure mode we can see that the connection
is completely stuck after a burst of drops. The sender's snd_nxt
is at sequence number N [1], but the receiver claims to have
received (rcv_nxt) up to N + 3 * MSS [2]. Last piece of the puzzle
is that senders rtx queue is not empty (let's say the block in
the rtx queue is at sequence number N - 4 * MSS [3]).

In this state, sender sends a retransmission from the rtx queue
with a single segment, and sequence numbers N-4*MSS:N-3*MSS [3].

    [72 lines not shown]
DeltaFile
+18-5net/core/dev.c
+18-51 files

Linux/linux f0a2f2aDocumentation/admin-guide/sysctl net.rst, include/net af_vsock.h

Merge branch 'vsock-add-write-once-semantics-to-child_ns_mode'

Bobby Eshleman says:

====================
vsock: add write-once semantics to child_ns_mode

Two administrator processes may race when setting child_ns_mode: one
sets it to "local" and creates a namespace, but another changes it to
"global" in between. The first process ends up with a namespace in the
wrong mode. Make child_ns_mode write-once so that a namespace manager
can set it once, check the value, and be guaranteed it won't change
before creating its namespaces. Writing a different value after the
first write returns -EBUSY.

One patch for the implementation, one for docs, and one for tests.

v2: https://lore.kernel.org/r/20260218-vsock-ns-write-once-v2-0-19e4c50d509a@meta.com
v1: https://lore.kernel.org/r/20260217-vsock-ns-write-once-v1-1-a1fb30f289a9@meta.com

    [4 lines not shown]
DeltaFile
+20-19tools/testing/selftests/vsock/vmtest.sh
+10-5net/vmw_vsock/af_vsock.c
+11-2include/net/af_vsock.h
+3-0include/net/netns/vsock.h
+3-0Documentation/admin-guide/sysctl/net.rst
+47-265 files

Linux/linux b6302e0Documentation/admin-guide/sysctl net.rst

vsock: document write-once behavior of the child_ns_mode sysctl

Update the vsock child_ns_mode documentation to include the new
write-once semantics of setting child_ns_mode. The semantics are
implemented in a preceding patch in this series.

Signed-off-by: Bobby Eshleman <bobbyeshleman at meta.com>
Reviewed-by: Stefano Garzarella <sgarzare at redhat.com>
Link: https://patch.msgid.link/20260223-vsock-ns-write-once-v3-3-c0cde6959923@meta.com
Signed-off-by: Paolo Abeni <pabeni at redhat.com>
DeltaFile
+3-0Documentation/admin-guide/sysctl/net.rst
+3-01 files

Linux/linux a382a34tools/testing/selftests/vsock vmtest.sh

selftests/vsock: change tests to respect write-once child ns mode

The child_ns_mode sysctl parameter becomes write-once in a future patch
in this series, which breaks existing tests. This patch updates the
tests to respect this new policy. No additional tests are added.

Add "global-parent" and "local-parent" namespaces as intermediaries to
spawn namespaces in the given modes. This avoids the need to change
"child_ns_mode" in the init_ns. nsenter must be used because ip netns
unshares the mount namespace so nested "ip netns add" breaks exec calls
from the init ns. Adds nsenter to the deps check.

Reviewed-by: Stefano Garzarella <sgarzare at redhat.com>
Signed-off-by: Bobby Eshleman <bobbyeshleman at meta.com>
Link: https://patch.msgid.link/20260223-vsock-ns-write-once-v3-1-c0cde6959923@meta.com
Signed-off-by: Paolo Abeni <pabeni at redhat.com>
DeltaFile
+20-19tools/testing/selftests/vsock/vmtest.sh
+20-191 files

Linux/linux 102eab9include/net af_vsock.h, include/net/netns vsock.h

vsock: lock down child_ns_mode as write-once

Two administrator processes may race when setting child_ns_mode as one
process sets child_ns_mode to "local" and then creates a namespace, but
another process changes child_ns_mode to "global" between the write and
the namespace creation. The first process ends up with a namespace in
"global" mode instead of "local". While this can be detected after the
fact by reading ns_mode and retrying, it is fragile and error-prone.

Make child_ns_mode write-once so that a namespace manager can set it
once and be sure it won't change. Writing a different value after the
first write returns -EBUSY. This applies to all namespaces, including
init_net, where an init process can write "local" to lock all future
namespaces into local mode.

Fixes: eafb64f40ca4 ("vsock: add netns to vsock core")
Suggested-by: Daan De Meyer <daan.j.demeyer at gmail.com>
Suggested-by: Stefano Garzarella <sgarzare at redhat.com>
Co-developed-by: Stefano Garzarella <sgarzare at redhat.com>

    [5 lines not shown]
DeltaFile
+10-5net/vmw_vsock/af_vsock.c
+11-2include/net/af_vsock.h
+3-0include/net/netns/vsock.h
+24-73 files

Linux/linux 7c2889adrivers/infiniband/core uverbs_std_types_dmabuf.c

RDMA/uverbs: Import DMA-BUF module in uverbs_std_types_dmabuf file

Fix the following compilation error:

ERROR: modpost: module ib_uverbs uses symbol dma_buf_move_notify
        from namespace DMA_BUF, but does not import it.

Fixes: 0ac6f4056c4a ("RDMA/uverbs: Add DMABUF object type and operations")
Link: https://patch.msgid.link/20260225-fix-uverbs-compilation-v1-1-acf7b3d0f9fa@nvidia.com
Signed-off-by: Leon Romanovsky <leonro at nvidia.com>
DeltaFile
+2-0drivers/infiniband/core/uverbs_std_types_dmabuf.c
+2-01 files

Linux/linux 97f87e5drivers/net/ethernet/mellanox/mlx5/core sriov.c, drivers/net/ethernet/mellanox/mlx5/core/en_accel ipsec.c

Merge branch 'mlx5-misc-fixes-2026-02-24'

Tariq Toukan says:

====================
mlx5 misc fixes 2026-02-24

This patchset provides misc bug fixes from the team to the mlx5
core and Eth drivers.
====================

Link: https://patch.msgid.link/20260224114652.1787431-1-tariqt@nvidia.com
Signed-off-by: Jakub Kicinski <kuba at kernel.org>
DeltaFile
+4-4drivers/net/ethernet/mellanox/mlx5/core/lag/mpesw.c
+6-2drivers/net/ethernet/mellanox/mlx5/core/lag/lag.c
+5-0drivers/net/ethernet/mellanox/mlx5/core/lag/mpesw.h
+2-2drivers/net/ethernet/mellanox/mlx5/core/steering/sws/dr_dbg.c
+1-2drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c
+2-0drivers/net/ethernet/mellanox/mlx5/core/sriov.c
+20-101 files not shown
+22-107 files

Linux/linux bd7b9f8drivers/net/ethernet/mellanox/mlx5/core/lag lag.c mpesw.c

net/mlx5: LAG, disable MPESW in lag_disable_change()

mlx5_lag_disable_change() unconditionally called mlx5_disable_lag() when
LAG was active, which is incorrect for MLX5_LAG_MODE_MPESW.
Hnece, call mlx5_disable_mpesw() when running in MPESW mode.

Fixes: a32327a3a02c ("net/mlx5: Lag, Control MultiPort E-Switch single FDB mode")
Signed-off-by: Shay Drory <shayd at nvidia.com>
Reviewed-by: Mark Bloch <mbloch at nvidia.com>
Signed-off-by: Tariq Toukan <tariqt at nvidia.com>
Reviewed-by: Simon Horman <horms at kernel.org>
Link: https://patch.msgid.link/20260224114652.1787431-3-tariqt@nvidia.com
Signed-off-by: Jakub Kicinski <kuba at kernel.org>
DeltaFile
+6-2drivers/net/ethernet/mellanox/mlx5/core/lag/lag.c
+4-4drivers/net/ethernet/mellanox/mlx5/core/lag/mpesw.c
+5-0drivers/net/ethernet/mellanox/mlx5/core/lag/mpesw.h
+15-63 files

Linux/linux d7073e8drivers/net/ethernet/mellanox/mlx5/core eswitch_offloads.c

net/mlx5: E-switch, Clear legacy flag when moving to switchdev

The cited commit introduced MLX5_PRIV_FLAGS_SWITCH_LEGACY to identify
when a transition to legacy mode is requested via devlink.  However, the
logic failed to clear this flag if the mode was subsequently changed
back to MLX5_ESWITCH_OFFLOADS (switchdev).  Consequently, if a user
toggled from legacy to switchdev, the flag remained set, leaving the
driver with wrong state indicating

Fix this by explicitly clearing the MLX5_PRIV_FLAGS_SWITCH_LEGACY bit
when the requested mode is MLX5_ESWITCH_OFFLOADS.

Fixes: 2a4f56fbcc47 ("net/mlx5e: Keep netdev when leave switchdev for devlink set legacy only")
Signed-off-by: Shay Drory <shayd at nvidia.com>
Reviewed-by: Mark Bloch <mbloch at nvidia.com>
Signed-off-by: Tariq Toukan <tariqt at nvidia.com>
Reviewed-by: Simon Horman <horms at kernel.org>
Link: https://patch.msgid.link/20260224114652.1787431-4-tariqt@nvidia.com
Signed-off-by: Jakub Kicinski <kuba at kernel.org>
DeltaFile
+2-0drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c
+2-01 files

Linux/linux 6025304drivers/net/ethernet/mellanox/mlx5/core sriov.c

net/mlx5: Fix missing devlink lock in SRIOV enable error path

The cited commit miss to add locking in the error path of
mlx5_sriov_enable(). When pci_enable_sriov() fails,
mlx5_device_disable_sriov() is called to clean up. This cleanup function
now expects to be called with the devlink instance lock held.

Add the missing devl_lock(devlink) and devl_unlock(devlink)

Fixes: 84a433a40d0e ("net/mlx5: Lock mlx5 devlink reload callbacks")
Signed-off-by: Shay Drory <shayd at nvidia.com>
Reviewed-by: Mark Bloch <mbloch at nvidia.com>
Signed-off-by: Tariq Toukan <tariqt at nvidia.com>
Reviewed-by: Simon Horman <horms at kernel.org>
Link: https://patch.msgid.link/20260224114652.1787431-5-tariqt@nvidia.com
Signed-off-by: Jakub Kicinski <kuba at kernel.org>
DeltaFile
+2-0drivers/net/ethernet/mellanox/mlx5/core/sriov.c
+2-01 files

Linux/linux 8593806drivers/net/ethernet/mellanox/mlx5/core/en_accel ipsec.c

net/mlx5e: Fix "scheduling while atomic" in IPsec MAC address query

Fix a "scheduling while atomic" bug in mlx5e_ipsec_init_macs() by
replacing mlx5_query_mac_address() with ether_addr_copy() to get the
local MAC address directly from netdev->dev_addr.

The issue occurs because mlx5_query_mac_address() queries the hardware
which involves mlx5_cmd_exec() that can sleep, but it is called from
the mlx5e_ipsec_handle_event workqueue which runs in atomic context.

The MAC address is already available in netdev->dev_addr, so no need
to query hardware. This avoids the sleeping call and resolves the bug.

Call trace:
  BUG: scheduling while atomic: kworker/u112:2/69344/0x00000200
  __schedule+0x7ab/0xa20
  schedule+0x1c/0xb0
  schedule_timeout+0x6e/0xf0
  __wait_for_common+0x91/0x1b0

    [17 lines not shown]
DeltaFile
+1-2drivers/net/ethernet/mellanox/mlx5/core/en_accel/ipsec.c
+1-21 files

Linux/linux 2700b7edrivers/net/ethernet/mellanox/mlx5/core/steering/sws dr_dbg.c

net/mlx5: DR, Fix circular locking dependency in dump

Fix a circular locking dependency between dbg_mutex and the domain
rx/tx mutexes that could lead to a deadlock.

The dump path in dr_dump_domain_all() was acquiring locks in the order:
  dbg_mutex -> rx.mutex -> tx.mutex

While the table/matcher creation paths acquire locks in the order:
  rx.mutex -> tx.mutex -> dbg_mutex

This inverted lock ordering creates a circular dependency. Fix this by
changing dr_dump_domain_all() to acquire the domain lock before
dbg_mutex, matching the order used in mlx5dr_table_create() and
mlx5dr_matcher_create().

Lockdep splat:
 ======================================================
 WARNING: possible circular locking dependency detected

    [94 lines not shown]
DeltaFile
+2-2drivers/net/ethernet/mellanox/mlx5/core/steering/sws/dr_dbg.c
+2-21 files

Linux/linux 6668c6fdrivers/net/wireless/broadcom/brcm80211/brcmfmac bcmsdh.c sdio.c, drivers/net/wireless/marvell/libertas main.c

Merge tag 'wireless-2026-02-25' of https://git.kernel.org/pub/scm/linux/kernel/git/wireless/wireless

Johannes Berg says:

====================
A good number of fixes:
 - cfg80211:
   - cancel rfkill work appropriately
   - fix radiotap parsing to correctly reject field 18
   - fix wext (yes...) off-by-one for IGTK key ID
 - mac80211:
   - fix for mesh NULL pointer dereference
   - fix for stack out-of-bounds (2 bytes) write on
     specific multi-link action frames
   - set default WMM parameters for all links
 - mwifiex: check dev_alloc_name() return value correctly
 - libertas: fix potential timer use-after-free
 - brcmfmac: fix crash on probe failure


    [14 lines not shown]
DeltaFile
+3-4drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c
+4-3drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c
+2-2net/wireless/radiotap.c
+2-2drivers/net/wireless/marvell/libertas/main.c
+3-0net/mac80211/mlme.c
+3-0net/mac80211/mesh.c
+17-115 files not shown
+23-1411 files

Linux/linux 77da712drivers/net/team team_core.c, tools/testing/selftests/drivers/net/team refleak.sh Makefile

Merge branch 'team-fix-reference-count-leak-when-changing-port-netns'

Ido Schimmel says:

====================
team: Fix reference count leak when changing port netns

Patch #1 fixes a reference count leak that was reported by syzkaller.
The leak happens when a net device that is member in a team is changing
netns. The fix is to align the team driver with the bond driver and have
it suppress NETDEV_CHANGEMTU events for a net device that is being
unregistered.

Without this change, the NETDEV_CHANGEMTU event causes inetdev_event()
to recreate an inet device for this net device in its original netns,
after it was previously destroyed upon NETDEV_UNREGISTER. Later on, when
inetdev_event() receives a NETDEV_REGISTER event for this net device in
the new nents, it simply leaks the reference:


    [19 lines not shown]
DeltaFile
+21-5drivers/net/team/team_core.c
+17-0tools/testing/selftests/drivers/net/team/refleak.sh
+1-0tools/testing/selftests/drivers/net/team/Makefile
+39-53 files

Linux/linux bb4c698drivers/net/team team_core.c

team: avoid NETDEV_CHANGEMTU event when unregistering slave

syzbot is reporting

  unregister_netdevice: waiting for netdevsim0 to become free. Usage count = 3
  ref_tracker: netdev at ffff88807dcf8618 has 1/2 users at
       __netdev_tracker_alloc include/linux/netdevice.h:4400 [inline]
       netdev_hold include/linux/netdevice.h:4429 [inline]
       inetdev_init+0x201/0x4e0 net/ipv4/devinet.c:286
       inetdev_event+0x251/0x1610 net/ipv4/devinet.c:1600
       notifier_call_chain+0x19d/0x3a0 kernel/notifier.c:85
       call_netdevice_notifiers_mtu net/core/dev.c:2318 [inline]
       netif_set_mtu_ext+0x5aa/0x800 net/core/dev.c:9886
       netif_set_mtu+0xd7/0x1b0 net/core/dev.c:9907
       dev_set_mtu+0x126/0x260 net/core/dev_api.c:248
       team_port_del+0xb07/0xcb0 drivers/net/team/team_core.c:1333
       team_del_slave drivers/net/team/team_core.c:1936 [inline]
       team_device_event+0x207/0x5b0 drivers/net/team/team_core.c:2929
       notifier_call_chain+0x19d/0x3a0 kernel/notifier.c:85

    [39 lines not shown]
DeltaFile
+21-5drivers/net/team/team_core.c
+21-51 files

Linux/linux 58f8ef6tools/testing/selftests/drivers/net/team refleak.sh Makefile

selftests: team: Add a reference count leak test

Add a test for the issue that was fixed in "team: avoid NETDEV_CHANGEMTU
event when unregistering slave".

The test hangs due to a reference count leak without the fix:

 # make -C tools/testing/selftests TARGETS="drivers/net/team" TEST_PROGS=refleak.sh TEST_GEN_PROGS="" run_tests
 [...]
 TAP version 13
 1..1
 # timeout set to 45
 # selftests: drivers/net/team: refleak.sh
 [   50.681299][  T496] unregister_netdevice: waiting for dummy1 to become free. Usage count = 3
 [   71.185325][  T496] unregister_netdevice: waiting for dummy1 to become free. Usage count = 3

And passes with the fix:

 # make -C tools/testing/selftests TARGETS="drivers/net/team" TEST_PROGS=refleak.sh TEST_GEN_PROGS="" run_tests

    [12 lines not shown]
DeltaFile
+17-0tools/testing/selftests/drivers/net/team/refleak.sh
+1-0tools/testing/selftests/drivers/net/team/Makefile
+18-02 files