This value contains a flag that enables memory overcommitment.
When this flag is 0, the kernel compares the userspace memory request size against total memory plus swap and rejects obvious overcommits.
When this flag is 1, the kernel pretends there is always enough memory until it actually runs out.
When this flag is 2, the kernel uses a “never overcommit” policy that attempts to prevent any overcommit of memory. Note that user_reserve_kbytes affects this policy.
This feature can be very useful because there are a lot of programs that malloc() huge amounts of memory “just-in-case” and don’t use much of it.
The default value is 0.
See Documentation/mm/overcommit-accounting.rst and mm/util.c::__vm_enough_memory() for more information.