← Back to archive

Daily update · Oct 21, 2026

Linux 7.4 merge window: RCU, timers, ACPI, and legacy uaccess removal

Mainline pulls in removal of __get_user()/__put_user(), RCU callback expansion, PCI/MSI error-recovery handling, and ACPI enumeration changes.

In brief

Today's mainline pull requests for the 7.4 merge window include the long-overdue removal of the legacy __get_user() and __put_user() accessors, along with RCU, timer, interrupt, and ACPI updates. Kbuild and Rust tooling also received a round of maintenance changes.

Core kernel

Legacy __get_user()/__put_user() helpers removed

A merge branch removes the historical __get_user() and __put_user() accessors. The merge message describes them as entirely historical and warns that every misuse is slower and insecure compared with the right interface.

Why it matters: The old helpers are gone, so any code that still uses them would need to switch to the recommended accessor variants. This prevents new callers from reaching for them.

22a78a25438d

RCU callbacks can now be requested from NMI and scheduler-lock contexts

RCU (read-copy-update), the kernel's synchronization mechanism, now allows call_rcu() and call_srcu() to be invoked from NMI (non-maskable interrupt) handlers and while holding scheduler locks, using irq-work handlers. The merge message also mentions rcutorture additions.

Why it matters: Kernel subsystems that need to defer work from these very restricted contexts gain a new safe RCU option. No direct user-visible behavior is claimed in the merge data.

a7f2bc878742

Timers and interrupts

Timer, NOHZ, and VDSO updates

The timer pulls add Renesas RZ/N1 timer support and rework MIPS GIC timers. A NOHZ (tickless idle) change adds BLOCK_SOFTIRQ to the hotplug-safe pending mask to avoid false-positive warnings, and a VDSO (the user-space-visible clock mapping) fix scales CLOCK_AUX base calculations against the timekeeper's fractional nanoseconds.

Why it matters: Affected platforms get new or improved timer behavior, while the NOHZ and VDSO fixes target correctness in edge cases.

b4460f89a274aaf3d47e53061ae0ee1ba729ccc4d9f8912a

MSI/MSI-X programming skipped during PCI error recovery

The generic IRQ core now avoids programming MSI/MSI-X (PCI interrupt mechanisms) while a PCI channel is offline in the error-recovery path, preventing access to a link that is down. The IRQ driver branch also removes futile resource-cleanup attempts when SiFive/PLIC (a RISC-V interrupt controller) probing fails.

Why it matters: PCI error recovery should be less likely to touch unavailable hardware, and the PLIC probe path is simplified.

1fbe92c39e722e973d488223

ACPI, build, and maintenance

ACPI enumeration avoids premature power management

Core ACPI (Advanced Configuration and Power Interface) device enumeration is reworked so ACPI power management is not initialized too early for devices that still have unmet dependencies.

Why it matters: This should reduce device-ordering and power-resource initialization problems on ACPI systems, particularly when devices depend on not-yet-ready components.

4df4d2a577db

Kbuild, Rust, bitmap, and CSD-lock maintenance

Kbuild (the kernel build system) suppresses compiler flags in debug info for external module builds and uses -fmacro-prefix-map in more places. The Rust tree updates the vendored zerocopy crate to v0.8.62, bitmap updates remove the __MAKE_OP() macro and clean up the parser, and CSD-lock updates add reporting of stall recovery time.

Why it matters: Build infrastructure and diagnostics get cleaned up; in-kernel Rust gets a newer dependency. These are mostly developer- and maintainer-facing changes.

bb29b957eaaa12d5fc96ebbb9ba46df34488a56a18c14aea

Source commits509 entries +
22a78a25438d

Merge __{get,put}_user() removal branch

Linus Torvalds · Oct 21, 2026

9ba46df34488

Merge tag 'bitmap-for-v7.4-rc1' of https://github.com/norov/linux

Linus Torvalds · Oct 21, 2026

a7f2bc878742

Merge tag 'rcu.2026.10.12b' of git://git.kernel.org/pub/scm/linux/kernel/git/rcu/linux

Linus Torvalds · Oct 21, 2026

12d5fc96ebbb

Merge tag 'rust-7.4' of git://git.kernel.org/pub/scm/linux/kernel/git/ojeda/linux

Linus Torvalds · Oct 21, 2026

bb29b957eaaa

Merge tag 'kbuild-7.4-1' of git://git.kernel.org/pub/scm/linux/kernel/git/kbuild/linux

Linus Torvalds · Oct 21, 2026

a56a18c14aea

Merge tag 'csd-lock.2026.10.12a' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu

Linus Torvalds · Oct 21, 2026

1fbe92c39e72

Merge tag 'irq-core-2026-10-20' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Linus Torvalds · Oct 21, 2026

2e973d488223

Merge tag 'irq-drivers-2026-10-20' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Linus Torvalds · Oct 21, 2026

b4460f89a274

Merge tag 'timers-clocksource-2026-10-20' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Linus Torvalds · Oct 21, 2026

aaf3d47e5306

Merge tag 'timers-core-2026-10-20' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Linus Torvalds · Oct 21, 2026

1ae0ee1ba729

Merge tag 'timers-nohz-2026-10-20' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Linus Torvalds · Oct 21, 2026

ccc4d9f8912a

Merge tag 'timers-vdso-2026-10-20' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Linus Torvalds · Oct 21, 2026

4df4d2a577db

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

Linus Torvalds · Oct 21, 2026