Linux/linux e774d5fDocumentation/arch/riscv zicfilp.rst, arch/riscv/include/uapi/asm ptrace.h

Merge tag 'riscv-for-linus-v7.0-rc8' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux

Pull RISC-V updates from Paul Walmsley:
 "Before v7.0 is released, fix a few issues with the CFI patchset,
  merged earlier in v7.0-rc, that primarily affect interfaces to
  non-kernel code:

   - Improve the prctl() interface for per-task indirect branch landing
     pad control to expand abbreviations and to resemble the speculation
     control prctl() interface

   - Expand the "LP" and "SS" abbreviations in the ptrace uapi header
     file to "branch landing pad" and "shadow stack", to improve
     readability

   - Fix a typo in a CFI-related macro name in the ptrace uapi header
     file

   - Ensure that the indirect branch tracking state and shadow stack

    [14 lines not shown]
DeltaFile
+36-21Documentation/arch/riscv/zicfilp.rst
+19-20arch/riscv/kernel/usercfi.c
+20-18arch/riscv/include/uapi/asm/ptrace.h
+15-22include/uapi/linux/prctl.h
+15-21tools/perf/trace/beauty/include/uapi/linux/prctl.h
+17-13kernel/sys.c
+122-1155 files not shown
+149-13911 files

Linux/linux c43adb3drivers/gpu/drm/i915/display intel_psr.c, drivers/gpu/drm/i915/gem i915_gem_execbuffer.c

Merge tag 'drm-fixes-2026-04-11' of https://gitlab.freedesktop.org/drm/kernel

Pull drm fixes from Dave Airlie:
 "Last set of fixes, a few vc4, and i915, one xe and one ethosu Kconfig
  fix.

  xe:
   - Fix HW engine idleness unit conversion

  i915:
   - Drop check for changed VM in EXECBUF
   - Fix refcount underflow race in intel_engine_park_heartbeat
   - Do not use pipe_src as borders for SU area in PSR

  vc4:
   - runtime pm reference fix
   - memory leak fixes
   - locking fix


    [13 lines not shown]
DeltaFile
+19-11drivers/gpu/drm/i915/display/intel_psr.c
+18-8drivers/gpu/drm/i915/gt/intel_engine_heartbeat.c
+11-8drivers/gpu/drm/vc4/vc4_gem.c
+3-0drivers/gpu/drm/vc4/vc4_bo.c
+1-2drivers/gpu/drm/xe/xe_hw_engine.c
+1-1drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
+53-302 files not shown
+55-308 files

Linux/linux b3be33fdrivers/gpu/drm/i915/display intel_psr.c, drivers/gpu/drm/i915/gem i915_gem_execbuffer.c

Merge tag 'drm-intel-fixes-2026-04-09' of https://gitlab.freedesktop.org/drm/i915/kernel into drm-fixes

- Drop check for changed VM in EXECBUF
- Fix refcount underflow race in intel_engine_park_heartbeat
- Do not use pipe_src as borders for SU area in PSR

Signed-off-by: Dave Airlie <airlied at redhat.com>
From: Joonas Lahtinen <joonas.lahtinen at linux.intel.com>
Link: https://patch.msgid.link/add6fPHRC7Bc8Uri@jlahtine-mobl
DeltaFile
+19-11drivers/gpu/drm/i915/display/intel_psr.c
+18-8drivers/gpu/drm/i915/gt/intel_engine_heartbeat.c
+1-1drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
+38-203 files

Linux/linux 7c6c4edfs/kernfs dir.c, fs/nfs sysfs.c

Merge tag 'vfs-7.0-rc8.fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs

Pull vfs fixes from Christian Brauner:
 "The kernfs rbtree is keyed by (hash, ns, name) where the hash
  is seeded with the raw namespace pointer via init_name_hash(ns).

  The resulting hash values are exposed to userspace through
  readdir seek positions, and the pointer-based ordering in
  kernfs_name_compare() is observable through entry order.

  Switch from raw pointers to ns_common::ns_id for both hashing
  and comparison.

  A preparatory commit first replaces all const void * namespace
  parameters with const struct ns_common * throughout kernfs, sysfs,
  and kobject so the code can access ns->ns_id. Also compare the
  ns_id when hashes match in the rbtree to handle crafted collisions.

  Also fix eventpoll RCU grace period issue and a cachefiles refcount

    [8 lines not shown]
DeltaFile
+48-20fs/kernfs/dir.c
+25-25net/core/net-sysfs.c
+24-16include/linux/kernfs.h
+12-12include/linux/sysfs.h
+10-7net/sunrpc/sysfs.c
+10-6fs/nfs/sysfs.c
+129-8626 files not shown
+216-15632 files

Linux/linux 96463e4tools/power/x86/turbostat turbostat.c

Merge tag 'turbostat-fixes-for-7.0' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux

Pull turbostat fixes from Len Brown:

 - Fix a memory allocation issue that could corrupt output values or
   SEGV

 - Fix a perf initilization issue that could exit on some HW + kernels

 - Minor fixes

* tag 'turbostat-fixes-for-7.0' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux:
  tools/power turbostat: Allow execution to continue after perf_l2_init() failure
  tools/power turbostat: Fix delimiter bug in print functions
  tools/power turbostat: Fix --show/--hide for individual cpuidle counters
  tools/power turbostat: Fix incorrect format variable
  tools/power turbostat: Consistently use print_float_value()
  tools/power/turbostat: Fix microcode patch level output for AMD/Hygon
  tools/power turbostat: Eliminate unnecessary data structure allocation

    [2 lines not shown]
DeltaFile
+54-46tools/power/x86/turbostat/turbostat.c
+54-461 files

Linux/linux 017102bdrivers/gpio gpio-tegra.c gpio-bd72720.c

Merge tag 'gpio-fixes-for-v7.0' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux

Pull gpio fixes from Bartosz Golaszewski:

 - gracefully handle missing regmap in gpio-bd72720

 - fix IRQ resource release in gpio-tegra

 - return -ENOMEM on devm_kzalloc() failure instead of -ENODEV in
   gpio-tegra

* tag 'gpio-fixes-for-v7.0' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux:
  gpio: tegra: return -ENOMEM on allocation failure in probe
  gpio: tegra: fix irq_release_resources calling enable instead of disable
  gpio: bd72720: handle missing regmap
DeltaFile
+2-2drivers/gpio/gpio-tegra.c
+2-0drivers/gpio/gpio-bd72720.c
+4-22 files

Linux/linux 77c3c61drivers/pinctrl pinctrl-mcp23s08.c, drivers/pinctrl/intel pinctrl-intel.c pinctrl-intel.h

Merge tag 'pinctrl-v7.0-4' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl

Pull pin control fixes from Linus Walleij:
 "Some late pin control fixes. I'm not happy to have bugs so late in the
  kernel cycle, but they are all driver specifics so I guess it's how it
  is.

   - Three fixes for the Intel pin control driver fixing the feature set
     for the new silicon

   - One fix for an IRQ storm in the MCP23S08 pin controller/GPIO
     expander"

* tag 'pinctrl-v7.0-4' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl:
  pinctrl: mcp23s08: Disable all pin interrupts during probe
  pinctrl: intel: Enable 3-bit PAD_OWN feature
  pinctrl: intel: Fix the revision for new features (1kOhm PD, HW debouncer)
  pinctrl: intel: Improve capability support
DeltaFile
+26-10drivers/pinctrl/intel/pinctrl-intel.c
+9-0drivers/pinctrl/pinctrl-mcp23s08.c
+1-0drivers/pinctrl/intel/pinctrl-intel.h
+36-103 files

Linux/linux ba893catools/power/x86/turbostat turbostat.c

tools/power turbostat: Allow execution to continue after perf_l2_init() failure

Currently, if perf_l2_init() fails turbostat exits after issuing the
following error (which was encountered on AlderLake):

turbostat: perf_l2_init(cpu0, 0x0, 0xff24) REFS: Invalid argument

This occurs because perf_l2_init() calls err(). However, the code has been
written in such a manner that it is able to perform cleanup and continue.
Therefore, this issue can be addressed by changing the appropriate calls
to err() to warnx().

Additionally, correct the PMU type arguments passed to the warning strings
in the ecore and lcore blocks so the logs accurately reflect the failing
counter type.

Signed-off-by: David Arcari <darcari at redhat.com>
Signed-off-by: Len Brown <len.brown at intel.com>
DeltaFile
+8-8tools/power/x86/turbostat/turbostat.c
+8-81 files

Linux/linux 57df692drivers/gpio gpio-tegra.c

gpio: tegra: return -ENOMEM on allocation failure in probe

devm_kzalloc() failure in tegra_gpio_probe() returns -ENODEV, which
indicates "no such device". The correct error code for a memory
allocation failure is -ENOMEM.

Signed-off-by: Samasth Norway Ananda <samasth.norway.ananda at oracle.com>
Link: https://patch.msgid.link/20260409185853.2163034-1-samasth.norway.ananda@oracle.com
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski at oss.qualcomm.com>
DeltaFile
+1-1drivers/gpio/gpio-tegra.c
+1-11 files

Linux/linux 93be8c7drivers/accel/ethosu Kconfig, drivers/gpu/drm/vc4 vc4_gem.c vc4_bo.c

Merge tag 'drm-misc-fixes-2026-04-09' of https://gitlab.freedesktop.org/drm/misc/kernel into drm-fixes

Several fixes for v3d about memory leak, runtime PM, and locking, and a
Kconfig improvement for ethosu.

Signed-off-by: Dave Airlie <airlied at redhat.com>

From: Maxime Ripard <mripard at redhat.com>
Link: https://patch.msgid.link/20260409-omniscient-tomato-coucal-edbadc@penduick
DeltaFile
+11-8drivers/gpu/drm/vc4/vc4_gem.c
+3-0drivers/gpu/drm/vc4/vc4_bo.c
+1-0drivers/accel/ethosu/Kconfig
+1-0drivers/gpu/drm/vc4/vc4_v3d.c
+16-84 files

Linux/linux 9a9c8cescripts Makefile.package, scripts/mod modpost.c

Merge tag 'kbuild-fixes-7.0-4' of git://git.kernel.org/pub/scm/linux/kernel/git/kbuild/linux

Pull Kbuild fixes from Nathan Chancellor:

 - Make modules-cpio-pkg respect INSTALL_MOD_PATH so that it can be
   used with distribution initramfs files that have a merged /usr,
   such as Fedora

 - Silence an instance of -Wunused-but-set-global, a strengthening
   of -Wunused-but-set-variable in tip of tree Clang, in modpost,
   as the variable for extra warnings is currently unused

* tag 'kbuild-fixes-7.0-4' of git://git.kernel.org/pub/scm/linux/kernel/git/kbuild/linux:
  modpost: Declare extra_warn with unused attribute
  kbuild: modules-cpio-pkg: Respect INSTALL_MOD_PATH
DeltaFile
+2-1scripts/Makefile.package
+1-1scripts/mod/modpost.c
+3-22 files

Linux/linux b42ed3bdrivers/firmware/efi efi-init.c

Merge tag 'efi-fixes-for-v7.0-4' of git://git.kernel.org/pub/scm/linux/kernel/git/efi/efi

Pull EFI fix from Ard Biesheuvel:
 "Fix an incorrect preprocessor conditional that may result in duplicate
  instances of sysfb_primary_display on x86"

* tag 'efi-fixes-for-v7.0-4' of git://git.kernel.org/pub/scm/linux/kernel/git/efi/efi:
  firmware: efi: Never declare sysfb_primary_display on x86
DeltaFile
+1-1drivers/firmware/efi/efi-init.c
+1-11 files

Linux/linux bb2ea74Documentation/devicetree/bindings/sound ti,tas2552.yaml, sound/soc/amd/acp acp-sdw-legacy-mach.c

Merge tag 'sound-7.0' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound

Pull sound fixes from Takashi Iwai:
 "Still a bit higher amount than wished, but nothing looks really scary,
  and all changes are about nice and smooth device-specific fixes.

   - HD-audio quirks, one revert for a regression and another oneliner

   - AMD ACP quirks

   - Fixes for SDCA interrupt handling

   - A few Intel SOF, avs and NVL fixes

   - Fixes for TAS2552 DT, NAU8325, and STM32"

* tag 'sound-7.0' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
  ASoC: amd: acp: update DMI quirk and add ACP DMIC for Lenovo platforms
  ASoC: SDCA: Unregister IRQ handlers on module remove

    [14 lines not shown]
DeltaFile
+74-8sound/soc/sdca/sdca_interrupts.c
+20-4sound/soc/amd/acp/acp-sdw-legacy-mach.c
+17-0sound/soc/sdca/sdca_class_function.c
+12-2sound/soc/sof/intel/hda-pcm.c
+10-3Documentation/devicetree/bindings/sound/ti,tas2552.yaml
+4-6sound/soc/sof/intel/hda.c
+137-237 files not shown
+165-3813 files

Linux/linux 4e1538bdrivers/mmc/host vub300.c

Merge tag 'mmc-v7.0-rc1-3' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc

Pull MMC fixes from Ulf Hansson:

 - vub300: Fix use-after-free and NULL-deref on disconnect

* tag 'mmc-v7.0-rc1-3' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc:
  mmc: vub300: fix use-after-free on disconnect
  mmc: vub300: fix NULL-deref on disconnect
DeltaFile
+12-7drivers/mmc/host/vub300.c
+12-71 files

Linux/linux d58305b. MAINTAINERS .mailmap, drivers/firmware thead,th1520-aon.c

Merge tag 'pmdomain-v7.0-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/linux-pm

Pull pmdomain fixes from Ulf Hansson:

 - imx: Prevent hang at power down for imx8mp-blk-ctrl

 - thead: Fix buffer overflow for TH1520 AON driver

 - Change Ulf Hansson's email

* tag 'pmdomain-v7.0-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/linux-pm:
  MAINTAINERS, mailmap: Change Ulf Hansson's email
  pmdomain: imx8mp-blk-ctrl: Keep the NOC_HDCP clock enabled
  firmware: thead: Fix buffer overflow and use standard endian macros
DeltaFile
+0-74include/linux/firmware/thead/thead,th1520-aon.h
+7-7MAINTAINERS
+1-7drivers/pmdomain/imx/imx8mp-blk-ctrl.c
+3-4drivers/firmware/thead,th1520-aon.c
+2-0.mailmap
+13-925 files

Linux/linux 3ffcd57kernel/dma debug.c

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

Pull dma-mapping fix from Marek Szyprowski:
 "A fix for DMA-mapping subsystem, which hides annoying, false-positive
  warnings from DMA-API debug on coherent platforms like x86_64 (Mikhail
  Gavrilov)"

* tag 'dma-mapping-7.0-2026-04-09' of git://git.kernel.org/pub/scm/linux/kernel/git/mszyprowski/linux:
  dma-debug: suppress cacheline overlap warning when arch has no DMA alignment requirement
DeltaFile
+1-0kernel/dma/debug.c
+1-01 files

Linux/linux a55f7f5net/key af_key.c, net/netfilter nfnetlink_queue.c

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

Pull networking fixes from Paolo Abeni:
 "Including fixes from netfilter, IPsec and wireless. This is again
  considerably bigger than the old average. No known outstanding
  regressions.

  Current release - regressions:

   - net: increase IP_TUNNEL_RECURSION_LIMIT to 5

   - eth: ice: fix PTP timestamping broken by SyncE code on E825C

  Current release - new code bugs:

   - eth: stmmac: dwmac-motorcomm: fix eFUSE MAC address read failure

  Previous releases - regressions:


    [66 lines not shown]
DeltaFile
+197-0tools/testing/selftests/net/srv6_iptunnel_cache.sh
+49-90net/netfilter/nfnetlink_queue.c
+71-12tools/testing/selftests/net/netfilter/nft_queue.sh
+43-20net/rxrpc/rxkad.c
+26-29tools/testing/selftests/bpf/prog_tests/test_xsk.c
+34-18net/key/af_key.c
+420-16991 files not shown
+1,172-46897 files

Linux/linux 8b02520drivers/iommu iommu.c

Merge tag 'iommu-fixes-v7.0-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/iommu/linux

Pull IOMMU fix from Will Deacon:

 - Fix regression introduced by the empty MMU gather fix in -rc7, where
   the ->iotlb_sync() callback can be elided incorrectly, resulting in
   boot failures (hangs), crashes and potential memory corruption.

* tag 'iommu-fixes-v7.0-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/iommu/linux:
  iommu: Ensure .iotlb_sync is called correctly
DeltaFile
+6-0drivers/iommu/iommu.c
+6-01 files

Linux/linux acfa7a3drivers/platform/x86 asus-armoury.h, drivers/platform/x86/amd/pmc pmc-quirks.c

Merge tag 'platform-drivers-x86-v7.0-4' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86

Pull x86 platform drivers fixes from Ilpo Järvinen:

 - amd/pmc: Add Thinkpad L14 Gen3 to quirk_s2idle_bug

 - asus-armoury: Add support for FA607NU, GU605MU, and GV302XU.

 - intel-uncore-freq: Handle autonomous UFS status bit

 - ISST: Handle cases with less than max buckets correctly

 - intel-uncore-freq & ISST: Mark minor version 3 supported (no
   additional driver changes required)

* tag 'platform-drivers-x86-v7.0-4' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86:
  platform/x86: asus-armoury: add support for GU605MU
  platform/x86: asus-armoury: add support for FA607NU
  platform/x86: asus-armoury: add support for GV302XU

    [5 lines not shown]
DeltaFile
+86-0drivers/platform/x86/asus-armoury.h
+8-2drivers/platform/x86/intel/uncore-frequency/uncore-frequency-tpmi.c
+9-0drivers/platform/x86/amd/pmc/pmc-quirks.c
+3-1drivers/platform/x86/intel/speed_select_if/isst_tpmi_core.c
+106-34 files

Linux/linux b4afe3fdrivers/net/ethernet/microchip/lan966x lan966x_fdma.c

Merge branch 'net-lan966x-fix-page_pool-error-handling-and-error-paths'

David Carlier says:

====================
net: lan966x: fix page_pool error handling and error paths

This series fixes error handling around the lan966x page pool:

    1/3 adds the missing IS_ERR check after page_pool_create(), preventing
        a kernel oops when the error pointer flows into
        xdp_rxq_info_reg_mem_model().

    2/3 plugs page pool leaks in the lan966x_fdma_rx_alloc() and
        lan966x_fdma_init() error paths, now reachable after 1/3.

    3/3 fixes a use-after-free and page pool leak in the
        lan966x_fdma_reload() restore path, where the hardware could
        resume DMA into pages already returned to the page pool.

    [4 lines not shown]
DeltaFile
+24-4drivers/net/ethernet/microchip/lan966x/lan966x_fdma.c
+24-41 files

Linux/linux 076344adrivers/net/ethernet/microchip/lan966x lan966x_fdma.c

net: lan966x: fix page pool leak in error paths

lan966x_fdma_rx_alloc() creates a page pool but does not destroy it if
the subsequent fdma_alloc_coherent() call fails, leaking the pool.

Similarly, lan966x_fdma_init() frees the coherent DMA memory when
lan966x_fdma_tx_alloc() fails but does not destroy the page pool that
was successfully created by lan966x_fdma_rx_alloc(), leaking it.

Add the missing page_pool_destroy() calls in both error paths.

Fixes: 11871aba1974 ("net: lan96x: Use page_pool API")
Cc: stable at vger.kernel.org
Signed-off-by: David Carlier <devnexen at gmail.com>
Link: https://patch.msgid.link/20260405055241.35767-3-devnexen@gmail.com
Signed-off-by: Paolo Abeni <pabeni at redhat.com>
DeltaFile
+4-1drivers/net/ethernet/microchip/lan966x/lan966x_fdma.c
+4-11 files

Linux/linux 59c3d55drivers/net/ethernet/microchip/lan966x lan966x_fdma.c

net: lan966x: fix use-after-free and leak in lan966x_fdma_reload()

When lan966x_fdma_reload() fails to allocate new RX buffers, the restore
path restarts DMA using old descriptors whose pages were already freed
via lan966x_fdma_rx_free_pages(). Since page_pool_put_full_page() can
release pages back to the buddy allocator, the hardware may DMA into
memory now owned by other kernel subsystems.

Additionally, on the restore path, the newly created page pool (if
allocation partially succeeded) is overwritten without being destroyed,
leaking it.

Fix both issues by deferring the release of old pages until after the
new allocation succeeds. Save the old page array before the allocation
so old pages can be freed on the success path. On the failure path, the
old descriptors, pages and page pool are all still valid, making the
restore safe. Also ensure the restore path re-enables NAPI and wakes
the netdev, matching the success path.


    [5 lines not shown]
DeltaFile
+18-3drivers/net/ethernet/microchip/lan966x/lan966x_fdma.c
+18-31 files

Linux/linux 3fd0da4drivers/net/ethernet/microchip/lan966x lan966x_fdma.c

net: lan966x: fix page_pool error handling in lan966x_fdma_rx_alloc_page_pool()

page_pool_create() can return an ERR_PTR on failure. The return value
is used unconditionally in the loop that follows, passing the error
pointer through xdp_rxq_info_reg_mem_model() into page_pool_use_xdp_mem(),
which dereferences it, causing a kernel oops.

Add an IS_ERR check after page_pool_create() to return early on failure.

Fixes: 11871aba1974 ("net: lan96x: Use page_pool API")
Cc: stable at vger.kernel.org
Signed-off-by: David Carlier <devnexen at gmail.com>
Link: https://patch.msgid.link/20260405055241.35767-2-devnexen@gmail.com
Signed-off-by: Paolo Abeni <pabeni at redhat.com>
DeltaFile
+2-0drivers/net/ethernet/microchip/lan966x/lan966x_fdma.c
+2-01 files

Linux/linux cb76a81fs/kernfs dir.c

kernfs: make directory seek namespace-aware

The rbtree backing kernfs directories is ordered by (hash, ns_id, name)
but kernfs_dir_pos() only searches by hash when seeking to a position
during readdir. When two nodes from different namespaces share the same
hash value, the binary search can land on a node in the wrong namespace.
The subsequent skip-forward loop walks rb_next() and may overshoot the
correct node, silently dropping an entry from the readdir results.

With the recent switch from raw namespace pointers to public namespace
ids as hash seeds, computing hash collisions became an offline operation.
An unprivileged user could unshare into a new network namespace, create
a single interface whose name-hash collides with a target entry in
init_net, and cause a victim's seekdir/readdir on /sys/class/net to miss
that entry.

Fix this by extending the rbtree search in kernfs_dir_pos() to also
compare namespace ids when hashes match. Since the rbtree is already
ordered by (hash, ns_id, name), this makes the seek land directly in the

    [3 lines not shown]
DeltaFile
+5-0fs/kernfs/dir.c
+5-01 files

Linux/linux 1fe989efs/kernfs dir.c

kernfs: use namespace id instead of pointer for hashing and comparison

kernfs uses the namespace tag as both a hash seed (via init_name_hash())
and a comparison key in the rbtree. The resulting hash values are exposed
to userspace through directory seek positions (ctx->pos), and the raw
pointer comparisons in kernfs_name_compare() encode kernel pointer
ordering into the rbtree layout.

This constitutes a KASLR information leak since the hash and ordering
derived from kernel pointers can be observed from userspace.

Fix this by using the 64-bit namespace id (ns_common::ns_id) instead of
the raw pointer value for both hashing and comparison. The namespace id
is a stable, non-secret identifier that is already exposed to userspace
through other interfaces (e.g., /proc/pid/ns/, ioctl NS_GET_NSID).

Introduce kernfs_ns_id() as a helper that extracts the namespace id from
a potentially-NULL ns_common pointer, returning 0 for the no-namespace
case.

    [6 lines not shown]
DeltaFile
+26-7fs/kernfs/dir.c
+26-71 files

Linux/linux e3b2cf6fs/kernfs dir.c, fs/nfs sysfs.c

kernfs: pass struct ns_common instead of const void * for namespace tags

kernfs has historically used const void * to pass around namespace tags
used for directory-level namespace filtering. The only current user of
this is sysfs network namespace tagging where struct net pointers are
cast to void *.

Replace all const void * namespace parameters with const struct
ns_common * throughout the kernfs, sysfs, and kobject namespace layers.
This includes the kobj_ns_type_operations callbacks, kobject_namespace(),
and all sysfs/kernfs APIs that accept or return namespace tags.

Passing struct ns_common is needed because various codepaths require
access to the underlying namespace. A struct ns_common can always be
converted back to the concrete namespace type (e.g., struct net) via
container_of() or to_ns_common() in the reverse direction.

This is a preparatory change for switching to ns_id-based directory
iteration to prevent a KASLR pointer leak through the current use of

    [3 lines not shown]
DeltaFile
+25-25net/core/net-sysfs.c
+24-16include/linux/kernfs.h
+17-13fs/kernfs/dir.c
+12-12include/linux/sysfs.h
+10-7net/sunrpc/sysfs.c
+10-6fs/nfs/sysfs.c
+98-7924 files not shown
+175-14830 files

Linux/linux 7e05485drivers/iommu iommu.c

iommu: Ensure .iotlb_sync is called correctly

Many drivers have no reason to use the iotlb_gather mechanism, but do
still depend on .iotlb_sync being called to properly complete an unmap.
Since the core code is now relying on the gather to detect when there
is legitimately something to sync, it should also take care of encoding
a successful unmap when the driver does not touch the gather itself.

Fixes: 90c5def10bea ("iommu: Do not call drivers for empty gathers")
Reported-by: Jon Hunter <jonathanh at nvidia.com>
Closes: https://lore.kernel.org/r/8800a38b-8515-4bbe-af15-0dae81274bf7@nvidia.com
Signed-off-by: Robin Murphy <robin.murphy at arm.com>
Tested-by: Jon Hunter <jonathanh at nvidia.com>
Reviewed-by: Jason Gunthorpe <jgg at nvidia.com>
Tested-by: Russell King (Oracle) <rmk+kernel at armlinux.org.uk>
Signed-off-by: Will Deacon <will at kernel.org>
DeltaFile
+6-0drivers/iommu/iommu.c
+6-01 files

Linux/linux c71ba66drivers/nfc/pn533 uart.c

nfc: pn533: allocate rx skb before consuming bytes

pn532_receive_buf() reports the number of accepted bytes to the serdev
core. The current code consumes bytes into recv_skb and may already hand
a complete frame to pn533_recv_frame() before allocating a fresh receive
buffer.

If that alloc_skb() fails, the callback returns 0 even though it has
already consumed bytes, and it leaves recv_skb as NULL for the next
receive callback. That breaks the receive_buf() accounting contract and
can also lead to a NULL dereference on the next skb_put_u8().

Allocate the receive skb lazily before consuming the next byte instead.
If allocation fails, return the number of bytes already accepted.

Fixes: c656aa4c27b1 ("nfc: pn533: add UART phy driver")
Cc: stable at vger.kernel.org
Signed-off-by: Pengpeng Hou <pengpeng at iscas.ac.cn>
Link: https://patch.msgid.link/20260405094003.3-pn533-v2-pengpeng@iscas.ac.cn
Signed-off-by: Paolo Abeni <pabeni at redhat.com>
DeltaFile
+8-3drivers/nfc/pn533/uart.c
+8-31 files

Linux/linux a13edf9drivers/gpu/drm/i915/gem i915_gem_execbuffer.c

drm/i915/gem: Drop check for changed VM in EXECBUF

Since the introduction of d4433c7600f7 ("drm/i915/gem: Use the proto-context
to handle create parameters (v5)") it has not been possible for VM to change
after context creation so the check will never fail.

Sima's analysis:

  This check was added in f7ce8639f6ff ("drm/i915/gem: Split the context's
  obj:vma lut into its own mutex") but without any hint in the commit
  message as to why. In another hunk of that commit there's a hint though in
  __eb_add_lut:

          /* user racing with ctx set-vm */

  This would mean that this bug was introduced in e0695db7298e ("drm/i915:
  Create/destroy VM (ppGTT) for use with contexts"), which allowed to change
  the gem_ctx->vm at runtime, opening up the race that was partially fixed
  in the earlier referenced commit about a year later.

    [25 lines not shown]
DeltaFile
+1-1drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
+1-11 files

Linux/linux 1561d96drivers/gpio gpio-tegra.c

gpio: tegra: fix irq_release_resources calling enable instead of disable

tegra_gpio_irq_release_resources() erroneously calls tegra_gpio_enable()
instead of tegra_gpio_disable(). When IRQ resources are released, the
GPIO configuration bit (CNF) should be cleared to deconfigure the pin as
a GPIO. Leaving it enabled wastes power and can cause unexpected behavior
if the pin is later reused for an alternate function via pinctrl.

Fixes: 66fecef5bde0 ("gpio: tegra: Convert to gpio_irq_chip")
Signed-off-by: Samasth Norway Ananda <samasth.norway.ananda at oracle.com>
Link: https://patch.msgid.link/20260407210247.1737938-1-samasth.norway.ananda@oracle.com
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski at oss.qualcomm.com>
DeltaFile
+1-1drivers/gpio/gpio-tegra.c
+1-11 files