I have a systemd service that sets MemoryHigh and MemoryMax. If I look under its cgroup in /sys/fs/cgroup/memory the memory.limit_in_bytes file matches the limit set by MemoryMax, but where do I find the value set by MemoryHigh? There is a file named memory.soft_limit_in_bytes so I expected it to be that, but its value is always 9223372036854771712 (8 EB?).

The doc for MemoryHigh says

This controls the "memory.high" control group attribute

but there is no file with that name.

This is on Ubuntu 18.04.


The resource control documentation also mentions that

MemoryLow= and MemoryHigh= are effective only on unified hierarchy.

“Unified hierarchy” means cgroup v2 only; you’re using v1 or hybrid mode. To use unified hierarchy, if it’s not the default, the system should be booted with the systemd.unified_cgroup_hierarchy option.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.