Initially merged back for the Linux 6.13 kernel was EXECMEM_ROX support for module text on x86_64 systems. With this caching of large ROX pages it can help with lowering TLB instruction pressure and enhancing performance. But this EXECMEM_ROX support that was contributed by a Microsoft engineer ended up being reverted in the final days of Linux 6.13. The revert came due to bugs and not having any Linux x86 maintainers signing off on the code. This code has been getting into shape for trying again with the mainline kernel.
When EXECMEM_ROX was disabled for Linux 6.13, it was going to try again “next cycle” to be all cleaned up and have the necessary approvals. But EXECMEM_ROX was never submitted for the Linux v6.14 merge window… Now that the merge window is over, the patches have been queued into a tip/tip.git branch and thus being staged for likely submission when the v6.15 merge window rolls around in the spring.
There have been patches worked on to rework the handling of ROX caches for module text allocations. The improved code by Microsoft’s Mike Rapoport as well as now a patch from Intel’s Kirill Shutemov looks like the prior issues have been addressed.
The reworked patches were queued up yesterday into the tip/tip.git’s x86/mm branch. With it being queued up into a TIP branch, it should be submitted for the v6.15 merge window in March barring any last minute issues from being discovered or objections raised by Linus Torvalds during the next merge window.