Latest Linux kernel releases

  21.10 7.2.12, 6.18.58, 6.12.114, 6.6.160
  18.10 7.3 (merge, pull)
  15.10 6.1.190, 5.15.223, 5.10.272

Commits in mainline kernel

All commints
Merge tags by Linus Torvalds

Significant pull requests for mainline kernel

 
17 Oct 2026: Kbuild / Kconfig updates for 7.4 [+ + +]
full details available in the signed tag.

You will see an immediate conflict in init/Kconfig between

  eb13a1ff271b ("random: vDSO: avoid call to memset() when zeroing reserved parameter")

that went into 7.3-rc6 and

  f85147b291e3 ("kbuild: move the toolchain checks into scripts/Kconfig.toolchain")

in my tree. The solution in init/Kconfig should be obvious but make sure
to reapply eb13a1ff271b in scripts/Kconfig.toolchain, which I have been
doing in -next easily with:

  $ git show eb13a1ff271b init/Kconfig | sed 's;init/Kconfig;scripts/Kconfig.toolchain;g' | git apply -3v

My latest merge is at


for reference if necessary.

There are a few other conflicts that I have been notified about in
-next, which all appear to be minor.

  - Makefile from the rust tree:
    https://lore.kernel.org/[email protected]/

  - drivers/firmware/efi/libstub/Makefile from the efi tree:
    https://lore.kernel.org/[email protected]/

  - scripts/kallsyms.c from the -mm tree:
    https://lore.kernel.org/[email protected]/

  - scripts/remove-stale-files from the rust tree:
    https://lore.kernel.org/[email protected]/

If there are any issues or concerns, please let me know.

Cheers,
Nathan

Kbuild / Kconfig updates for 7.4

Kbuild:

- Suppress compiler flags in debug info for external module builds

- Use '-fmacro-prefix-map' in more places in the build

- Merge initial set of changes from Lorenzo's speed up series, along
  with some fixes found through testing

  - Avoid allocating .modinfo in vmlinux

  - Speed up kallsyms by indexing symbols by token and outputting binary
    data to disk directly then including in assembly via .incbin

  - Don't sort $(NM) output when unnecessary

  - Only emit relocations on the final vmlinx link

  - Reimplement mksysmap in C

  - Move many cc-option and ld-option calls into the Kconfig stage to
    cache their results

  - Use pigz for gzip compression when available

- Move gen_init_cpio and gen_initramfs.sh from usr/ to scripts/

- Add a TOML configuration to scripts/container and update documentation
  accordingly

- Add a generic, opt-in mechanism for checking that headers can compile
  standalone

- Update machine function splitting argument for LLVM 24 rename in
  AutoFDO build

- Miscellaneous minor clean ups, fixes, and hardening, mostly
  found/fixed via LLMs

Kconfig:

- Turn recursive ranges into an error

- Fix savedefconfig for defaults that were adjusted for being out of
  range and revert a previously applied workaround

- Improvements and hardening around integer and hexadecimal values

- Emit a warning when selecting or implying a choice symbol, which has no
  effect

- Emit a warning when KCONFIG_PROBABILITY is malformed

- Introduce def_string / def_int / def_hex to mirror the existing
  def_bool / def_tristate to succinctly set a value and type at the same
  time.

- Add cc-option-str and ld-option-str macros to act like Kbuild's
  cc-option and ld-option, returning the string when the option is
  supported, allowing many checks to be moved into Kconfig

- Minor usability improvements to Kconfig tests

Signed-off-by: Nathan Chancellor <[email protected]>

17 Oct 2026: RCU updates for v7.4 [+ + +]
Once the merge window opens, please pull this RCU update:


RCU updates:

Execution contexts and call_rcu() and call_srcu():
 * Make call_rcu() and call_srcu invocable from NMI handlers and while
   holding scheduler locks (using irq-work handlers).
 * Add rcutorture and BPF tests calling these functions from these
   contexts.
 * Disable rcutorture overload testing for RCU readers that are "fragile",
   that is, that do not either disable preemption or have some form of
   RCU priority boosting.

SRCU updates:
 * Add an atomic SRCU where readers run with preemption disabled and
   grace periods can be invoked from atomic contexts.  David Woodhouse
   has a patch series exploiting this for GPC.
 * Add torture and lockdep tests for atomic SRCU.
 * Add numerous optimizations for atomic SRCU based on the fact that it
   does not have callbacks, for example, eliminating any transition to
   "big" srcu_struct structures even on systems that configure these to
   happen at initialization time.

Additional torture-test updates:
 * Fix a divide-by-zero bug in forward-progress testing.
 * Synchronously wait for all IRQ-queued callbacks to complete.
 * Allow alternative "ssh" commands to be specified for use by
   kvm-remote.sh.
 * Fix kvm-again.sh re-run failure on PowerPC.
 * Add additional lockdep testing for atomic SRCU.
 * Fix error double-counting in srcu_lockdep.sh.
 * Add atomic SRCU cross-CPU IRQ context mismatch testing, with the
 * trick being that the atomic SRCU readers context must be at least as
   strict as that of the atomic SRCU grace-period wait.  So for example,
   if the readers have IRQs disabled, so must the grace-period wait.

Miscellaneous updates:
 * Update stallwarn.rst documentation for the re-implementation of RCU
   Tasks Trace in terms of SRCU.
 * Fix the lazy-callback shrink scanner budget computation so that it
   honors the reclaim budget.
 * Avoid panicking on RCU CPU stalls that end before the warning can
   be printed.
 * Add "running" and "boosted" indications to the RCU task stall warning
   output.
 * People have been (incorrectly) relying on rcu_barrier() to wait for
   kfree_rcu() callbacks and processing.  But it turns out to be easier to
   fix rcu_barrier() to meet their expectations than to fix their code to
   live within the earlier rcu_barrier() specification.  So rcu_barrier()
   now waits on kfree_rcu() callbacks and processing.
 * Disable RCU Tasks console output that track when this RCU flavor
   switches between per-CPU and global callback queuing.  New use cases
   appeared that generated enough console traffic to cause trouble, and
   no one seemed to care about these messages.  For those needing those
   messages, there is a new rcupdate.rcu_task_collapse_debug kernel boot
   parameter.
 * Fix __rcu pointer attribute handling to eliminate false positives.
 * Fix typos and drop redundant #include directives.

17 Oct 2026: Driver core changes for 7.4-rc1 [+ + +]

All commits have been in linux-next (no conflicts expected); two signed tag=
s for
Rust I/O and DMA changes have been shared with other trees.

Thanks,
Danilo

Driver core changes for 7.4-rc1

- core:

  - Add TAINT_FORCED_BIND to taint the kernel and driver module before manu=
al
    sysfs bind/unbind operations; make add_taint_module() available to
    driver core and update taint decoding tools and documentation

  - Constify device_show/store_*() attribute parameters and adapt x86 MCE a=
nd
    perf users to prepare for const dev_ext_attribute instances

  - Fix UAF in NUMA access node registration failure handling by dropping
    the device reference with put_device() instead of directly freeing the =
node

- debugfs:

  - Make debugfs_create_str() read-only to eliminate double-free races betw=
een
    concurrent writers; reject writable modes; convert interconnect and
    SoundWire users to local file operations with mutex-protected strings

- kobject:

  - Fix out-of-bounds access in kobject_action_type() when parsing action
    strings containing embedded NUL bytes

  - Fix the kobject_set_name() reference in kset_register() kernel-doc

- Rust:

  - DMA:

    - Tie Coherent, CoherentBox and CoherentHandle to the device's bound
      lifetime to prevent retaining DMA allocations beyond driver unbind;
      propagate the lifetime through nova-core and the DMA sample driver

  - I/O:

    - Require explicit base types for registers and replace relative regist=
ers
      with typed subregion projections; reimplement register!() as a proc
      macro, support registers using existing types without inline bitfield=
s,
      and convert nova-core, Tyr and the PCI sample; add AsRepr/AsReprMut a=
nd
      transmute helpers with deferred size checks for representation
      conversions

    - Wrap ResourceSize in a transparent newtype with explicit conversions,
      including checked conversion to usize

  - PCI:

    - Add typed PCIe extended capability lookup and SR-IOV accessors for th=
e
      First VF Offset and decoded VF BAR addresses and widths, keeping raw
      SR-IOV registers private to preserve PCI core ownership of their stat=
e

  - scatterlist:

    - Honor the device's maximum segment size as well as the DMA mapping li=
mit
      when constructing SG tables

    - Return u32 from SGEntry::dma_len() to match the C segment length type

  - misc:

    - Validate auxiliary DeviceId name length explicitly to improve
      compile-time diagnostics for oversized device ID table entries

    - Drop unnecessary 'static bounds from debugfs ScopedDir file creation
      methods to support data containing non-'static references, including =
DMA
      buffers

- misc:

  - Add Johan Hovold as driver core maintainer

  - Simplify platform_device_alloc() by returning early on allocation failu=
re

  - Fix typos in driver core and kernfs comments

 
16 Oct 2026: Report recovery time for CSD-lock stall for v7.4 [+ + +]
When the v7.4 merge window opens, please pull this CSD-lock update that
reports the time required to recover from a CSD-lock stall:


Report CSD-lock stall recovery time

 * Refactor to simplify csd_lock_wait_toolong() function prototype.
 * Report time required to recover from a CSD-lock stall.
 * Add a test of this reporting.

16 Oct 2026: Add two-byte cmpxchg emulation function for v7.4 [+ + +]
When the v7.4 merge window opens, please pull this two-byte cmpxchg
emulation:


Add emulation of two-byte cmpxchg()

These commits add a cmpxchg_emu_u16() function that emulates two-byte
cmpxchg() in terms of four-byte cmpxchg() for architectures not having
native instructions for this purpose.  They also make use of this
cmpxchg_emu_u16() function in those architectures, namely sh, arc, csky,
and xtensa.  This permits use of two-byte cmpxchg() in common code.

However, it sadly does not permit easy implementation of all algorithms
needing on two-byte atomic operations because there are some systems still
supported by Linux that do not have native two-byte store instructions.
There is reason to believe that these systems will soon no longer be
supported by Linux.

16 Oct 2026: smb client changes for v7.4 [+ + +]
cleanups, a number of fixes (crashes, out-of-bounds reads and
data-integrity bugs), support for changing SMB compression through
chattr and internal CIFS version removal.

This conflicts with the vfs tree in fs/smb/client (mnt_idmap
constification, fscache_resize_cookie() and transport.c).  The
resolution is trivial and linux-next has been carrying it for a while.

Thanks,
Paulo

 - Implement ->fileattr_set so chattr(1) compression changes (chattr +c/-c)
   go through the generic VFS fileattr path and its permission and
   serialization checks instead of the raw FS_IOC_SETFLAGS fallback and
   remove the now-unreachable file flags ioctl handlers

 - Require stable pages when the connection is signed or SMB compression is
   enabled, so a buffered write can no longer modify a folio that is still in
   flight and corrupt its signature (surfaced as -EIO) or, with compression,
   silently corrupt the data stored on the server

 - Stop breaking a file's just-granted lease while probing it for a
   Minshall+French symlink, by reusing an already open handle or opening with
   the inode's lease key

 - Fix several out-of-bounds reads and use-after-free bug in SMB1

 - Fix an use-after-free bug in cifs_ses_add_channel()

 - Fix a NULL pointer dereference in the demultiplex thread when an encrypted
   read response matches no outstanding request and reclaim the credits
   granted on such responses to avoid starving the connection of credits

 - Fail sends fast when the connection needs to reconnect

 - Drop the redundant nls_table argument threaded through the session setup,
   tree connect and path-based call paths, allocate the session setup state
   on the stack and remove the internal CIFS version number along with a
   batch of write-only fields and commented-out code

16 Oct 2026: hfs/hfsplus changes for 7.4-rc1 [+ + +]
Bruno Produit has fixed issue in {hfs,hfsplus}_btree_close()
method. B-tree nodes with a zero reference count remain in
the node hash until folio reclaim or tree teardown frees them.
The folio release callbacks remove nodes while holding hash_lock,
but hfs_btree_close() walks and frees the same hash without
that lock.  Reclaim can therefore unhash and free a node after
close has loaded its pointer, causing a use-after-free or
double-free. Detach each node with hfs_bnode_unhash() while
holding hash_lock before inspecting and freeing it.
Drop the lock before hfs_bnode_free() so a large tree is not
freed while holding a spinlock.

Davy Felipe has fixed issues in hfs_inode_setattr() and
hfs_brec_insert():
- hfs_inode_setattr() rejects unsupported UID, GID and mode
  changes, but returns the value stored in error when
  the filesystem is not mounted with the quiet option.
  At this point error is zero, as execution has already passed a
  successful setattr_prepare() call. As a result, unsupported attribute
  changes are incorrectly reported to userspace as successful even
  though the inode remains unchanged. Return -EPERM for these
  operations while preserving the existing behavior for quiet mounts.
- hfs_brec_insert() may fail while inserting a new extent record, but
  __hfs_ext_write_extent() currently ignores its return value and
  clears HFS_FLG_EXT_DIRTY and HFS_FLG_EXT_NEW as if the insertion had
  succeeded. Use a reusable B-tree node range helper that takes
  the find data and the expected record size. The helper validates
  the bnode and tree pointers, entry offset and entry length, and
  ensures that the write range fits within the node.

Viacheslav Dubeyko has fixed the failure in xfstests generic/339
case. The xfstests generic/339 leaves an HFS+ volume corrupted and,
as a result, fsck.hfsplus reports a long run of "Illegal name".
The root cause is that fs/hfsplus/unicode.c's decomposition table
(Apple Technote #1150) decomposes each source character entirely on
its own and never does anything further with the result. Real fsck_hfs
has carried a permanent "FixDecomps" fixup in CatalogCheck.c for
exactly what that leaves unhandled. Fix makes hfsplus store, hash and
compare names the same way current macOS does.

hfs/hfsplus updates for v7.4

- hfs: handle extent B-tree write errors
- hfsplus: add KUnit coverage for canonical reordering and legacy
fixups
- hfsplus: canonicalize decomposed catalog names like fsck_hfs expects
- hfsplus: add Unicode combining-class and legacy decomposition data
- hfs/hfsplus: serialize B-tree close against folio release
- hfs: return -EPERM for unsupported setattr changes

16 Oct 2026: nilfs2 changes for 7.4-rc1 [+ + +]
Aldo Ariel Panzardo has fixed the issues in nilfs_sufile_get_suinfo(),
nilfs_scan_dsync_log(), and nilfs_find_or_create_root():
- If the requested segment number is greater than the total
  number of segments, the function may process segment numbers
  outside the filesystem.
- nilfs_scan_dsync_log() trusts the block counts in each on-disk file
  information entry. If fi_ndatablk is greater than fi_nblocks,
  the data block loop can consume excessive summary entries and
  the later subtraction used to derive the number of node blocks
  underflows.
- nilfs_find_or_create_root() links a new checkpoint root into the
  checkpoint tree and drops ns_cptree_lock before creating the root's
  sysfs group. If nilfs_sysfs_create_snapshot_group() then fails, the
  root is freed while it is still reachable from ns_cptree, so a
  concurrent nilfs_lookup_root() can dereference freed memory.

Hemanth Selam has fixed typos in comments, reported by
scripts/checkpatch.pl using the misspelling list in
scripts/spelling.txt.

Jake Labelle has fixed issues in nilfs_recover_dsync_blocks() and
nilfs_readdir():
- During roll-forward recovery, nilfs_recover_dsync_blocks() obtains
  the inode designated by fi_ino of a dsync log without checking its
  type. Regular files, directories, and symlinks are the only inode
  types with data blocks to recover; reject anything else before
  touching its block mapping.
- nilfs_readdir() uses ctx->pos, which userspace can set to
  an arbitrary value via llseek, as an offset into the directory
  folio and parses whatever bytes sit there as a directory entry.
  Snap unaligned positions onto a valid entry boundary by walking
  the rec_len chain from the chunk start before parsing.

Jiaming Zhang has fixed the issue in logic of clearing the dirty
folios. When garbage collection fails, nilfs2 rolls the DAT metadata
file's page cache back to a shadow copy taken before GC started.
nilfs_clear_dirty_pages() drops the dirty state of the folios
in the DAT cache, then nilfs_copy_back_pages() overwrites them with
the saved contents and warns if one is still dirty. Add a force flag
to nilfs_clear_dirty_pages() and nilfs_clear_folio_dirty() that
skips the busy buffer check, and set it in the two calls from
nilfs_mdt_restore_from_shadow_map().

Joshua Crofts has removed dead code and commented code sections in
nilfs_new_inode(), nilfs_read_inode_common(), and nilfs_setup_super().

Ryusuke Konishi has fixed multiple issues:
- While the recent out-of-bounds memory access issue in
  nilfs_direct_propagate() has already been fixed, adds extra checks
  to catch and gracefully handle similar potential bugs.
- Fix syzbot reported deadlock between nilfs_evict_inode() and
  find_inode() by removing the synchronous log writer trigger from
  nilfs_evict_inode().
- Fix an omitted clear of the dirty flag on backing device buffers,
  which could cause an abnormal buffer state and potential block
  overwriting data corruption.
- Improve stability by preventing errors caused by user interrupts
  while waiting for log writes, which are triggered by synchronous
  write flags following operations such as rename().
- Refactor the metadata file writeback callback function,
  restructuring an inefficient legacy function organization rooted in
  the era of aops->writepage() to align with aops->writepages().
- Fix a link count underflow during rmdir on a directory with a
  corrupted link count (an issue recently reported by syzbot).

Viacheslav Dubeyko implemented the elimination of blockdev_direct_IO()
from nilfs2 entirely. It adds iomap.h with declaration of iomaps
operations and iomap.c with implementation of nilfs_iomap_begin().
The nilfs_direct_IO() and the .direct_IO callback on nilfs_aops are
removed. The nilfs_file_read_iter() dispatches O_DIRECT reads to
iomap_dio_rw() using nilfs_iomap_ops. Everything else still goes
through generic_file_read_iter().

nilfs2 updates for v7.4

- nilfs2: validate directory position after llseek in readdir
- nilfs2: reject non-regular inodes in dsync recovery
- nilfs2: fix link count underflow when removing corrupted directory
- nilfs2: simplify nilfs_mdt_writeback()
- nilfs2: ignore non-fatal signals during synchronous log write wait
- nilfs2: clear dirty flag on bdev buffers on log write failure
- nilfs2: fix deadlock between nilfs_evict_inode() and find_inode()
- nilfs2: fix checkpoint root lifetime on sysfs errors
- nilfs2: switch O_DIRECT to iomap based operations
- nilfs2: add iomap operations for direct I/O
- nilfs2: validate file block counts during recovery
- nilfs2: force clear dirty state when restoring from the shadow map
- nilfs2: validate segment number in nilfs_sufile_get_suinfo()
- nilfs2: fix typos in comments
- nilfs2: remove '#if 0' code blocks
- nilfs2: strengthen consistency checks in nilfs_direct_propagate()

16 Oct 2026: s390 updates for 7.4 merge window [+ + +]
please pull s390 updates for the 7.4 merge window.

Thanks,
Heiko

s390 updates for 7.4 merge window

- Add support for sclp-vt220 terminal resize events e.g. for QEMU

- Warn if kernel command line contains non-printable EBCDIC
  characters

- Improve show_code() disassembly output by using reliable markers for
  the instruction address and faulting instruction

- Rework exception handling to require only a single exception table
  entry per faulting instruction: convert all inline assemblies from
  EX_TABLE to the new EX_TABLE_INSN macros. The previous exception
  handling was error prone since it usually required two EX_TABLE
  entries: one pointing at the instruction, and one pointing behind it

- Disallow kprobes on instructions with exception table entries to avoid
  exception handlers decoding a breakpoint instead of the original
  instruction

- Preemptible percpu ops changes:

  - Simplify percpu_entry() and percpu_exit() by encoding the percpu
    base, offset, and pointer registers into the lowcore marker, allowing
    percpu_exit() to update the percpu pointer on CPU migration without
    comparing the interrupted instruction

  - Convert this_cpu_cmpxchg(), this_cpu_xchg(), and
    this_cpu_cmpxchg128() to preemptible percpu ops; provide
    this_cpu_try_cmpxchg()

- Emulate virtual timer in appldata via delayed work and remove the
  s390 specific vtimer infrastructure

- Add lock contention tracepoints to rwlock slowpath

- Fix incorrect return address in signal frame setup

- Fix cpum_cf CPU hotplug handling

- Convert various __get_free_pages() / get_zeroed_page() users to
  kmalloc() / kzalloc()

- PCI:

  - Improve RPCIT instruction tracing

  - Fix double-free, use-after-free, and resource leaks in zPCI MSI
    and IRQ setup / cleanup paths

- Crypto and zcrypt:

  - Improve reply message and length verification checks for CCA,
    EP11, and ICA messages to prevent out-of-bounds reads

  - Add missing array_index_nospec() for domain index uses in zcrypt to
    prevent speculative execution bypass

  - Fix out-of-bounds read in cca_query_crypto_facility()

- Various other small fixes and improvements

16 Oct 2026: configfs: Updates for 7.4 [+ + +]
Please consider pulling these configfs updates for 7.4-rc1.

There are three parts: Thomas Weißschuh's series that allows const
configfs attribute structures, new selftests for the userspace
interface, and three Rust binding changes that I merged from Andreas
Hindborg's signed tag.

FWIW: The const series touches three drivers outside fs/configfs (acpi, xe,
coco/guest report) because they implement the callbacks and bin attributes
whose types change.

Thanks,
--breno

configfs: Updates for v7.4

- Attribute structures can now be const. From Thomas Weißschuh.

- The first selftests for the configfs userspace interface, plus a
  sample subsystem that accepts symlinks to test against. They include
  a race of symlink(2) against rmdir of the target, which exercises
  the use-after-free fixed in v7.3-rc3.

- Rust bindings, merged from Andreas Hindborg's signed tag: fix the
  data offset calculation in subsystem callbacks (marked for stable),
  add the missing Send and Sync bounds, and correct a safety comment.

16 Oct 2026: arm64 updates for 7.4 [+ + +]
Here are the arm64 updates for 7.4. The more interesting bits are the
removal of big-endian kernel support (already marked BROKEN for some
time), preemptible this_cpu_*() operations and MPAM support for the
firmware-backed (Fb) interface. CCA (Arm's confidential compute) is
slowly trickling in with host RMI (Realm Management Interface) support
and some refactoring, including a dedicated SMCCC bus to advertise
firmware services. There are also the usual PMU updates for new hardware
and a few fixes/cleanups. More details in the tag.

I think there are some simple merge conflicts, depending on the order
you pull trees (KVM, mm), but the -next resolution is correct.

Thanks.

Core features:

 - Remove big-endian kernel support: CONFIG_CPU_BIG_ENDIAN has depended
   on BROKEN for a while, so drop the remaining code (BE hypervisor
   object, BPF JIT, assembly/crypto/library routines, endianness helper
   macros, selftests) and force a little-endian build

 - Add preemptible this_cpu_*() operations (read/write, RMW, xchg,
   cmpxchg and cmpxchg128) that no longer need to disable preemption
   around the per-CPU address generation and access

 - Preparation patches for implementing CONFIG_HOTPLUG_PARALLEL on
   arm64

Memory management:

 - Treat faults taken by EFI runtime firmware as kernel faults

 - Clear PTE_WRITE for EFI_MEMORY_RO mappings (with hardware dirty state
   management enabled, this is not truly read-only)

 - Raise the default ARCH_MMAP_RND_BITS for 48-bit and 52-bit VA
   configurations (28/26/24 bits for 4K/16K/64K pages)

 - Implement clear_page[s]() using memset()

 - Enable BBML2 no-abort (a.k.a. BBML3) for the NVIDIA Rigel CPU

Perf and PMU:

 - Support for HiSilicon's ITS PMU

 - Add support for some new events: INST_SIMD_ALU_VEC for Apple PMUs and
   a cycle counter for the latest version of HiSilicon's MN PMU hardware

 - A bunch of fixes to the CXL PMU driver to address pre-existing issues
   from Sashiko

 - Fix generation of PERF_RECORD_ITRACE_START records for SPE and ETM
   drivers

 - Reduce excessive stack consumption in the Marvell DDR PMU driver

 - Minor driver updates and cleanups all over

Arm Confidential Compute Architecture (CCA):

 - Add an Arm SMCCC bus for firmware services discovered through SMCCC
   and move the TRNG and CCA guest (TSM provider) drivers onto it,
   removing the dummy CCA platform device and adding a sysfs ABI for
   Realm guests

 - Move the Realm Service Interface (RSI) code out of arch/arm64/ into
   drivers/firmware/arm_rmm/

 - Add the host side of the Realm Management Interface (RMI): detect,
   configure and activate the RMM, add SRO support and wrappers for the
   Realm RMI commands

 - Block hibernation (new arch hook in the PM core) and kexec while the
   RMM is active. To be revisited in the future with proper support for
   deactivation

 - Handle Granule Protection Faults (GPFs) taken by the host, caused by
   accesses to memory delegated to the RMM. In a future patch, the
   exception table lookup will be limited to is_kdump_kernel() cases

MPAM (Memory Partitioning And Monitoring):

 - Add support for the MPAM firmware-backed (Fb) interface, allowing
   MSC accesses to be mediated by firmware

 - Fix a list of theoretical issues with the driver (MSC access error
   propagation, MBWU monitor save/restore and locking, resctrl class
   handling, error interrupt restore, maximum number of PARTIDs)

 - Add the mailing list and a missing file to the MAINTAINERS entry

 - Document when to set arm64.nompam

Errata and CPU features:

 - Add the NXP i.MX8QM/8QP workaround for the Cortex-A53 cache coherency
   issue (ERR050104), using a new ARM64_CPUCAP_SOC_ERRATUM capability
   type for SoC-level errata

Miscellaneous:

 - Mask debug exceptions (DAIF) around the hardware breakpoint register
   manipulations when called from generic kernel code

 - Don't zero the SVE state buffer when the SVE state is live

 - Return -EPERM instead of -EBUSY from the GCS prctl() locking
   failures (matching x86), with the selftest updated. Slight ABI change
   but no software deployment yet

 - kselftest: fix unsound MTE fault skipping by introducing MTE-safe
   memory accessors, avoid copying each signal test binary more than
   once

 - Update sysreg definitions (fix three enum values and two field names,
   mark architecturally dropped fields as RES0) and remove the TME
   transaction state check from the BRBE driver

 - Fix the description of ARM64_HAS_LPA2 and remove a redundant
   ID_AA64MMFR0 define

16 Oct 2026: v7.4 [+ + +]
This is the batch of pull requests for the v7.4 merge window. So I took
the insane decision to follow-up LPC with a vacation and now I'm
creating PRs next to a pool. So fsck me for great timing. This should
hopefully explain why there's some delay in response time. The other
half is that I'm getting carpet bombed with subtle bugs and I'm trying
to fix them systematically. While LLMs are great at finding sh*t they
certainly do still suck at coming up with architecturally clean fixes.
90% of the proposed "fixes" are utter garbage.

Anyway, on to the content:

This cycle is heavier on uapi than the last two. close_range() grows
two flags, the coredump socket protocol learns records, sparse dumps
and per-request memory type selection, open_tree() gets a flag that
container runtimes need and af_unix sockets can hand out thread
specific pidfds. The rest is the exit, exec and coredump paths getting
a lot of attention, kernfs scalability work out of Meta's fleet and a
few treewide conversions.

Closing files is synchronous now for close_range(), exec and exit.
Every final __fput() of an exiting task used to be queued on task work
and run from exit_task_work(). For a large descriptor table that is a
cmpxchg() and a TIF_NOTIFY_RESUME test-and-set per file and then a
second pass over every struct file that isn't cache hot anymore.
close_files(), close_range() and close-on-exec flush and put each file
inline the way close(2) does. Tearing down 1M descriptors goes from 429
to 306 ms on exit and from 471 to 325 ms on execve(). That is a 16-21%
win or 40-150 ns per closed file. The spufs coredump support, the only
reason do_coredump() unshared the descriptor table, goes away as part
of this.

close_range() gets CLOSE_RANGE_EXCEPT which makes it operate on all
file descriptors outside of the range and CLOSE_RANGE_CLOEXEC_ONLY
which closes only the close-on-exec descriptors in it. Together they
let a task between clone(CLONE_FILES) and execve() shed everything
except for a window of descriptors in one call and nothing outside of
the window is ever referenced by the child.

The coredump socket protocol learns to send a coredump as records. A
server raising COREDUMP_RECORDS gets a header in front of every chunk
and an explicit end record. With COREDUMP_SPARSE holes cross the
socket as a bare header saying how many zero bytes were skipped. A
process with 128 threads sends 1424153 bytes for a coredump of
1075150848 bytes since all the thread stacks are 8 MB reservations
that are nearly all holes. COREDUMP_MEMORY_TYPES lets the server pick
what memory to dump per request instead of relying on the static
coredump_filter of the crashing task.

TIF_NOTIFY_SIGNAL can no longer interrupt work that can't be restarted.
It is used to kick a task out of an uninterruptible sleep to run task
work but the pipe and socket paths a coredump goes through check
signal_pending() deep down and bail. So a crashing process with
io_uring requests in flight lost most of its coredump.
PF_NO_NOTIFY_SIGNAL sections modelled on memalloc_nofs_save() fix that
for coredumps, the smb send path and the pid namespace reaper. Looking
at the coredump code with kres and TLA+ also turned up a UAF when
releasing parked threads, shared signals retargeted to the dumper that
truncated cores, io-wq workers that could join a thread group a
coredump was already tearing down and an SQPOLL deadlock when a user
worker ends up as the dumper.

kernfs loses most of its kernfs_rwsem contention. The semaphore is per
kernfs root so sysfs and cgroupfs each have one for the whole machine
and rwsems don't let readers steal the lock once a writer is queued.
So one cgroup creation parked every daemon polling cgroup files in
uninterruptible sleep for minutes, oomd and below among them. Dentry
revalidation runs under rcu now, readdir drops the lock across
dir_emit() so a fault into reclaim can't hold it, and notification
delivery, open node allocation and renames stop sleeping under it.
Read acquisitions under churn drop from 48.6M to 1.3M and path walk
throughput improves 35-53%.

The buffer_head write completion handlers stop clearing BH_Uptodate
when a write fails. The buffer still holds exactly the data the
filesystem asked to be written and claiming otherwise made the retry
WARN, re-read the stale on-disk copy over the good data and leaked an
inconsistent state through the folio lock. Every consumer is moved to
BH_Write_EIO. This also let jbd2's shadow buffers point at memory
outside the page cache and removed b_page.

struct mnt_idmap is const throughout the tree now. A mount's idmapping
is immutable after creation so this follows the struct cred model all
the way down into every inode operation, the LSM hooks and the
filesystems, and nop_mnt_idmap and invalid_mnt_idmap live in rodata.

iomap gains lazy bounce buffering for checksummed reads. XFS bounce
buffered every direct read on a device requiring stable pages. Now the
read goes to the user buffer first and only a checksum failure reads
again into a bounce buffer. That branch is shared with the block tree.

Neil's preparations for changing directory locking are in. The goal is
to lock the dentry rather than the parent directory. d_splice_alias()
handles hashed dentries, d_alloc_trylock() and d_duplicate() are added,
LOOKUP_SHARED tells ->lookup() how the parent is locked and the
in-lookup state is tracked by lockdep. Mateusz also removed a spurious
dentry reference cycle on open which is a 39% win in will-it-scale.

Cachefiles can now cache files that are written once sequentially
without asking the backing filesystem with SEEK_DATA/SEEK_HOLE before
every read, and netfslib drops the writethrough code and makes the
deprecated PG_private_2 support opt-in.

open_tree() gets OPEN_TREE_DROP_MNTNS_MOUNTS. A recursive clone picks up
mount namespaces pinned below the source and attaching that inside a
namespace created with OPEN_TREE_NAMESPACE fails with ELOOP since the
new namespace is younger than everything else. crun hits this on every
Ubuntu host because snapd pins mount namespaces under /run/snapd/ns.

af_unix sockets return thread specific pidfds via SO_PASSPIDFD_THREAD
and SO_PEERPIDFD_THREAD so a coredump server can get a handle on the
thread that is actually writing the dump. That branch is shared with
net-next.

Smaller items include the removal of bfs, binfmt_misc only accepting
punctuation as the delimiter of a register string, uid_map and gid_map
writes rejecting values that don't fit in a u32 instead of truncating
them, __counted_by_ptr annotations with KUnit tests for struct fdtable
and struct uid_gid_map, a simplified FD_PREPARE(), get_tree_super()
for erofs's shared superblocks, and the usual pile of fixes and
selftest work.

Thanks!
Christian
16 Oct 2026: USB serial updates for 7.4-rc1 [+ + +]
USB serial updates for 7.4-rc1

Here are the USB serial updates for 7.4-rc1:

 - fix urb leak on sierra write completion
 - fix urb leak on usb_wwan disconnect
 - fix data corruption due to missing mxuport tx throttling
 - add support for two new classes of mxuport devices
 - add support for rs485 to mxuport
 - add new modem device ids
 - replace the last __get_free_page() with kmalloc()

Everything has been in linux-next with no reported issues. The mxuport
changes were merged yesterday, but they were contributed by a competent
vendor (and passed my smoke test).

16 Oct 2026: pwm: Changes for 7.4-rc1 [+ + +]
Subject: [GIT PULL] pwm: Changes for 7.4-rc1
MIME-Version: 1.0

Hello Linus,

the following changes since commit cee9395acd8043be0644b25c34bfa86623f2b935:

  Linux 7.3-rc1 (2026-08-30 13:34:40 -0700)

are available in the Git repository at:

wm/for-7.4-rc1

for you to fetch changes up to 00e917df050d79ac26ec700717680ad6421d2808:

  dt-bindings: pwm: Add IPQ5210 binding (2026-10-14 11:33:04 +0200)

for 7.4-rc1.

pwm: Changes for v7.4-rc1

The usual mix of fixes for older issues, devicetree changes and
cleanups.

Part of this is a shared branch that introduces device-managed variants
of atomic_notifier_chain_register() and
blocking_notifier_chain_register().


There are a few more interesting things still in my to-review queue, but
I didn't manage to review these in time to make this PR a bit more
interesting. (Though I guess you like it boring :-)

The series introducing the devm stuff for
{atomic,blocking}_notifier_chain_register() also touched iio, gpio,
platform/x86, input, acpi and kernel/reboot. I didn't check which of
these were picked up, but I guess you'll also get e38b9eda475f
("notifier: add device-managed registration APIs") via a few
more PRs this cycle.

Apart from the top-most patch (which is "only" a trivial device-tree
binding addition) these changes were included in next since
next-20260930 without any hassle.


Have a nice week-end,
Uwe

 
15 Oct 2026: KVM: x86: Pull requests for 7.4 [+ + +]
This cycle is "fun", only the "mmu" and "svm" requests escaped without a conflict
or some other notable mess.  That said, I don't think there's anything particularly
thorny to deal with, just a lot of minor stuff.  Details in the individual pull
requests.

My apologies for not getting the guest_memfd in-place conversion changes sent
along sooner.  I really wanted to get you a pull request around 7.3-rc4, but we
simply could get the code ready in time.
15 Oct 2026: Btrfs updates for 7.4 [+ + +]
Hi,

there's a handful of user visible changes, some of them fixes and the
rest is in the core.  There are some minor performance improvements too.


User visible changes:

- remove tweakable sysfs way to enable features, used only for extent-irefs
  which has been default since 3.12; the sysfs interface makes it complicated
  due to locking and context, unlike ioctl

- change which backup superblock does mount option 'rescue=usebackuproot'
  choose, skip the last one due to rotation, for more fine grained control add
  options selecting a specific backup superblock by index (usebackuproot_N)

Notable fixes:

- syslog message fixup of error state description, duplicate 'E' renamed to 'H'
  (emergency shutdown), added 'I 'when delayed iputs are blocked

- use kvmalloc for b-tree buffer allocations, as we're using more contig ranges
  because of large folios, the allocations started to warn on fragmented memory

- handle unknown commands for the /dev/btrfs-control ioctls

- tune timing of transaction commit when the space is getting low

- in raid56, skip verifications if data checksums are not available

Performance improvements:

- reflink speedup, reorder locking and flushing to optimize for more common
  cases where the reflinked ranges are accessed, avoid unnecessary contention

- minor speedup in zstd decompression (+8MB/s)

- reduced contention of inode extent map lock, improves e.g. when shrinker
  processes inodes without extent maps, measured time reduction 10-20%

Core changes:

- move allocation errors out of some contexts (new inode/dentry/rename) to
  avoid transaction aborts

- allocate system new chunks earlier, e.g. when consumed by fallocate, and tune
  deleting unused block groups if the system space is low

- tree checker: reject extents for special files

- many qgroup fixes regarding enabling/disabling, other state changes and
  qgroup relation updates

- error handling fixes

- refactoring, cleanups
  - page to folio cleanups
  - transaction state macros/enums simplification
  - parameter simplifications

15 Oct 2026: xen: branch for v7.4-rc1 [+ + +]
Please git pull the following tag:


xen: branch for v7.4-rc1

This time only small fixes and cleanups all over Xen related drivers.
Nothing really stands out here.


Thanks.

Juergen

15 Oct 2026: LoongArch KVM changes for v7.4 [+ + +]
LoongArch KVM changes for v7.4

1. Add separate vmid support.
2. Simplify MSI intterupt injection.
3. Add hypercall crash support.
4. Allow to set pv_feature until vCPU run.
5. Enable HW PTW automatically in selftests.

 
14 Oct 2026: thermal drivers for v7.4-rc1 [+ + +]
Hi Rafael,


- Add the Exynos ACPM thermal driver for Google GS101, along with
   DT bindings and a MAINTAINERS entry (Tudor Ambarus)

- Add Renesas RZ/G3L thermal sensor support and DT bindings, and move
   default calibration values to per-SoC match data (Biju Das)

- Add Qualcomm MSM8952 TSENS support and the corresponding DT binding
   compatible (Muzaffer Kadir)

- Document the Qualcomm PMAU0102 Master BandGap temperature monitor
   compatible in the DT bindings (Dhruvin Rajpura)

- Extend the QCom TSENS v2 trip temperature limits to the hardware
   range of -204°C to +204°C to prevent interrupt storms when operating
   beyond the previous software limits (Priyansh Jain)

- Fix temperature threshold map indexing in the QCom SPMI temperature
   alarm driver to prevent out-of-bounds reads (Georgi Djakov)

- Describe the additional bus clock required by the Amlogic T7 thermal
   sensor and switch the driver to the clk_bulk API to manage multiple
   clocks (Ronald Claveau)

- Request the Airoha EN7581 IRQ after thermal zone registration to
   prevent the interrupt handler from accessing an unregistered or
   already freed thermal zone (Vitaliy Sochnev)

- Fix the Airoha AN7583 ADC mux field mapping, serialize access to the
   shared ADC, and verify mux selection to avoid invalid temperature
   readings and spurious critical shutdowns (Vitaliy Sochnev)

- Register separate thermal zones for the AN7583 bandgap, GbE and CPU
   sensors, and update the DT bindings to use one thermal sensor cell
   to select the sensor (Vitaliy Sochnev)

- Fix signed integer overflow in the Renesas RZ/G3E temperature-to-code
   conversion, preserve compare interrupt state across runtime PM,
   and prevent overlapping temperature conversions (Ovidiu Panait)

- Remove redundant trip window validation and runtime PM
   pm_runtime_mark_last_busy() calls from the Renesas RZ/G3E driver
   (Ovidiu Panait)

- Propagate reset assertion failures from Renesas RZ/G3E suspend and
   attempt to restore power if the sensor was active (Pengpeng Hou)

- Stop the TI bandgap alert IRQ before removing sensor interfaces and
   cancel pending alert work to prevent use-after-free on driver removal
   (Weigang He)

- Validate Spreadtrum sensor IDs read from the device tree before using
   them for register offsets and array indexing (Weigang He)

- Convert the TI OMAP bandgap DT bindings to schema and document the
   DRA752 compatible and thermal sensor cells (Bhargav Joshi)

- Use DT property helpers matching the signed temperature and unsigned
   hysteresis types defined by the thermal zone bindings (Rob Herring)

- Reuse common error handling code in the power allocator governor
   bind callback (Markus Elfring)

- Constify the thermal zone device operations in the i.MX9 driver
   (Christophe JAILLET)

- Fix kernel-doc parameter names and firmware node references in the
   cooling device registration helpers (Aryan Sinha)

- Correct the documented return value of ti_bandgap_get_sensor_data()
   to describe validation errors and potentially NULL stored data
   (Karl Mehltretter)

- Ensure NUL-termination when copying the cooling device command-line
   argument in tmon and fix the associated string truncation warning
   (Florian Fainelli)

- Fix undefined behavior caused by a signed shift in the tmon thermal
   zone binding display (Liu Jing)

- Fix wording in tmon comments (Hemanth Selam)

14 Oct 2026: thermal drivers for v7.4-rc1 [+ + +]
Hi Rafael,


- Add the Exynos ACPM thermal driver for Google GS101, along with
   DT bindings and a MAINTAINERS entry (Tudor Ambarus)

- Add Renesas RZ/G3L thermal sensor support and DT bindings, and move
   default calibration values to per-SoC match data (Biju Das)

- Add Qualcomm MSM8952 TSENS support and the corresponding DT binding
   compatible (Muzaffer Kadir)

- Document the Qualcomm PMAU0102 Master BandGap temperature monitor
   compatible in the DT bindings (Dhruvin Rajpura)

- Extend the QCom TSENS v2 trip temperature limits to the hardware
   range of -204°C to +204°C to prevent interrupt storms when operating
   beyond the previous software limits (Priyansh Jain)

- Fix temperature threshold map indexing in the QCom SPMI temperature
   alarm driver to prevent out-of-bounds reads (Georgi Djakov)

- Describe the additional bus clock required by the Amlogic T7 thermal
   sensor and switch the driver to the clk_bulk API to manage multiple
   clocks (Ronald Claveau)

- Request the Airoha EN7581 IRQ after thermal zone registration to
   prevent the interrupt handler from accessing an unregistered or
   already freed thermal zone (Vitaliy Sochnev)

- Fix the Airoha AN7583 ADC mux field mapping, serialize access to the
   shared ADC, and verify mux selection to avoid invalid temperature
   readings and spurious critical shutdowns (Vitaliy Sochnev)

- Register separate thermal zones for the AN7583 bandgap, GbE and CPU
   sensors, and update the DT bindings to use one thermal sensor cell
   to select the sensor (Vitaliy Sochnev)

- Fix signed integer overflow in the Renesas RZ/G3E temperature-to-code
   conversion, preserve compare interrupt state across runtime PM,
   and prevent overlapping temperature conversions (Ovidiu Panait)

- Remove redundant trip window validation and runtime PM
   pm_runtime_mark_last_busy() calls from the Renesas RZ/G3E driver
   (Ovidiu Panait)

- Propagate reset assertion failures from Renesas RZ/G3E suspend and
   attempt to restore power if the sensor was active (Pengpeng Hou)

- Stop the TI bandgap alert IRQ before removing sensor interfaces and
   cancel pending alert work to prevent use-after-free on driver removal
   (Weigang He)

- Validate Spreadtrum sensor IDs read from the device tree before using
   them for register offsets and array indexing (Weigang He)

- Convert the TI OMAP bandgap DT bindings to schema and document the
   DRA752 compatible and thermal sensor cells (Bhargav Joshi)

- Use DT property helpers matching the signed temperature and unsigned
   hysteresis types defined by the thermal zone bindings (Rob Herring)

- Reuse common error handling code in the power allocator governor
   bind callback (Markus Elfring)

- Constify the thermal zone device operations in the i.MX9 driver
   (Christophe JAILLET)

- Fix kernel-doc parameter names and firmware node references in the
   cooling device registration helpers (Aryan Sinha)

- Correct the documented return value of ti_bandgap_get_sensor_data()
   to describe validation errors and potentially NULL stored data
   (Karl Mehltretter)

- Ensure NUL-termination when copying the cooling device command-line
   argument in tmon and fix the associated string truncation warning
   (Florian Fainelli)

- Fix undefined behavior caused by a signed shift in the tmon thermal
   zone binding display (Liu Jing)

- Fix wording in tmon comments (Hemanth Selam)

 
13 Oct 2026: NIOS2: update for v7.4 [+ + +]
NIOS2: update for v7.4
- Fix __wsum type degradation in csum_fold()

13 Oct 2026: [4/4] standalone cache drivers for v7.4 [+ + +]
Hey folks,


I think one of these may have fallen on the floor due to being late for v7.3
and deferred in patchwork [1], so my branch is still based on v7.2-rc1.

There may be another driver appearing here, via the arm64 tree, but I
don't expect any conflicts at all if it does, since nothing here touches
makefiles/kconfig etc.

Thanks,
Conor.

1 https://patchwork.kernel.org/project/linux-soc/patch/20260813-cope-smugness-dd4de191bdda@spud/

standalone cache drivers for v7.4

Three low-priority bugfixes for issues in the hisi hha and sifive ccache
drivers as well as the core code.

Signed-off-by: Conor Dooley <[email protected]>

13 Oct 2026: [3/4] RISC-V soc drivers for v7.4 [+ + +]
Hey folks,

Diff here contains a lot of clock bindings, so I've provided an explanation
in the tag.

Thanks,
Conor.

RISC-V misc. soc drivers for v7.4

StarFive:
Syscon bindings and a socinfo driver for the JHB100. There ended up
being several clock bindings here also because the clock tree needed the
whole lot due to headers and I envisaged this being part of a three-way
shared tag between my soc driver branch, dts branch and the clock tree.
Due to timing, the dts branch didn't get this content, leading to the
slightly odd branch here.

Microchip:
A bugfix for teardown code in the mpfs system controller driver.

Signed-off-by: Conor Dooley <[email protected]>

13 Oct 2026: [2/4] RISC-V misc. devicetrees for v7.4 [+ + +]
Hey folks,

Small enough PR here, I was hoping to get the StarFive jhb100 SoC in, but
that'll have to wait for 7.5, along with the deprecation of the Canaan K210
that Arnd and I discussed last week.

Cheers,
Conor.

RISC-V misc. devicetrees for v7.4

Microchip:
Add Valentina as a second maintainer because Daire is largely inactive.

Starfive:
Fix the PWM nodes, because a opencores,pwm-v1 instance only ever provides
one PWM channel.

Signed-off-by: Conor Dooley <[email protected]>

13 Oct 2026: [1/4] RISC-V firmware drivers for v7.4 [+ + +]
Hey folks,

Might be my last mini PR here, since the RISC-V SSE driver is coming via
the actual RISC-V tree, so there'll almost certainly be a much increased
activity here going forwards.

I'm a bit late PR wise (sorry) but I blame conferences and a busy week
beforehand for that...

Thanks,
Conor.

RISC-V firmware drivers for v7.4

A single fix/cleanup for the auto update driver.

Signed-off-by: Conor Dooley <[email protected]>

 
12 Oct 2026: Rust XArray for v7.4 [+ + +]
Hi Matthew,

I'm sending the Rust XArray for the current v7.4 cycle, although it is
probably too late for it. Just let me know if you need me to resend it
later, rebased or under a different tag.

Thanks,
Daniel

Rust XArray for v7.4

Add a Rust implementation of the XArray (rust/kernel/rxarray.rs),
introduced as an experimental Rust reference implementation [1] of
lib/xarray.c, as discussed at LPC26 [2]. This lets Rust users, such as
the null block driver and possibly Tyr (under evaluation), experiment
with and evaluate both implementations.

The goal is to evaluate whether Rust helps with the most common class of
XArray bugs, misuse of the API by its callers, such as the long-dormant
page cache corruption that almost blocked the LBS work [3]. The RFC v1
cover letter has the full motivation, benchmark baseline and
roadmap [4].

This initial version supports store, load, load_mut and erase. It has
been tested with the included KUnit tests and doctests.

Outside of rust/kernel/rxarray.rs, this touches:
 - MAINTAINERS: new XARRAY [RUST] entry, maintained by Daniel Gomez and
   Matthew Wilcox, with Andreas Hindborg as reviewer.
 - lib/Kconfig: new XARRAY_RUST option.
 - rust/kernel/lib.rs: register the rxarray module.
The C XArray implementation is unchanged.

Link: https://rust-for-linux.com/rust-reference-drivers/ [1]
Link: https://lore.kernel.org/all/[email protected]/ [2]
Link: https://lore.kernel.org/all/[email protected]/ [3]
Link: https://lore.kernel.org/all/[email protected]/ [4]
12 Oct 2026: interconnect changes for 7.4 [+ + +]
This is the pull request with interconnect changes for the v7.4-rc1
merge window. As always, the short summary is in the signed tag.

All patches have been in linux-next for more than a week. There
possible.

Thanks,
Georgi


interconnect changes for 7.4

This pull request contains the following interconnect updates for
the 7.4-rc1 merge window:

- New driver for Kuno SoC
- Make important drivers default
- Add multi-port QoS programming support
- Add support for Milos OSM L3
- Misc cleanups and fixes

Signed-off-by: Georgi Djakov <[email protected]>

12 Oct 2026: SOC FSL for 7.4 [+ + +]
Hi Arnd,


Changes to fsl-mc bus are reviewed or acked by Ioana
Changes to usb drivers are acked by greg

Thanks
Christophe

FSL SOC Changes for 7.4

Freescale QUICC Engine:
- Fix sparse warnings in GPIO
- Drop GPIOD_FLAGS_BIT_NONEXCLUSIVE

Freescale CPM1 Timeslot Assigner:
- Fix clock leak in tsa_of_parse_tdms()

Data Path I/O:
- Free the IRQ before releasing the I/O object
- Fix cleanup on IRQ registration failure

Freescale Management Complex:
- Annotate fsl_mc_io.portal_virt_addr with __counted_by_ptr
- Drop the fwnode links of the dpmacs nodes
- Register the object drivers after misc_class exists
- Set dma_mask for the DPRC devices
- Fix repeated word 'for' in comment

 
10 Oct 2026: Alloc changes for 7.4-rc1 [+ + +]
Alloc changes for 7.4-rc1

- Add Alice Ryhl as co-maintainer for Rust [ALLOC]

- Allow different error types in KBox::pin_slice(), enabling use of
  infallible initializers

- Add NumaNode::id() accessor to retrieve the underlying NUMA node
  identifier

 
9 Oct 2026: clk: imx: Updates for v7.4 [+ + +]
i.MX clock changes for 7.4

- Propagate busy timeout errors from i.MX93 composite gate enable.
- Add 350 MHz support to the fractional-N General-Purpose PLL for
  i.MX93 display use cases.
- Fix clock reference leaks in imx_get_clk_hw_by_name() and
  imx_obtain_fixed_clock_hw().

 
09 Oct 2026: nuvoton: First batch of arm64 devicetree changes for v7.4 [+ + +]
I've been absorbed with efforts outside of the kernel recently so
there's not much activity in the BMC tree this time around. This is the
only PR I plan to send for v7.4. That said, there are are many patches
on the list that need attention. I will get to them.

Various revisions of series I've applied from Tomer have been on the
lists for a while. I've worked through some tidying with him in recent
days so we can get them applied. There are still some process
improvements necessary on his part with regard to sending patches for
the BMC tree, which I've discussed with him. I've had to lightly rework
v10 of his series in order to get it applied as noted in the relevant
commit messages.

The work in the tag is currently in linux-next and I am yet to receive
any negative automated feedback on it.

I'll be travelling for the next week for the OCP Global conference but
will keep watch for any concerns that arise.

Please merge.

Thanks,

Andrew

nuvoton: First batch of arm64 devicetree changes for v7.4

A short series of enhancements for the NPCM845 SoC and its evaluation board=
.

 
8 Oct 2026: SoCFPGA firmware updates for v7.4 [+ + +]
SoCFPGA Firmware update for v7.4
- Turn off secondary CPUs using PSCI on Agilex7 and Stratix10
  Warm resets on these platforms require a clean PSCI state.
- Clean up stratix10_svc_free_memory() to reduce nesting
- Add SMMU DMA coherent support on Agilex5
  Use DMA-coherent buffers and IOVAs in the service driver for Agilex5
- Set kaddr1 to res.a1 which matches the existing error path and allow
  callers to retrieve firmware status details
- Allow older firmware that excluded COMMAND_RSU_UPDATE and COMMAND_RSU_STATUS
  to return SVC_STATUS_NO_SUPPORT so the firmware can continue instead of
  waiting for a timeout.
- Add support for SDM mailbox interrupt on async transactions
- Reduce polling times by introducing polling modes(Fast and Slow)

8 Oct 2026: Qualcomm pin control updates for v7.4-rc1 [+ + +]
the upcoming v7.4 merge window. There are three new drivers, support for a new
SPMI PMIC and some minor driver improvements along with necessary DT bindings
changes. Details are in the signed tag.

Thanks,
Bartosz

Qualcomm pin control updates for v7.4-rc1

New drivers:
- add the TLMM drivers for Kuno and MSM8952
- add the LPASS LPI driver for Hawi

New model support:
- support PMAU0102 GPIO in pinctrl-spmi-gpio

Driver improvements:
- fix/unify naming convention in defines specific to Qualcomm pinctrl
  drivers
- extend debugfs verbosity for pinctrl-lpass-lpi
- make the return type from kcalloc() const in tlmm-test

Devicetree bindings:
- add binding documents for new drivers
- document compatibles for new models
- document the gpio-line-names property for qcom,sc8280xp-tlmm

8 Oct 2026: RISC-V SpacemiT Devicetrees for v7.4 [+ + +]
Hi SoC Maintainers,


Yixun Lan

RISC-V SpacemiT DT changes for 7.4

For K3 SoC
- Correct CLINT and ACLINT
- Add USB nodes info
- Add cpu scaling
- Add rfkill node
- Add i2s info
- Fix IMSIC
- Enable thermal and fan control (CTF230)

For K1 SoC
- Set mac address from eeprom
- Enable onboard eeprom

MISC Changes:
- MAINTAINERS updates

 
07 Oct 2026: Rust configfs changes for v7.4-rc1 [+ + +]
Hi Breno,

Here is the first pull request from me to you for the Rust configfs
abstractions. Please note that I neglected to push these three patches
to the remote that is picked up by linux-next (just did it now).
However, I tried the merge and verified everything works under my usual
configurations, so we should be fine.

Best regards,
Andreas Hindborg


Rust configfs changes for v7.4-rc1

Three changes for the Rust configfs bindings. One typo fix for a safety comment and two bug fixes.

 
5 Oct 2026: arm64: defconfig: TI K3 config updates for v7.4 [+ + +]
Hi,

There is a minor conflict against bd94bea7165be450903c6d64bbcb4862e36798f9 =
see[1]


TI K3 defconfig updates for v7.4

- Convert the TI System Control Interface (TISCI) drivers in the arm64
  defconfig from built-in to loadable modules. This reduces the size of
  the default kernel image, while the drivers remain available on K3
  platforms through the initramfs or root filesystem.

5 Oct 2026: ARM: dts: ti: keystone: Updates for v7.4 [+ + +]
Hi,


TI Keystone device tree updates for v7.4

Generic Fixups/Cleanups:
* Correct white-space style across the Keystone DTSI files
* Align devctrl child node names with dtschema naming requirements

SoC Specific Fixes:
K2G:
* Add the required #phy-cells property to the usb-nop-xceiv nodes
* Move the usb-phy nodes out of simple-bus, as they have no MMIO address
  (dtbs_check fixes)

K2L:
* Rename the deprecated ti,davinci-spi-num-cs property to the standard
  num-cs (dtbs_check fix)

5 Oct 2026: arm64: dts: ti: K3 updates for v7.4 [+ + +]
Hi,

Please note that the property 'power-off-delay-us' picked up that is availa=
ble
in linux-next. We are clean on dtbs_check on linux-next next-20261002.


TI K3 device tree updates for v7.4

Generic Fixes/Cleanups:
* MMC: Configure the MMC clock pads as OUTPUT across AM62x, AM62A and AM62P
  based boards (SK, LP-SK, BeaglePlay, PocketBeagle2, phyCORE, TQMa62xx,
  Variscite and Verdin), so the clock pin is driven correctly.
* am62a: Fix the MMC0_CLK pin register address.
* am62*: Add the wakeup R5F nodes to the pre-RAM bootphase, and split the R=
5F
  memory region on AM62A and AM62P.
* am62*: Correct the wkup R5F memory region size on the AM62A, AM62D and AM=
62P
  boards and SoMs that reuse the shared IPC firmware layout.
* k3-pinctrl: Add virtual GPIO select mux macros.
* am62a/am62p/j722s: Fix watchdog comments.
* dt-bindings: Update the audio-refclk binding and the J721E system control=
ler
  binding.

SoC Specific features and Fixes:
AM62A:
* Assign on-chip SRAM to the VPU (wave5) node.

AM62P/J722S:
* Add the GPU node.
* Assign on-chip SRAM to the VPU node.

J721S2:
* Add an mmio-sram node to main_navss and assign SRAM to the VPU node.

Board Specific:
AM62x:
* SK: Mark the eMMC as non-removable.
* AM62L EVM: Remove unnecessary internal pull-ups on the MMC0 pins.
* Verdin, Ivy and Zinnia: Fix the main_gpio0/main_gpio1 line-names array si=
zes
  and add the missing SODIMM_84 line name.

AM62A:
* SK: Add an ethernet alias.

AM62P:
* Verdin: Build the Zinnia DTBs.

AM654:
* Base board: Add a power-off delay so the MMC supply is properly power-cyc=
led.

AM67 (J722S):
* Add support for the PHYTEC phyCORE-AM67x SoM, including its bindings.

AM69 (J784S4/J742S2):
* Aquila: Add the Toradex DSI-to-LVDS adapter with the 10.1" V2 display and=
 fix
  a typo in the AQUILA_B73 GPIO line name.
* EVM: Set the ACSPCIe refclk to MAIN_PLL2_HSDIV4 for PCIe1.

J7200:
* Common proc board: Add an ethernet alias.

J721S2:
* EVM: Add an audio overlay.
* Common proc board: Add an ethernet alias.

J722S:
* EVM: Switch the audio codec clock from audio_refclk1 to an external clock,
  and add an ethernet alias

5 Oct 2026: MAINTAINERS: TI K3 updates for v7.4 [+ + +]
Hi,


TI K3 MAINTAINERS updates for v7.4

- Add the git tree entry for the TI K3 ARCHITECTURE section, so that
  developers and contributors can easily find the tree where K3 SoC and
  board patches are maintained and queued.

5 Oct 2026: soc: ti: Driver updates for v7.4 [+ + +]
Hi,


TI SoC driver updates for v7.4

Small cleanup-only pull request for drivers/firmware and drivers/soc/ti.
It contains no functional changes to SoC behavior and no new features

Firmware:
- ti_sci: Simplify the buffer pointer allocation by using kzalloc() in place
  of kcalloc()
- ti_sci: Fix a typo in comments

SoC drivers:
- k3-ringacc: Correct the ring API kernel-doc and the DMA ring initializati=
on
  kernel-doc so the documentation matches the code
- knav_qmss: Fix typos in comments

5 Oct 2026: memory: drivers for v7.4 [+ + +]
Hi Arnd and SoC folks,

Note that I do not treat untested, LLM-assisted fixes as critical fixes, thus
usually do not take them into fixes cycle.

Best regards,
Krzysztof


Memory controller drivers for v7.4

1. Broadcom DPFE: Fix handling kernel memory accesses with malicious or
   compromised firmware and possible out-of-bounds read triggered by
   buggy co-processor.  Also validate firmware image contents before
   processing it.

2. Renesas RPC IF: One fix for volatile register access, several
   cleanups and enable autosuspend in runtime PM.

3. Several minor improvements and fixes for various drivers: TI EMIF,
   Samsung Exynos5422 DMC, Nvidia Tegra264 and STM32 OMM.  The fixes
   seems to be effect of LLM usage, thus they were neither reproduced
   nor tested, making them non-critical fixes.

4. Mediatek SMI: Add support for MT8189 SoC.

5 Oct 2026: clk: samsung: drivers for v7.4 [+ + +]
Samsung SoC clock drivers changes for v7.4

1. New drivers for a new SoC: Exynos5515.
2. ACPM driver: add support for Exynos850 (beside existing Google
   GS101).

5 Oct 2026: samsung: drivers for v7.4 [+ + +]
Samsung SoC drivers for v7.4

1. First driver patches for Exynos5515.
2. Fix error paths and possible probe-ordering issue of Exynos PMU
   (Power Management) driver.

5 Oct 2026: arm64: google: New ARCH_GOOGLE for v7.4 [+ + +]
Hi Arnd and SoC folks,

New SoC platform, in the future this will be handled by Peter Griffin.

Best regards,
Krzysztof


Google Tensor G5 SoC family - new platform

Introduce new ARCH_GOOGLE for the Google Tensor G5 (Laguna) family of
SoCs.  The very early designs - Google GS101 - were derivatives of
Samsung SoC, thus they were grouped under Samsung SoC.  The G5 however
went its own way, so no commonality with Samsung and a new ARCH_GOOGLE
symbol.  Currently upstreamed SoC is used for example in Google Pixel 10
phones.  Add basic support of three of their variants (Pixel 10, Pixel
10 Pro, Pixel 10 Pro XL).

 
3 Oct 2026: TEE updates for v7.4 [+ + +]

Thanks,
Jens

Move tee_ioctl_shm_register_data to above IOCTL definition

3 Oct 2026: TEE QTEE update for v7.4 [+ + +]

Thanks,
Jens

Drop unused assignment of platform_device_id driver data

3 Oct 2026: RISC-V T-HEAD devicetree changes for v7.4 [+ + +]
T-HEAD device tree changes for v7.4

Add the Milk-V Meles, a single board computer with the TH1520 SoC:
- Document the board compatible alongside the BeagleV Ahead
- Add the base device tree with UART0, eMMC, microSD, Gigabit Ethernet
  and the PWM fan
- Enable the AP6256 Wi-Fi module on SDIO1
- Enable HDMI output through the DC8200 display controller and the
  DW-HDMI transmitter

Also update MAINTAINERS: move the T-Head SoC tree T: entry to kernel.org

 
2 Oct 2026: Apple SoC driver changes for v7.4 [+ + +]
Apple SoC driver updates for 7.4

- Enabled shared GPIO support for ARCH_APPLE which will be used for a
  shared GPIO line for the speaker codecs
- Add RTKit crashlog support for older 32-bit co-coprocessors used in
  older iPhones and iPads.

Signed-off-by: Sven Peter <[email protected]>

2 Oct 2026: Apple SoC DTS changes for v7.4 [+ + +]
Apple SoC DTS changes for 7.4

- Initial device trees for all machines with the base M4 SoC and the
  A18 Pro based MacBook Neo. As usual, the PMGR nodes are responsible
  for the majority of the diffstat. This is enough to boot with all
  cores to a serial console but future work will be required to make
  these useful for users.
- Fixes for a whole bunch of dt-check-style issues for M1/M2/M3

Signed-off-by: Sven Peter <[email protected]>

2 Oct 2026: RTLA changes for 7.4 [+ + +]
Steven,

RTLA patches for 7.4

- Test actions in absence of threshold

Cover the case which regressed in the past in tests.

- More robust CPU count detection

Parse /sys/devices/system/cpu/possible directly instead of going through
libc for CPU count and sanity check against any mismatch with the number
reported by tracefs / osnoise.

- Add option to record IPI count in osnoise top

In addition to counting IRQs, add an option to enable counting IPIs
targetting the measurement CPU to the rtla-osnoise-top tool.

- Improve runtime test usability

Catch up with increased complexity of runtime tests with better defaults
and more options available to the developer running the tests.

- Simplify osnoise tracer option setting code

Deduplicate osnoise tracer option setting code with macros to make it
less error-prone and to make it easier to add new tracer options in
the future.

Signed-off-by: Tomas Glozar <[email protected]>

2 Oct 2026: OP-TEE update for v7.4 [+ + +]
The OP-TEE driver is still only built for Arm, but that will change in a
not too distant future.

Thanks,
Jens

Build the OP-TEE driver's SMC and FF-A code only where supported

 
1 Oct 2026: rv changes for v7.4 (for-next) [+ + +]
Steve,

rv changes for v7.4 (for-next)

Summary of changes:

- Improve lockdep annotation for reactors

  Reactors are not supposed to take locks, so they fit the LD_WAIT_FREE
  lockdep class. However, reactors may run in preemptible context and
  if the preempting code (tick or simply the scheduler) takes locks, we
  see a lockdep splat. Switch to LD_WAIT_SPIN to avoid the splat while
  documenting that reactors should still not take locks.

- Add KUnit tests for reactors

  Add KUnit test cases to validate registration and reaction, this
  requires exporting some symbols and other minor fixes.

- Use the right rv_this variable in the wakeup monitor

  LTL monitors were updated to use the generic rv_this static variable
  but this change wasn't propagated to the newly introduced wakeup
  monitor. This broke reactors for the monitor: update the it.

 
29 Sep 2026: Rust changes for v7.4-rc1 [+ + +]
Hi Jens,

I have a number of Rust block layer patches I would ask you to pick for
v7.4. I have collected them into a patch series as well as a pull request
so you can use whatever is easier.

The changes cover

 - Style and formatting changes.
 - Documentation fixes.
 - Fixes for missing trait bounds that can cause API unsoundness.
 - A change to set the owner of the file operations vtable in `GenDisk`.
 - Two bug fixes for the rnull driver.

 
28 Sep 2026: [PULL REQUEST] Intel IOMMU updates for v7.4 [+ + +]
Hi Joerg,

 
25 Sep 2026: PECI changes for v7.4-rc1 [+ + +]
SGkgR3JlZyENCg0KUGxlYXNlIHB1bGwgUEVDSSB1cGRhdGUgZm9yIExpbnV4IHY3LjQuDQoNClRo
YW5rcw0KLUl3b25hDQoNClRoZSBmb2xsb3dpbmcgY2hhbmdlcyBzaW5jZSBjb21taXQgOTNmNTE1
NzllN2RmMjQ4NzgwMjE0MDk0NDE4ZjIwNTI1MzM4M2NjNToNCg0KICBMaW51eCA3LjMtcmM0ICgy
MDI2LTA5LTIwIDEzOjQ4OjE1IC0wNzAwKQ0KDQphcmUgYXZhaWxhYmxlIGluIHRoZSBHaXQgcmVw
b3NpdG9yeSBhdDoNCg0KICBnaXQ6Ly9naXQua2VybmVsLm9yZy9wdWIvc2NtL2xpbnV4L2tlcm5l
bC9naXQvaXdpL2xpbnV4LmdpdCB0YWdzL3BlY2ktbmV4dC03LjQtcmMxDQoNCmZvciB5b3UgdG8g
ZmV0Y2ggY2hhbmdlcyB1cCB0byA0MjUxMjVlNmQ0MDhiNTk2OWFmYjk5YzNlOTVhMzkxZjFmMWFk
ODFkOg0KDQogIHBlY2k6IG5wY206IEluaXRpYWxpemUgc3RhdGUgYmVmb3JlIHJlcXVlc3Rpbmcg
SVJRICgyMDI2LTA5LTI1IDIyOjIwOjM4ICswMjAwKQ0KDQotLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpVcGRhdGUgcGVjaS1u
ZXh0IGZvciB2Ny40LXJjMQ0KDQpTbWFsbCBmaXhlcyBpbiBjb250cm9sbGVyIGRyaXZlcnMgaW5j
bHVkaW5nOg0KLSBmaXggZm9yIHVuaW5pdGlhbGl6ZWQgY2xrX2luaXRfZGF0YSBzdHJ1Y3R1cmUg
KHBlY2ktYXNwZWVkKSwNCi0gbW92aW5nIGxvY2sgYW5kIGNvbXBsZXRpb24gaW5pdGlhbGl6YXRp
b25zIGJlZm9yZSByZWdpc3RlcmluZw0KICBpbnRlcnJ1cHQgaGFuZGxlciB0byBhdm9pZCB1c2lu
ZyB0aGVtIHVuaW5pdGlhbGl6ZWQgKHBlY2ktYXNwZWVkLA0KICBwZWNpLW5wY20pLg0KDQotLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tDQpHZWVydCBVeXR0ZXJob2V2ZW4gKDEpOg0KICAgICAgcGVjaTogY29udHJvbGxlcjogYXNw
ZWVkOiBNYWtlIHN1cmUgY2xrX2luaXRfZGF0YSBpcyBmdWxseSBpbml0aWFsaXplZA0KDQpSdW55
dSBYaWFvICgyKToNCiAgICAgIHBlY2k6IGFzcGVlZDogSW5pdGlhbGl6ZSBzdGF0ZSBiZWZvcmUg
cmVxdWVzdGluZyBJUlENCiAgICAgIHBlY2k6IG5wY206IEluaXRpYWxpemUgc3RhdGUgYmVmb3Jl
IHJlcXVlc3RpbmcgSVJRDQoNCiBkcml2ZXJzL3BlY2kvY29udHJvbGxlci9wZWNpLWFzcGVlZC5j
IHwgOCArKysrLS0tLQ0KIGRyaXZlcnMvcGVjaS9jb250cm9sbGVyL3BlY2ktbnBjbS5jICAgfCA2
ICsrKy0tLQ0KIDIgZmlsZXMgY2hhbmdlZCwgNyBpbnNlcnRpb25zKCspLCA3IGRlbGV0aW9ucygt
KQ0K
 
21 Sep 2026: power sequencing dependencies for v7.4-rc1 [+ + +]
Hi!

tree to satisfy the dependencies for supporting BT on Monza.

Thanks,
Bartosz

power: sequencing: provide and use pwrseq_is_controllable()

Add a new core power sequencing consumer functions:
pwrseq_is_controllable(). This allows users to check whether the
sequencer's target is actually host-controllable.

 
2 Sep 2026: Immutable branch for coreboot directory rename for v7.4 [+ + +]