From Fedora Project Wiki

Revision as of 13:33, 22 June 2023 by Amoloney (talk | contribs) (Change Accepted)

Increase vm.max_map_count value

Summary

This change aims at increasing the default value of the vm.max_map_count sysctl

Owner


Current status

  • Targeted release: Fedora Linux 39
  • Last updated: 2023-06-22
  • devel thread
  • FESCo issue: #2993
  • Tracker bug: <will be assigned by the Wrangler>
  • Release notes tracker: <will be assigned by the Wrangler>

Detailed Description

Increase the vm.max_map_count sysctl default value.

The goal is to improve compatibility with Windows games through wine or steam. Read on "Benefit to Fedora" for examples.

It was agreed to set the limit to 1048576, up from the Linux default 65530.

Feedback

This was briefly discussed in #fedora-devel and received positively. Concerns over possible downsides were raised. I am not aware of any, but more input here is desired.

Benefit to Fedora

The following Windows games will work out of the box (through wine or steam):

Scope

  • Proposal owners: Add the new default to /usr/lib/sysctl.d/
  • Other developers: No work will be necessary unless the new default is found breaking some software
  • Release engineering: N/A (not needed for this Change)
  • Policies and guidelines: N/A (not needed for this Change)
  • Trademark approval: N/A (not needed for this Change)
  • Alignment with Community Initiatives: N/A

Upgrade/compatibility impact

Upgrading to the new Fedora release will seamlessly update the default. No manual intervention is necessary.

How To Test

Temporarily set the new value with ​sudo sysctl -w vm.max_map_count=1048576

Run any of the software listed above to verify that it now works.

Or run any other software to verify the change causes no regression.


User Experience

More Windows games will work out-of-the-box (through wine or steam)

Dependencies

None


Contingency Plan

  • Contingency mechanism: Revert the shipped configuration
  • Contingency deadline: Final Freeze
  • Blocks release? No


Documentation

The default value is currently hard-coded in the kernel, at https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/tree/include/linux/mm.h?h=v6.2.12#n203 . It cannot be changed through the kernel defconfig, instead it must be set through sysctl.

Release Notes

The default value of the vm.max_map_count sysctl is increased