-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/74985/
-----------------------------------------------------------

(Updated May 14, 2024, 10:23 p.m.)


Review request for mesos and Benjamin Mahler.


Changes
-------

remove trailing white space


Repository: mesos


Description (updated)
-------

Introduces `::usage` to the MemoryControllerProcess to report the total
memory usage of a cgroup as well as memory usage statistics provided
by `cgroups2::memory:stats`.

Patch also fixes the failures on mesos::internal::tests::MemoryIsolatorTest 
when running on a CentOS 9 system with cGroupsV2 configured.

For the mesos::internal::slave::MemorySubsystemProcess::usage function, the 
mapping reflects the stats reported in the v1 usage function, with the 
exception of swap memory as we disable the cgroups_limit_swap flag in v2

Attributes used in in usage reporting:

set_mem_total_bytes: memory.usage_in_bytes in v1, memory.current in v2 - 
current usage for memory
set_mem_kmem_usage_bytes: memory.kmem.usage_in_bytes in v1, memory.stat.kernel 
in v2 - Amount of total kernel memory
set_mem_kmem_tcp_usage_bytes: memory.kmem.tcp.usage_in_bytes in v1, 
memory.stat.sock in v2 - Amount of memory used in network transmission buffers
set_mem_file_bytes: memory.stat.total_cache in v1, memory.stat.file in v2 - 
Amount of memory used to cache filesystem data
set_mem_cache_bytes: memory.stat.total_cache in v1, memory.stat.file in v2 - 
Amount of memory used to cache filesystem data
set_mem_anon_bytes: memory.stat.total_rss in v1, memory.stat.anon in v2 - 
Amount of memory used in anonymous mappings
set_mem_rss_bytes: memory.stat.total_rss in v1, memory.stat.anon in v2 - Amount 
of memory used in anonymous mappings
set_mem_mapped_file_bytes: memory.stat.total_mapped_file in v1, 
memory.stat.file_mapped in v2 - Amount of cached filesystem data
set_mem_unevictable_bytes: memory.stat.total_unevictable in v1, memory.min in 
v2 - Hard memory protection. If the memory usage of a cgroup is within its 
effective min boundary, the cgroup’s memory won’t be reclaimed under any 
conditions


Docs referenced: 
https://docs.kernel.org/admin-guide/cgroup-v1/memory.html#benefits-and-purpose-of-the-memory-controller
https://docs.kernel.org/admin-guide/cgroup-v2.html#memory
https://stackoverflow.com/questions/74796436/rss-memory-equivalent-in-cgroup-v2


Diffs (updated)
-----

  include/mesos/mesos.proto 2aad66d676a3fcfa5299581a1c316309da7cf4f3 
  include/mesos/v1/mesos.proto d4ab6f35fdabe9673a480f0716dc5d589c645e26 
  src/linux/cgroups2.hpp 619c75737a3836839b2eb63924a3ac51f8baf75e 
  src/slave/containerizer/mesos/isolators/cgroups2/controllers/memory.hpp 
2e60b2c19a781c2d8ab24e89e440383ca517868c 
  src/slave/containerizer/mesos/isolators/cgroups2/controllers/memory.cpp 
732b1c65febdc78d8854e571bb02a9d367528434 
  src/tests/containerizer/memory_isolator_tests.cpp 
ec0f359a253ebaf8d7937876ba6f265d93d45ddd 
  src/tests/mesos.cpp 762200cda73e3e1cda0755c44f4fffc974f0927b 


Diff: https://reviews.apache.org/r/74985/diff/3/

Changes: https://reviews.apache.org/r/74985/diff/2-3/


Testing
-------


Thanks,

Jason Zhou

Reply via email to