Linus Torvalds Rejects Audit Performance Fix and RCU Kconfig Option for Linux 7.1
#Security

Linus Torvalds Rejects Audit Performance Fix and RCU Kconfig Option for Linux 7.1

Hardware Reporter
2 min read

Linus Torvalds blocked two pull requests for the upcoming Linux 7.1 kernel, criticizing an audit subsystem performance patch as a 'hack' that mishandles filesystem paths and rejecting a Kconfig option for automatic RCU stall panics as a 'horrible thing' that complicates kernel configuration for users.

Linus Torvalds has rejected two early pull requests for the Linux 7.1 merge window, citing fundamental design flaws and configuration philosophy concerns. The decisions highlight his ongoing emphasis on code purity and user accessibility in kernel development.

LINUX KERNEL

The first rejected patch aimed to address a performance regression in the audit subsystem on high core count processors. Christian Brauner and Waiman Long from Red Hat proposed adding new fs_struct helpers to reduce excessive path_get() and path_put() calls during audit_context setup and reset paths. Their analysis showed that enabled audit triggers numerous get_fs_pwd() calls, causing spinlock contention on a single pwd's dentry lock when many processes share a working directory. This creates noticeable slowdowns compared to audit disabled scenarios, particularly on systems with growing core counts.

Torvalds dismissed the approach as fundamentally flawed. He argued the solution incorrectly treats the pwd and root paths as separate entities when they are intrinsically linked. "The pwd and root paths are two sides of the same coin, and any code that treats them this differently is wrong," he stated. He believed the patch would expose audit's historical inability to handle chroot environments to non-audit users, calling the fix a "hack" that made an existing mistake visible more broadly. Brauner concurred with the assessment and withdrew the pull request.

The second rejection concerned a Kconfig option named BOOTPARAM_RCU_STALL_PANIC. Proposed to improve high availability setups, it would enable automatic kernel panics on RCU stalls by default via kernel.panic_on_rcu_stall sysctl, eliminating the need for runtime configuration. Torvalds reacted strongly against adding such options to kernel configuration.

"No. Dammit, stop doing these horrible things," he wrote. He emphasized that kernel configuration remains a significant barrier for newcomers attempting to build custom kernels. Kconfig files serve as the primary interface for normal users interested in kernel development, and adding niche options degrades that experience. He insisted users seeking this behavior should use existing sysctl or kernel command line interfaces instead, noting the same outcome is achievable with boot parameter sysctl.kernel.panic_on_rcu_stall=true.

These rejections underscore Torvalds' commitment to maintaining kernel integrity. For the audit subsystem, the performance issue remains open for a cleaner solution that respects the unified nature of filesystem path handling. Regarding RCU stalls, administrators retain flexible configuration methods without complicating the core kernel build process. As Linux 7.1 development continues, such gatekeeping decisions shape the balance between advancing performance and preserving accessibility for the broader user and developer community.

Comments

Loading comments...