@cryptotaxi247 / netdata-1 / commits / 8f3a6e85a

Fix swap size calculation for cgroups (#11617)

Vladimir Kobal committed Oct 5, 2021 at 08:17 UTC 8f3a6e85a786cc4935cfef5be6f342202452fa9e
1 file changed +11 -3
collectors/cgroups.plugin/sys_fs_cgroup.c
+11 -3
@@ -2911,7 +2911,15 @@ void update_systemd_services_charts(
2911 if(unlikely(!cg->rd_swap_usage))
2912 cg->rd_swap_usage = rrddim_add(st_swap_usage, cg->chart_id, cg->chart_title, 1, 1024 * 1024, RRD_ALGORITHM_ABSOLUTE);
2913
2914 - rrddim_set_by_pointer(st_swap_usage, cg->rd_swap_usage, cg->memory.msw_usage_in_bytes);
2914 + if(!(cg->options & CGROUP_OPTIONS_IS_UNIFIED)) {
2915 + rrddim_set_by_pointer(
2916 + st_swap_usage,
2917 + cg->rd_swap_usage,
2918 + (cg->memory.msw_usage_in_bytes - (cg->memory.usage_in_bytes + cg->memory.total_inactive_file)) > 0 ?
2919 + cg->memory.msw_usage_in_bytes - (cg->memory.usage_in_bytes + cg->memory.total_inactive_file) : 0);
2920 + } else {
2921 + rrddim_set_by_pointer(st_swap_usage, cg->rd_swap_usage, cg->memory.msw_usage_in_bytes);
2922 + }
2923 }
2924
2925 if(likely(do_io && cg->io_service_bytes.updated)) {
@@ -3601,8 +3609,8 @@ void update_cgroup_charts(int update_every) {
3609 rrddim_set(
3610 cg->st_mem_usage,
3611 "swap",
3604 - (cg->memory.msw_usage_in_bytes > cg->memory.usage_in_bytes) ?
3605 - cg->memory.msw_usage_in_bytes - cg->memory.usage_in_bytes : 0);
3612 + (cg->memory.msw_usage_in_bytes - (cg->memory.usage_in_bytes + cg->memory.total_inactive_file)) > 0 ?
3613 + cg->memory.msw_usage_in_bytes - (cg->memory.usage_in_bytes + cg->memory.total_inactive_file) : 0);
3614 } else {
3615 rrddim_set(cg->st_mem_usage, "swap", cg->memory.msw_usage_in_bytes);
3616 }