Skip to content
  1. May 18, 2025
  2. May 17, 2025
  3. May 16, 2025
    • Linus Torvalds's avatar
      Merge tag 'drm-fixes-2025-05-17' of https://gitlab.freedesktop.org/drm/kernel · 12b6c62c
      Linus Torvalds authored
      Pull drm fixes from Dave Airlie:
       "Weekly drm fixes, I'll be honest and say I think this is larger than
        I'd prefer at this point, the main blow out point is that xe has two
        larger fixes.
      
        One is a fix for active context utilisation reporting, it's for a
        reported regression and will end up in stable anyways, so I don't see
        any point in holding it up.
      
        The second is a fix for mixed cpu/gpu atomics, which are currently
        broken, but are also not something your average desktop/laptop user is
        going to hit in normal operation, and having them fixed now is better
        than threading them through stable later.
      
        Other than those, it's mostly the usual, a bunch of amdgpu randoms and
        a few other minor fixes.
      
        dma-buf:
         - Avoid memory reordering in fence handling
      
        meson:
         - Avoid integer overflow in mode-clock calculations
      
        panel-mipi-dbi:
         - Fix output with drm_client_setup_with_fourcc()
      
        amdgpu:
         - Fix CSA unmap
         - Fix MALL size reporting on GFX11.5
         - AUX fix
         - DCN 3.5 fix
         - VRR fix
         - DP MST fix
         - DML 2.1 fixes
         - Silence DP AUX spam
         - DCN 4.0.1 cursor fix
         - VCN 4.0.5 fix
      
        ivpu:
         - Fix buffer size in debugfs code
      
        gpuvm:
         - Add timeslicing and allocation restriction for SVM
      
        xe:
         - Fix shrinker debugfs name
         - Add HW workaround to Xe2
         - Fix SVM when mixing GPU and CPU atomics
         - Fix per client engine utilization due to active contexts not saving
           timestamp with lite restore enabled"
      
      * tag 'drm-fixes-2025-05-17' of https://gitlab.freedesktop.org/drm/kernel: (24 commits)
        drm/xe: Add WA BB to capture active context utilization
        drm/xe: Save the gt pointer in lrc and drop the tile
        drm/xe: Save CTX_TIMESTAMP mmio value instead of LRC value
        drm/xe: Timeslice GPU on atomic SVM fault
        drm/gpusvm: Add timeslicing support to GPU SVM
        drm/xe: Strict migration policy for atomic SVM faults
        drm/gpusvm: Introduce devmem_only flag for allocation
        drm/xe/xe2hpg: Add Wa_22021007897
        drm/amdgpu: read back register after written for VCN v4.0.5
        Revert "drm/amd/display: Hardware cursor changes color when switched to software cursor"
        dma-buf: insert memory barrier before updating num_fences
        drm/xe: Fix the gem shrinker name
        drm/amd/display: Avoid flooding unnecessary info messages
        drm/amd/display: Fix null check of pipe_ctx->plane_state for update_dchubp_dpp
        drm/amd/display: check stream id dml21 wrapper to get plane_id
        drm/amd/display: fix link_set_dpms_off multi-display MST corner case
        drm/amd/display: Defer BW-optimization-blocked DRR adjustments
        Revert: "drm/amd/display: Enable urgent latency adjustment on DCN35"
        drm/amd/display: Correct the reply value when AUX write incomplete
        drm/amdgpu: fix incorrect MALL size for GFX1151
        ...
      12b6c62c
    • Linus Torvalds's avatar
      Merge tag 'nfs-for-6.15-2' of git://git.linux-nfs.org/projects/trondmy/linux-nfs · 450d2f6e
      Linus Torvalds authored
      Pull NFS client bugfixes from Trond Myklebust:
      
       - NFS: Fix a couple of missed handlers for the ENETDOWN and ENETUNREACH
         transport errors
      
       - NFS: Handle Oopsable failure of nfs_get_lock_context in the unlock
         path
      
       - NFSv4: Fix a race in nfs_local_open_fh()
      
       - NFSv4/pNFS: Fix a couple of layout segment leaks in layoutreturn
      
       - NFSv4/pNFS Avoid sharing pNFS DS connections between net namespaces
         since IP addresses are not guaranteed to refer to the same nodes
      
       - NFS: Don't flush file data while holding multiple directory locks in
         nfs_rename()
      
      * tag 'nfs-for-6.15-2' of git://git.linux-nfs.org/projects/trondmy/linux-nfs:
        NFS: Avoid flushing data while holding directory locks in nfs_rename()
        NFS/pnfs: Fix the error path in pnfs_layoutreturn_retry_later_locked()
        NFSv4/pnfs: Reset the layout state after a layoutreturn
        NFS/localio: Fix a race in nfs_local_open_fh()
        nfs: nfs3acl: drop useless assignment in nfs3_get_acl()
        nfs: direct: drop useless initializer in nfs_direct_write_completion()
        nfs: move the nfs4_data_server_cache into struct nfs_net
        nfs: don't share pNFS DS connections between net namespaces
        nfs: handle failure of nfs_get_lock_context in unlock path
        pNFS/flexfiles: Record the RPC errors in the I/O tracepoints
        NFSv4/pnfs: Layoutreturn on close must handle fatal networking errors
        NFSv4: Handle fatal ENETDOWN and ENETUNREACH errors
      450d2f6e
    • Trond Myklebust's avatar
      NFS: Avoid flushing data while holding directory locks in nfs_rename() · dcd21b60
      Trond Myklebust authored
      
      
      The Linux client assumes that all filehandles are non-volatile for
      renames within the same directory (otherwise sillyrename cannot work).
      However, the existence of the Linux 'subtree_check' export option has
      meant that nfs_rename() has always assumed it needs to flush writes
      before attempting to rename.
      
      Since NFSv4 does allow the client to query whether or not the server
      exhibits this behaviour, and since knfsd does actually set the
      appropriate flag when 'subtree_check' is enabled on an export, it
      should be OK to optimise away the write flushing behaviour in the cases
      where it is clearly not needed.
      
      Signed-off-by: default avatarTrond Myklebust <trond.myklebust@hammerspace.com>
      Reviewed-by: default avatarJeff Layton <jlayton@kernel.org>
      dcd21b60
    • Trond Myklebust's avatar
      NFS/pnfs: Fix the error path in pnfs_layoutreturn_retry_later_locked() · 28511504
      Trond Myklebust authored
      
      
      If there isn't a valid layout, or the layout stateid has changed, the
      cleanup after a layout return should clear out the old data.
      
      Signed-off-by: default avatarTrond Myklebust <trond.myklebust@hammerspace.com>
      28511504
    • Trond Myklebust's avatar
      NFSv4/pnfs: Reset the layout state after a layoutreturn · 6d6d7f91
      Trond Myklebust authored
      
      
      If there are still layout segments in the layout plh_return_lsegs list
      after a layout return, we should be resetting the state to ensure they
      eventually get returned as well.
      
      Fixes: 68f74479 ("pNFS: Do not free layout segments that are marked for return")
      Signed-off-by: default avatarTrond Myklebust <trond.myklebust@hammerspace.com>
      6d6d7f91
    • Linus Torvalds's avatar
      Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · 83a89654
      Linus Torvalds authored
      Pull SCSI fix from James Bottomley:
       "Fix to zone block devices to make the maximum segment count match what
        the block layer is capable of"
      
      * tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
        scsi: sd_zbc: block: Respect bio vector limits for REPORT ZONES buffer
      83a89654
    • Linus Torvalds's avatar
      Merge tag 'block-6.15-20250515' of git://git.kernel.dk/linux · 6462c247
      Linus Torvalds authored
      Pull block fixes from Jens Axboe:
      
       - NVMe pull request via Christoph:
            - fixes for atomic writes (Alan Adamson)
            - fixes for polled CQs in nvmet-epf (Damien Le Moal)
            - fix for polled CQs in nvme-pci (Keith Busch)
            - fix compile on odd configs that need to be forced to inline
              (Kees Cook)
            - one more quirk (Ilya Guterman)
      
       - Fix for missing allocation of an integrity buffer for some cases
      
       - Fix for a regression with ublk command cancelation
      
      * tag 'block-6.15-20250515' of git://git.kernel.dk/linux:
        ublk: fix dead loop when canceling io command
        nvme-pci: add NVME_QUIRK_NO_DEEPEST_PS quirk for SOLIDIGM P44 Pro
        nvme: all namespaces in a subsystem must adhere to a common atomic write size
        nvme: multipath: enable BLK_FEAT_ATOMIC_WRITES for multipathing
        nvmet: pci-epf: remove NVMET_PCI_EPF_Q_IS_SQ
        nvmet: pci-epf: improve debug message
        nvmet: pci-epf: cleanup nvmet_pci_epf_raise_irq()
        nvmet: pci-epf: do not fall back to using INTX if not supported
        nvmet: pci-epf: clear completion queue IRQ flag on delete
        nvme-pci: acquire cq_poll_lock in nvme_poll_irqdisable
        nvme-pci: make nvme_pci_npages_prp() __always_inline
        block: always allocate integrity buffer when required
      6462c247
    • Linus Torvalds's avatar
      Merge tag 'io_uring-6.15-20250515' of git://git.kernel.dk/linux · e2661da1
      Linus Torvalds authored
      Pull io_uring fixes from Jens Axboe:
      
       - Fix a regression with highmem and mapping of regions, where
         the coalescing code assumes any page is directly mapped
      
       - Fix an issue with HYBRID_IOPOLL and passthrough commands,
         where the timer wasn't always setup correctly
      
       - Fix an issue with fdinfo not correctly locking around reading
         the rings, which can be an issue if the ring is being resized
         at the same time
      
      * tag 'io_uring-6.15-20250515' of git://git.kernel.dk/linux:
        io_uring/fdinfo: grab ctx->uring_lock around io_uring_show_fdinfo()
        io_uring/memmap: don't use page_address() on a highmem page
        io_uring/uring_cmd: fix hybrid polling initialization issue
      e2661da1
    • Linus Torvalds's avatar
      Merge tag 'xfs-fixes-6.15-rc7' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux · 1524cb28
      Linus Torvalds authored
      Pull xfs fixes from Carlos Maiolino:
       "This includes a bug fix for a possible data corruption vector on the
        zoned allocator garbage collector"
      
      * tag 'xfs-fixes-6.15-rc7' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux:
        xfs: Fix comment on xfs_trans_ail_update_bulk()
        xfs: Fix a comment on xfs_ail_delete
        xfs: Fail remount with noattr2 on a v5 with v4 enabled
        xfs: fix zoned GC data corruption due to wrong bv_offset
        xfs: free up mp->m_free[0].count in error case
      1524cb28
    • Linus Torvalds's avatar
      Merge tag 'acpi-6.15-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 3c21441e
      Linus Torvalds authored
      Pull ACPI fix from Rafael Wysocki:
       "Fix ACPI PPTT parsing code to address a regression introduced recently
        and add more sanity checking of data supplied by the platform firmware
        to avoid using invalid data (Jeremy Linton)"
      
      * tag 'acpi-6.15-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        ACPI: PPTT: Fix processor subtable walk
      3c21441e
    • Linus Torvalds's avatar
      Merge tag 'spi-fix-v6.15-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi · bd8bb9f3
      Linus Torvalds authored
      Pull spi fixes from Mark Brown:
       "A few small driver specific fixes, the most substantial one being the
        Tegra one which fixes spurious errors with default delays for chip
        select hold times"
      
      * tag 'spi-fix-v6.15-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi:
        spi: spi-sun4i: fix early activation
        spi: tegra114: Use value to check for invalid delays
        spi: loopback-test: Do not split 1024-byte hexdumps
      bd8bb9f3
    • Linus Torvalds's avatar
      Merge tag 'regulator-fix-v6.15-rc6' of... · 8303d1ad
      Linus Torvalds authored
      Merge tag 'regulator-fix-v6.15-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator
      
      Pull regulator fix from Mark Brown:
       "This fixes an invalid memory access in the MAX20086 driver which could
        occur during error handling for failed probe due to a hidden use of
        devres in the core DT parsing code"
      
      * tag 'regulator-fix-v6.15-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator:
        regulator: max20086: fix invalid memory access
      8303d1ad
    • Linus Torvalds's avatar
      Merge tag 'gpio-fixes-for-v6.15-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux · 7dc774fd
      Linus Torvalds authored
      Pull gpio fixes from Bartosz Golaszewski:
      
       - fix an interrupt storm on system wake-up in gpio-pca953x
      
       - fix an out-of-bounds write in gpio-virtuser
      
       - update MAINTAINERS with an entry for the sloppy logic analyzer
      
      * tag 'gpio-fixes-for-v6.15-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux:
        gpio: virtuser: fix potential out-of-bound write
        gpio: pca953x: fix IRQ storm on system wake up
        MAINTAINERS: add me as maintainer for the gpio sloppy logic analyzer
      7dc774fd
    • Linus Torvalds's avatar
      Merge tag 'sound-6.15-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · 04811c3e
      Linus Torvalds authored
      Pull sound fixes from Takashi Iwai:
       "A handful small fixes. The only significant change is the fix for MIDI
        2.0 UMP handling in ALSA sequencer, but as MIDI 2.0 stuff is still new
        and rarely used, the impact should be pretty limited.
      
        Other than that, quirks for USB-audio and a few cosmetic fixes and
        changes in drivers that should be safe to apply"
      
      * tag 'sound-6.15-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
        ALSA: usb-audio: Add sample rate quirk for Microdia JP001 USB Camera
        ALSA: es1968: Add error handling for snd_pcm_hw_constraint_pow2()
        ALSA: sh: SND_AICA should depend on SH_DMA_API
        ALSA: usb-audio: Add sample rate quirk for Audioengine D1
        ALSA: ump: Fix a typo of snd_ump_stream_msg_device_info
        ALSA/hda: intel-sdw-acpi: Correct sdw_intel_acpi_scan() function parameter
        ALSA: seq: Fix delivery of UMP events to group ports
      04811c3e
    • Lukas Bulwahn's avatar
      x86/mm: Remove duplicated word in warning message · 03680913
      Lukas Bulwahn authored
      
      
      Commit bbeb69ce ("x86/mm: Remove CONFIG_HIGHMEM64G support") introduces
      a new warning message MSG_HIGHMEM_TRIMMED, which accidentally introduces a
      duplicated 'for for' in the warning message.
      
      Remove this duplicated word.
      
      This was noticed while reviewing for references to obsolete kernel build
      config options.
      
      Fixes: bbeb69ce ("x86/mm: Remove CONFIG_HIGHMEM64G support")
      Signed-off-by: default avatarLukas Bulwahn <lukas.bulwahn@redhat.com>
      Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
      Cc: Andy Lutomirski <luto@kernel.org>
      Cc: Arnd Bergmann <arnd@arndb.de>
      Cc: Dave Hansen <dave.hansen@linux.intel.com>
      Cc: H. Peter Anvin <hpa@zytor.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: kernel-janitors@vger.kernel.org
      Link: https://lore.kernel.org/r/20250516090810.556623-1-lukas.bulwahn@redhat.com
      03680913
    • Dave Airlie's avatar
      Merge tag 'drm-xe-fixes-2025-05-15-1' of... · c81dbc49
      Dave Airlie authored
      Merge tag 'drm-xe-fixes-2025-05-15-1' of https://gitlab.freedesktop.org/drm/xe/kernel
      
       into drm-fixes
      
      Core Changes:
      - Add timeslicing and allocation restriction for SVM
      
      Driver Changes:
      - Fix shrinker debugfs name
      - Add HW workaround to Xe2
      - Fix SVM when mixing GPU and CPU atomics
      - Fix per client engine utilization due to active contexts
        not saving timestamp with lite restore enabled.
      
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      
      From: Lucas De Marchi <lucas.demarchi@intel.com>
      Link: https://lore.kernel.org/r/qil4scyn6ucnt43u5ju64bi7r7n5r36k4pz5rsh2maz7isle6g@lac3jpsjrrvs
      c81dbc49
    • Dave Airlie's avatar
      Merge tag 'drm-misc-fixes-2025-05-15' of... · f7bf6bdb
      Dave Airlie authored
      Merge tag 'drm-misc-fixes-2025-05-15' of https://gitlab.freedesktop.org/drm/misc/kernel
      
       into drm-fixes
      
      Short summary of fixes pull:
      
      dma-buf:
      - Avoid memory reordering in fence handling
      
      ivpu:
      - Fix buffer size in debugfs code
      
      meson:
      - Avoid integer overflow in mode-clock calculations
      
      panel-mipi-dbi:
      - Fix output with drm_client_setup_with_fourcc()
      
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      
      From: Thomas Zimmermann <tzimmermann@suse.de>
      Link: https://lore.kernel.org/r/20250515125534.GA41174@linux.fritz.box
      f7bf6bdb
  4. May 15, 2025
    • Dave Airlie's avatar
      Merge tag 'amd-drm-fixes-6.15-2025-05-14' of... · 34f7151d
      Dave Airlie authored
      Merge tag 'amd-drm-fixes-6.15-2025-05-14' of https://gitlab.freedesktop.org/agd5f/linux
      
       into drm-fixes
      
      amd-drm-fixes-6.15-2025-05-14:
      
      amdgpu:
      - Fix CSA unmap
      - Fix MALL size reporting on GFX11.5
      - AUX fix
      - DCN 3.5 fix
      - VRR fix
      - DP MST fix
      - DML 2.1 fixes
      - Silence DP AUX spam
      - DCN 4.0.1 cursor fix
      - VCN 4.0.5 fix
      
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      
      From: Alex Deucher <alexander.deucher@amd.com>
      Link: https://lore.kernel.org/r/20250514185117.758496-1-alexander.deucher@amd.com
      34f7151d
    • Linus Torvalds's avatar
      Merge tag 'bcachefs-2025-05-15' of git://evilpiepirate.org/bcachefs · fee3e843
      Linus Torvalds authored
      Pull bcachefs fixes from Kent Overstreet:
       "The main user reported ones are:
      
         - Fix a btree iterator locking inconsistency that's been causing us
           to go emergency read-only in evacuate: "Fix broken btree_path lock
           invariants in next_node()"
      
         - Minor btree node cache reclaim tweak that should help with OOMs:
           don't set btree nodes as accessed on fill
      
         - Fix a bch2_bkey_clear_rebalance() issue that was causing rebalance
           to do needless work"
      
      * tag 'bcachefs-2025-05-15' of git://evilpiepirate.org/bcachefs:
        bcachefs: fix wrong arg to fsck_err()
        bcachefs: Fix missing commit in backpointer to missing target
        bcachefs: Fix accidental O(n^2) in fiemap
        bcachefs: Fix set_should_be_locked() call in peek_slot()
        bcachefs: Fix self deadlock
        bcachefs: Don't set btree nodes as accessed on fill
        bcachefs: Fix livelock in journal_entry_open()
        bcachefs: Fix broken btree_path lock invariants in next_node()
        bcachefs: Don't strip rebalance_opts from indirect extents
      fee3e843
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma · 4d0be1aa
      Linus Torvalds authored
      Pull rdma fixes from Jason Gunthorpe:
       "Four small fixes for crashes:
      
         - Double free in rxe
      
         - UAF in irdma from early freeing the rf
      
         - Off by one undoing the IRQ allocations during error unwind in irdma
      
         - Another race with device rename and uevent generation. uevents
           accesses the struct device name and UAF when it is changed"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma:
        RDMA/core: Fix "KASAN: slab-use-after-free Read in ib_register_device" problem
        ice, irdma: fix an off by one in error handling code
        irdma: free iwdev->rf after removing MSI-X
        RDMA/rxe: Fix slab-use-after-free Read in rxe_queue_cleanup bug
      4d0be1aa
    • Linus Torvalds's avatar
      Merge tag 'landlock-6.15-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/mic/linux · f1f2797f
      Linus Torvalds authored
      Pull landlock fixes from Mickaël Salaün:
       "This fixes a KUnit issue, simplifies code, and adds new tests"
      
      * tag 'landlock-6.15-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/mic/linux:
        landlock: Improve bit operations in audit code
        landlock: Remove KUnit test that triggers a warning
      f1f2797f
    • Linus Torvalds's avatar
      Merge tag 'hid-for-linus-2025051501' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid · fe661d01
      Linus Torvalds authored
      Pull HID fixes from Benjamin Tissoires:
      
       - fix a few potential memory leaks in the wacom driver (Qasim Ijaz)
      
       - AMD SFH fixes when there is only one SRA sensor (Mario Limonciello)
      
       - HID-BPF dispatch UAF fix that happens on removal of the Logitech DJ
         receiver (Rong Zhang)
      
       - various minor fixes and usual device ID additions
      
      * tag 'hid-for-linus-2025051501' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid:
        HID: bpf: abort dispatch if device destroyed
        HID: quirks: Add ADATA XPG alpha wireless mouse support
        HID: hid-steam: Remove the unused variable connected
        HID: amd_sfh: Avoid clearing reports for SRA sensor
        HID: amd_sfh: Fix SRA sensor when it's the only sensor
        HID: wacom: fix shift OOB in kfifo allocation for zero pktlen
        HID: uclogic: Add NULL check in uclogic_input_configured()
        HID: wacom: fix memory leak on size mismatch in wacom_wac_queue_flush()
        HID: wacom: handle kzalloc() allocation failure in wacom_wac_queue_flush()
        HID: thrustmaster: fix memory leak in thrustmaster_interrupts()
        HID: hid-appletb-kbd: Fix wrong date and kernel version in sysfs interface docs
        HID: bpf: fix BTN_STYLUS for the XP Pen ACK05 remote
      fe661d01
    • Linus Torvalds's avatar
      Merge tag 'net-6.15-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net · ef935650
      Linus Torvalds authored
      Pull networking fixes from Jakub Kicinski:
       "Including fixes from Bluetooth and wireless.
      
        A few more fixes for the locking changes trickling in. Nothing too
        alarming, I suspect those will continue for another release. Other
        than that things are slowing down nicely.
      
        Current release - fix to a fix:
      
         - Bluetooth: hci_event: use key encryption size when its known
      
         - tools: ynl-gen: allow multi-attr without nested-attributes again
      
        Current release - regressions:
      
         - locking fixes:
            - lock lower level devices when updating features
            - eth: bnxt_en: bring back rtnl_lock() in the bnxt_open() path
            - devmem: fix panic when Netlink socket closes after module unload
      
        Current release - new code bugs:
      
         - eth: txgbe: fixes for FW communication on new AML devices
      
        Previous releases - always broken:
      
         - sched: flush gso_skb list too during ->change(), avoid potential
           null-deref on reconfig
      
         - wifi: mt76: disable NAPI on driver removal
      
         - hv_netvsc: fix error 'nvsp_rndis_pkt_complete error status: 2'"
      
      * tag 'net-6.15-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (44 commits)
        net: devmem: fix kernel panic when netlink socket close after module unload
        tsnep: fix timestamping with a stacked DSA driver
        net/tls: fix kernel panic when alloc_page failed
        bnxt_en: bring back rtnl_lock() in the bnxt_open() path
        mlxsw: spectrum_router: Fix use-after-free when deleting GRE net devices
        wifi: mac80211: Set n_channels after allocating struct cfg80211_scan_request
        octeontx2-pf: Do not reallocate all ntuple filters
        wifi: mt76: mt7925: fix missing hdr_trans_tlv command for broadcast wtbl
        wifi: mt76: disable napi on driver removal
        Drivers: hv: vmbus: Remove vmbus_sendpacket_pagebuffer()
        hv_netvsc: Remove rmsg_pgcnt
        hv_netvsc: Preserve contiguous PFN grouping in the page buffer array
        hv_netvsc: Use vmbus_sendpacket_mpb_desc() to send VMBus messages
        Drivers: hv: Allow vmbus_sendpacket_mpb_desc() to create multiple ranges
        octeontx2-af: Fix CGX Receive counters
        net: ethernet: mtk_eth_soc: fix typo for declaration MT7988 ESW capability
        net: libwx: Fix FW mailbox unknown command
        net: libwx: Fix FW mailbox reply timeout
        net: txgbe: Fix to calculate EEPROM checksum for AML devices
        octeontx2-pf: macsec: Fix incorrect max transmit size in TX secy
        ...
      ef935650
    • Ming Lei's avatar
      ublk: fix dead loop when canceling io command · dd24f87f
      Ming Lei authored
      
      
      Commit:
      
      f40139fd ("ublk: fix race between io_uring_cmd_complete_in_task and
      		ublk_cancel_cmd")
      
      adds a request state check in ublk_cancel_cmd(), and if the request is
      started, skips canceling this uring_cmd.
      
      However, the current uring_cmd may be in ACTIVE state, without block
      request coming to the uring command. Meantime, if the cached request in
      tag_set.tags[tag] has been delivered to ublk server and reycycled, then
      this uring_cmd can't be canceled.
      
      ublk requests are aborted in ublk char device release handler, which
      depends on canceling all ACTIVE uring_cmd. So it causes a dead loop.
      
      Fix this issue by not taking a stale request into account when canceling
      uring_cmd in ublk_cancel_cmd().
      
      Reported-by: default avatarShinichiro Kawasaki <shinichiro.kawasaki@wdc.com>
      Closes: https://lore.kernel.org/linux-block/mruqwpf4tqenkbtgezv5oxwq7ngyq24jzeyqy4ixzvivatbbxv@4oh2wzz4e6qn/
      
      
      Fixes: f40139fd ("ublk: fix race between io_uring_cmd_complete_in_task and ublk_cancel_cmd")
      Signed-off-by: default avatarMing Lei <ming.lei@redhat.com>
      Link: https://lore.kernel.org/r/20250515162601.77346-1-ming.lei@redhat.com
      
      
      [axboe: rewording of commit message]
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      dd24f87f
    • Adrian Hunter's avatar
      perf/x86/intel: Fix segfault with PEBS-via-PT with sample_freq · 99bcd91f
      Adrian Hunter authored
      
      
      Currently, using PEBS-via-PT with a sample frequency instead of a sample
      period, causes a segfault.  For example:
      
          BUG: kernel NULL pointer dereference, address: 0000000000000195
          <NMI>
          ? __die_body.cold+0x19/0x27
          ? page_fault_oops+0xca/0x290
          ? exc_page_fault+0x7e/0x1b0
          ? asm_exc_page_fault+0x26/0x30
          ? intel_pmu_pebs_event_update_no_drain+0x40/0x60
          ? intel_pmu_pebs_event_update_no_drain+0x32/0x60
          intel_pmu_drain_pebs_icl+0x333/0x350
          handle_pmi_common+0x272/0x3c0
          intel_pmu_handle_irq+0x10a/0x2e0
          perf_event_nmi_handler+0x2a/0x50
      
      That happens because intel_pmu_pebs_event_update_no_drain() assumes all the
      pebs_enabled bits represent counter indexes, which is not always the case.
      In this particular case, bits 60 and 61 are set for PEBS-via-PT purposes.
      
      The behaviour of PEBS-via-PT with sample frequency is questionable because
      although a PMI is generated (PEBS_PMI_AFTER_EACH_RECORD), the period is not
      adjusted anyway.
      
      Putting that aside, fix intel_pmu_pebs_event_update_no_drain() by passing
      the mask of counter bits instead of 'size'.  Note, prior to the Fixes
      commit, 'size' would be limited to the maximum counter index, so the issue
      was not hit.
      
      Fixes: 722e42e4 ("perf/x86: Support counter mask")
      Signed-off-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
      Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
      Reviewed-by: default avatarKan Liang <kan.liang@linux.intel.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Arnaldo Carvalho de Melo <acme@kernel.org>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Ian Rogers <irogers@google.com>
      Cc: linux-perf-users@vger.kernel.org
      Link: https://lore.kernel.org/r/20250508134452.73960-1-adrian.hunter@intel.com
      99bcd91f
    • Taehee Yoo's avatar
      net: devmem: fix kernel panic when netlink socket close after module unload · 0afc44d8
      Taehee Yoo authored
      
      
      Kernel panic occurs when a devmem TCP socket is closed after NIC module
      is unloaded.
      
      This is Devmem TCP unregistration scenarios. number is an order.
      (a)netlink socket close    (b)pp destroy    (c)uninstall    result
      1                          2                3               OK
      1                          3                2               (d)Impossible
      2                          1                3               OK
      3                          1                2               (e)Kernel panic
      2                          3                1               (d)Impossible
      3                          2                1               (d)Impossible
      
      (a) netdev_nl_sock_priv_destroy() is called when devmem TCP socket is
          closed.
      (b) page_pool_destroy() is called when the interface is down.
      (c) mp_ops->uninstall() is called when an interface is unregistered.
      (d) There is no scenario in mp_ops->uninstall() is called before
          page_pool_destroy().
          Because unregister_netdevice_many_notify() closes interfaces first
          and then calls mp_ops->uninstall().
      (e) netdev_nl_sock_priv_destroy() accesses struct net_device to acquire
          netdev_lock().
          But if the interface module has already been removed, net_device
          pointer is invalid, so it causes kernel panic.
      
      In summary, there are only 3 possible scenarios.
       A. sk close -> pp destroy -> uninstall.
       B. pp destroy -> sk close -> uninstall.
       C. pp destroy -> uninstall -> sk close.
      
      Case C is a kernel panic scenario.
      
      In order to fix this problem, It makes mp_dmabuf_devmem_uninstall() set
      binding->dev to NULL.
      It indicates an bound net_device was unregistered.
      
      It makes netdev_nl_sock_priv_destroy() do not acquire netdev_lock()
      if binding->dev is NULL.
      
      A new binding->lock is added to protect a dev of a binding.
      So, lock ordering is like below.
       priv->lock
       netdev_lock(dev)
       binding->lock
      
      Tests:
      Scenario A:
          ./ncdevmem -s 192.168.1.4 -c 192.168.1.2 -f $interface -l -p 8000 \
              -v 7 -t 1 -q 1 &
          pid=$!
          sleep 10
          kill $pid
          ip link set $interface down
          modprobe -rv $module
      
      Scenario B:
          ./ncdevmem -s 192.168.1.4 -c 192.168.1.2 -f $interface -l -p 8000 \
              -v 7 -t 1 -q 1 &
          pid=$!
          sleep 10
          ip link set $interface down
          kill $pid
          modprobe -rv $module
      
      Scenario C:
          ./ncdevmem -s 192.168.1.4 -c 192.168.1.2 -f $interface -l -p 8000 \
              -v 7 -t 1 -q 1 &
          pid=$!
          sleep 10
          modprobe -rv $module
          sleep 5
          kill $pid
      
      Splat looks like:
      Oops: general protection fault, probably for non-canonical address 0xdffffc001fffa9f7: 0000 [#1] SMP DEBUG_PAGEALLOC KASAN NOPTI
      KASAN: probably user-memory-access in range [0x00000000fffd4fb8-0x00000000fffd4fbf]
      CPU: 0 UID: 0 PID: 2041 Comm: ncdevmem Tainted: G    B   W           6.15.0-rc1+ #2 PREEMPT(undef)  0947ec89efa0fd68838b78e36aa1617e97ff5d7f
      Tainted: [B]=BAD_PAGE, [W]=WARN
      RIP: 0010:__mutex_lock (./include/linux/sched.h:2244 kernel/locking/mutex.c:400 kernel/locking/mutex.c:443 kernel/locking/mutex.c:605 kernel/locking/mutex.c:746)
      Code: ea 03 80 3c 02 00 0f 85 4f 13 00 00 49 8b 1e 48 83 e3 f8 74 6a 48 b8 00 00 00 00 00 fc ff df 48 8d 7b 34 48 89 fa 48 c1 ea 03 <0f> b6 f
      RSP: 0018:ffff88826f7ef730 EFLAGS: 00010203
      RAX: dffffc0000000000 RBX: 00000000fffd4f88 RCX: ffffffffaa9bc811
      RDX: 000000001fffa9f7 RSI: 0000000000000008 RDI: 00000000fffd4fbc
      RBP: ffff88826f7ef8b0 R08: 0000000000000000 R09: ffffed103e6aa1a4
      R10: 0000000000000007 R11: ffff88826f7ef442 R12: fffffbfff669f65e
      R13: ffff88812a830040 R14: ffff8881f3550d20 R15: 00000000fffd4f88
      FS:  0000000000000000(0000) GS:ffff888866c05000(0000) knlGS:0000000000000000
      CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
      CR2: 0000563bed0cb288 CR3: 00000001a7c98000 CR4: 00000000007506f0
      PKRU: 55555554
      Call Trace:
      <TASK>
       ...
       netdev_nl_sock_priv_destroy (net/core/netdev-genl.c:953 (discriminator 3))
       genl_release (net/netlink/genetlink.c:653 net/netlink/genetlink.c:694 net/netlink/genetlink.c:705)
       ...
       netlink_release (net/netlink/af_netlink.c:737)
       ...
       __sock_release (net/socket.c:647)
       sock_close (net/socket.c:1393)
      
      Fixes: 1d22d306 ("net: drop rtnl_lock for queue_mgmt operations")
      Signed-off-by: default avatarTaehee Yoo <ap420073@gmail.com>
      Acked-by: default avatarStanislav Fomichev <sdf@fomichev.me>
      Link: https://patch.msgid.link/20250514154028.1062909-1-ap420073@gmail.com
      
      
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      0afc44d8
    • Gerhard Engleder's avatar
      tsnep: fix timestamping with a stacked DSA driver · b3ca9eef
      Gerhard Engleder authored
      
      
      This driver is susceptible to a form of the bug explained in commit
      c26a2c2d ("gianfar: Fix TX timestamping with a stacked DSA driver")
      and in Documentation/networking/timestamping.rst section "Other caveats
      for MAC drivers", specifically it timestamps any skb which has
      SKBTX_HW_TSTAMP, and does not consider if timestamping has been enabled
      in adapter->hwtstamp_config.tx_type.
      
      Evaluate the proper TX timestamping condition only once on the TX
      path (in tsnep_xmit_frame_ring()) and store the result in an additional
      TX entry flag. Evaluate the new TX entry flag in the TX confirmation path
      (in tsnep_tx_poll()).
      
      This way SKBTX_IN_PROGRESS is set by the driver as required, but never
      evaluated. SKBTX_IN_PROGRESS shall not be evaluated as it can be set
      by a stacked DSA driver and evaluating it would lead to unwanted
      timestamps.
      
      Fixes: 403f69bb ("tsnep: Add TSN endpoint Ethernet MAC driver")
      Suggested-by: default avatarVladimir Oltean <vladimir.oltean@nxp.com>
      Signed-off-by: default avatarGerhard Engleder <gerhard@engleder-embedded.com>
      Reviewed-by: default avatarVladimir Oltean <vladimir.oltean@nxp.com>
      Link: https://patch.msgid.link/20250514195657.25874-1-gerhard@engleder-embedded.com
      
      
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      b3ca9eef
    • Pengtao He's avatar
      net/tls: fix kernel panic when alloc_page failed · 491deb9b
      Pengtao He authored
      
      
      We cannot set frag_list to NULL pointer when alloc_page failed.
      It will be used in tls_strp_check_queue_ok when the next time
      tls_strp_read_sock is called.
      
      This is because we don't reset full_len in tls_strp_flush_anchor_copy()
      so the recv path will try to continue handling the partial record
      on the next call but we dettached the rcvq from the frag list.
      Alternative fix would be to reset full_len.
      
      Unable to handle kernel NULL pointer dereference
      at virtual address 0000000000000028
       Call trace:
       tls_strp_check_rcv+0x128/0x27c
       tls_strp_data_ready+0x34/0x44
       tls_data_ready+0x3c/0x1f0
       tcp_data_ready+0x9c/0xe4
       tcp_data_queue+0xf6c/0x12d0
       tcp_rcv_established+0x52c/0x798
      
      Fixes: 84c61fe1 ("tls: rx: do not use the standard strparser")
      Signed-off-by: default avatarPengtao He <hept.hept.hept@gmail.com>
      Link: https://patch.msgid.link/20250514132013.17274-1-hept.hept.hept@gmail.com
      
      
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      491deb9b
Loading