A Lot Of Memory Management "MM" Improvements Merged For Linux 7.1
([Linux Kernel] 2 Hours Ago
Linux 7.1 MM)
- Reference: 0001628282
- News link: https://www.phoronix.com/news/Linux-7.1-MM
- Source link:
Andrew Morton recently sent out his various "MM" related pull requests for the ongoing [1]Linux 7.1 kernel. There are a number of memory management optimizations in this next kernel version, which is always nice to see but all the more so these days with the inflated RAM pricing and other computer component prices.
Among the MM patches now merged for Linux 7.1 include:
- A patch series to remove the static "swap_map" and using the swap table for the swap count directly can save around ~30% memory usage for static swap metadata. There is a "slight" performance benefit too.
- Replacing Maple Tree's big node struct with maple copy is helping reduce stack usage and working toward future developments.
- Improved khugepaged scan logic helps reduce CPU usage.
- Batched checking of the young flag for the Multi-Gen LRU (MGLRU) helps improve performance during large folio reclamation when MGLRU Is enabled. A 60% performance improvement on a 32-bit ARM64 server was observed when allocating 10G clean file-backed folios in a memory cgroup and then reclaiming 8G file-backed folios.
- Various fixes to the ZRAM code.
- Preparations for khugepaged mTHP support.
More details for those interested via the [2]MM pull . There was also a [3]second set of MM updates merged for Linux 7.1 bringing:
- A set of 33 patches to address the dying memcg cgroup problem where no-longer-used memory control group would persist for a period of time pointlessly consuming memory.
- The Kexec Handover (KHO) code will now track the prior kernel version and Kexec boot count when booting into the next kernel version.
- Improvements to the Zswap code and cleaned up the Zswap crypto compression handling.
There is also the [4]non-MM pull with a few more items to note:
- The hung task detector can now be reset/zeroed-out. Back in 2024 the Linux kernel added [5]a counter to keep track of hung tasks since boot . A newer effort is [6]the ability to reset that counter by writing zero to the sysfs file if wanting to clear it out after clearing prior cruft/issues on the system without rebooting the system. That counter is available at /proc/sys/kernel/hung_task_detect_count .
- Improvements to the hard lock-up detector code.
- Cleaning up the XOR library used for the RAID5 parity is now in much better shape.
Lots of great work. Linux 7.1 kernel Git benchmarks beginning in the coming days on Phoronix.
[1] https://www.phoronix.com/search/Linux+7.1
[2] https://lore.kernel.org/lkml/20260413214952.62836ac9df0eb348ee4aeb2b@linux-foundation.org/
[3] https://lore.kernel.org/lkml/20260418223823.b45ef6a83267fa886d182ed7@linux-foundation.org/T/#u
[4] https://lore.kernel.org/lkml/20260416095229.d83bcb0f00859adcd5f90853@linux-foundation.org/
[5] https://www.phoronix.com/news/Linux-hung_task_detect_count
[6] https://www.phoronix.com/news/Linux-Reset-Hung-Task-Count
Among the MM patches now merged for Linux 7.1 include:
- A patch series to remove the static "swap_map" and using the swap table for the swap count directly can save around ~30% memory usage for static swap metadata. There is a "slight" performance benefit too.
- Replacing Maple Tree's big node struct with maple copy is helping reduce stack usage and working toward future developments.
- Improved khugepaged scan logic helps reduce CPU usage.
- Batched checking of the young flag for the Multi-Gen LRU (MGLRU) helps improve performance during large folio reclamation when MGLRU Is enabled. A 60% performance improvement on a 32-bit ARM64 server was observed when allocating 10G clean file-backed folios in a memory cgroup and then reclaiming 8G file-backed folios.
- Various fixes to the ZRAM code.
- Preparations for khugepaged mTHP support.
More details for those interested via the [2]MM pull . There was also a [3]second set of MM updates merged for Linux 7.1 bringing:
- A set of 33 patches to address the dying memcg cgroup problem where no-longer-used memory control group would persist for a period of time pointlessly consuming memory.
- The Kexec Handover (KHO) code will now track the prior kernel version and Kexec boot count when booting into the next kernel version.
- Improvements to the Zswap code and cleaned up the Zswap crypto compression handling.
There is also the [4]non-MM pull with a few more items to note:
- The hung task detector can now be reset/zeroed-out. Back in 2024 the Linux kernel added [5]a counter to keep track of hung tasks since boot . A newer effort is [6]the ability to reset that counter by writing zero to the sysfs file if wanting to clear it out after clearing prior cruft/issues on the system without rebooting the system. That counter is available at /proc/sys/kernel/hung_task_detect_count .
- Improvements to the hard lock-up detector code.
- Cleaning up the XOR library used for the RAID5 parity is now in much better shape.
Lots of great work. Linux 7.1 kernel Git benchmarks beginning in the coming days on Phoronix.
[1] https://www.phoronix.com/search/Linux+7.1
[2] https://lore.kernel.org/lkml/20260413214952.62836ac9df0eb348ee4aeb2b@linux-foundation.org/
[3] https://lore.kernel.org/lkml/20260418223823.b45ef6a83267fa886d182ed7@linux-foundation.org/T/#u
[4] https://lore.kernel.org/lkml/20260416095229.d83bcb0f00859adcd5f90853@linux-foundation.org/
[5] https://www.phoronix.com/news/Linux-hung_task_detect_count
[6] https://www.phoronix.com/news/Linux-Reset-Hung-Task-Count