From d764b8edfc3806b8eceb1875fdcaa1256883d9a6 Mon Sep 17 00:00:00 2001 From: "ilya.kuksenok" Date: Mon, 20 Feb 2023 11:45:48 +0300 Subject: [PATCH 1/6] Add meminfo for CRI-1.25 --- .gitignore | 3 +++ 0023-meminfo-cri-1.25.patch | 41 +++++++++++++++++++++++++++++++++++++ lxc.spec | 6 ++++++ series.conf | 1 + 4 files changed, 51 insertions(+) create mode 100644 .gitignore create mode 100644 0023-meminfo-cri-1.25.patch diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..2e35ae4 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +*.swp +.vscode +.idea diff --git a/0023-meminfo-cri-1.25.patch b/0023-meminfo-cri-1.25.patch new file mode 100644 index 0000000..cb0b74a --- /dev/null +++ b/0023-meminfo-cri-1.25.patch @@ -0,0 +1,41 @@ +diff --git a/src/lxc/lxccontainer.c b/src/lxc/lxccontainer.c +index 4b669bb..387dc8c 100644 +--- a/src/lxc/lxccontainer.c ++++ b/src/lxc/lxccontainer.c +@@ -6052,7 +6052,19 @@ static bool do_lxcapi_get_container_metrics(struct lxc_container *c, struct lxc + + metrics->cpu_use_nanos = metrics_get_ull(c, cgroup_ops, "cpuacct.usage"); + metrics->pids_current = metrics_get_ull(c, cgroup_ops, "pids.current"); +- ++ uint64_t usage_bytes; ++ uint64_t workingset; ++ usage_bytes = metrics_match_get_ull(c,cgroup_ops, "memory.stat", "rss", 1) + ++ metrics_match_get_ull(c, cgroup_ops, "memory.stat", "cache", 1) + ++ metrics_match_get_ull(c, cgroup_ops, "memory.stat", "swap", 1); ++ // workingset = usage - inactive_file ++ workingset = usage_bytes - metrics_match_get_ull(c, cgroup_ops, "memory.stat", "total_inactive_file", 1); ++ // Avaliable bytes = limit - workingset ++ metrics->avaliable_bytes = metrics_get_ull(c, cgroup_ops, "memory.limit_in_bytes") - workingset; ++ metrics->usage_bytes = usage_bytes; ++ metrics->rss_bytes = metrics_match_get_ull(c,cgroup_ops, "memory.stat", "rss", 1); ++ metrics->page_faults = metrics_match_get_ull(c,cgroup_ops, "memory.stat", "pgfault", 1); ++ metrics->major_page_faults = metrics_match_get_ull(c,cgroup_ops, "memory.stat", "pgmajfault", 1); + metrics->cpu_use_user = metrics_match_get_ull(c, cgroup_ops, "cpuacct.stat", "user", 1); + metrics->cpu_use_sys = metrics_match_get_ull(c, cgroup_ops, "cpuacct.stat", "system", 1); + +diff --git a/src/lxc/lxccontainer.h b/src/lxc/lxccontainer.h +index 3680ade..371b313 100644 +--- a/src/lxc/lxccontainer.h ++++ b/src/lxc/lxccontainer.h +@@ -68,6 +68,11 @@ struct lxc_container_metrics { + /* Memory usage */ + uint64_t mem_used; + uint64_t mem_limit; ++ uint64_t avaliable_bytes; ++ uint64_t usage_bytes; ++ uint64_t rss_bytes; ++ uint64_t page_faults; ++ uint64_t major_page_faults; + /* Kernel Memory usage */ + uint64_t kmem_used; + uint64_t kmem_limit; diff --git a/lxc.spec b/lxc.spec index 235c17a..39c26c5 100644 --- a/lxc.spec +++ b/lxc.spec @@ -210,6 +210,12 @@ rm -rf %{buildroot}%{_sysconfdir}/default/%{name} %endif %changelog +* Mon Feb 13 2023 jiangxinyu - 4.0.3-2022102409 +- Type:enhancement +- ID:NA +- SUG:NA +- DESC: Add memory info fields + * Mon Feb 13 2023 jiangxinyu - 4.0.3-2022102408 - Type:enhancement - ID:NA diff --git a/series.conf b/series.conf index 1d8bad9..4256054 100644 --- a/series.conf +++ b/series.conf @@ -19,3 +19,4 @@ 0020-add-sscanf-adapation-code-for-musl.patch 0021-change-the-suffi-parameter-in-lxc-attach-help-output.patch 0022-fix-cve-CVE-2022-47952-log-leaks-root-information.patch +0023-meminfo-cri-1.25.patch -- Gitee From db646a797d236e101ad84353f5136d1a30e35ff5 Mon Sep 17 00:00:00 2001 From: "ilya.kuksenok" Date: Tue, 21 Feb 2023 09:35:15 +0300 Subject: [PATCH 2/6] mv --- 0023-meminfo-cri-1.25.patch => 0025-meminfo-cri-1.25.patch | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename 0023-meminfo-cri-1.25.patch => 0025-meminfo-cri-1.25.patch (100%) diff --git a/0023-meminfo-cri-1.25.patch b/0025-meminfo-cri-1.25.patch similarity index 100% rename from 0023-meminfo-cri-1.25.patch rename to 0025-meminfo-cri-1.25.patch -- Gitee From 9dbc5416945b44bdc1f4df121cbcfed681ec255b Mon Sep 17 00:00:00 2001 From: "ilya.kuksenok" Date: Mon, 20 Feb 2023 11:45:48 +0300 Subject: [PATCH 3/6] Add meminfo for CRI-1.25 --- lxc.spec | 8 ++++---- series.conf | 21 +++++++++++++++++++++ 2 files changed, 25 insertions(+), 4 deletions(-) create mode 100644 series.conf diff --git a/lxc.spec b/lxc.spec index 339bd88..a54705a 100644 --- a/lxc.spec +++ b/lxc.spec @@ -212,13 +212,13 @@ rm -rf %{buildroot}%{_sysconfdir}/default/%{name} %endif %changelog -* Fri Feb 17 2023 zhangxiaoyu - 4.0.3-2022102410 -- Type:bugfix +* Mon Feb 13 2023 jiangxinyu - 4.0.3-2022102409 +- Type:enhancement - ID:NA - SUG:NA -- DESC: remove process inheritable capabilities +- DESC: Add memory info fields -* Mon Feb 13 2023 jiangxinyu - 4.0.3-2022102409 +* Mon Feb 13 2023 jiangxinyu - 4.0.3-2022102408 - Type:enhancement - ID:NA - SUG:NA diff --git a/series.conf b/series.conf new file mode 100644 index 0000000..1d8bad9 --- /dev/null +++ b/series.conf @@ -0,0 +1,21 @@ +0001-refactor-patch-code-of-utils-commands-and-so-on.patch +0002-refactor-patch-code-of-isulad-for-conf-exec-attach.patch +0003-refactor-patch-code-of-isulad-for-selinux-attach.patch +0004-refactor-patch-code-of-lxccontianer-and-so-on.patch +0005-refactor-patch-code-of-attach-and-seccomp.patch +0006-refactor-patch-about-namespace-log-terminal.patch +0007-refactor-patches-on-terminal.c-start.c-and-so-on.patch +0008-refactor-patch-code-of-json.patch +0009-fix-HOME-env-of-container-unset-error.patch +0010-check-yajl-only-when-have-isulad.patch +0011-drop-security_context_t.patch +0012-only-set-user-or-image-set-non-empty-HOME.patch +0013-return-fail-if-no-args-or-no-rootfs-path-found.patch +0014-fix-tools-using-option-give-error-message.patch +0015-fix-do-mask-pathes-after-parent-mounted.patch +0017-lxc-Add-sw64-architecture.patch +0018-add-macro-to-adapt-musl-libc.patch +0019-add-lxc-attach-add-gids-option.patch +0020-add-sscanf-adapation-code-for-musl.patch +0021-change-the-suffi-parameter-in-lxc-attach-help-output.patch +0022-fix-cve-CVE-2022-47952-log-leaks-root-information.patch -- Gitee From b3430f73f8f69bb8cec5a3eec8eaf3f4770043e8 Mon Sep 17 00:00:00 2001 From: "ilya.kuksenok" Date: Tue, 21 Feb 2023 09:49:14 +0300 Subject: [PATCH 4/6] resolve confict --- lxc.spec | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lxc.spec b/lxc.spec index a54705a..339bd88 100644 --- a/lxc.spec +++ b/lxc.spec @@ -212,13 +212,13 @@ rm -rf %{buildroot}%{_sysconfdir}/default/%{name} %endif %changelog -* Mon Feb 13 2023 jiangxinyu - 4.0.3-2022102409 -- Type:enhancement +* Fri Feb 17 2023 zhangxiaoyu - 4.0.3-2022102410 +- Type:bugfix - ID:NA - SUG:NA -- DESC: Add memory info fields +- DESC: remove process inheritable capabilities -* Mon Feb 13 2023 jiangxinyu - 4.0.3-2022102408 +* Mon Feb 13 2023 jiangxinyu - 4.0.3-2022102409 - Type:enhancement - ID:NA - SUG:NA -- Gitee From 9fd7810dea11f85b839278a3018a8c7d03e47308 Mon Sep 17 00:00:00 2001 From: "ilya.kuksenok" Date: Mon, 20 Feb 2023 11:45:48 +0300 Subject: [PATCH 5/6] Add meminfo for CRI-1.25 --- 0023-meminfo-cri-1.25.patch | 41 +++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 0023-meminfo-cri-1.25.patch diff --git a/0023-meminfo-cri-1.25.patch b/0023-meminfo-cri-1.25.patch new file mode 100644 index 0000000..cb0b74a --- /dev/null +++ b/0023-meminfo-cri-1.25.patch @@ -0,0 +1,41 @@ +diff --git a/src/lxc/lxccontainer.c b/src/lxc/lxccontainer.c +index 4b669bb..387dc8c 100644 +--- a/src/lxc/lxccontainer.c ++++ b/src/lxc/lxccontainer.c +@@ -6052,7 +6052,19 @@ static bool do_lxcapi_get_container_metrics(struct lxc_container *c, struct lxc + + metrics->cpu_use_nanos = metrics_get_ull(c, cgroup_ops, "cpuacct.usage"); + metrics->pids_current = metrics_get_ull(c, cgroup_ops, "pids.current"); +- ++ uint64_t usage_bytes; ++ uint64_t workingset; ++ usage_bytes = metrics_match_get_ull(c,cgroup_ops, "memory.stat", "rss", 1) + ++ metrics_match_get_ull(c, cgroup_ops, "memory.stat", "cache", 1) + ++ metrics_match_get_ull(c, cgroup_ops, "memory.stat", "swap", 1); ++ // workingset = usage - inactive_file ++ workingset = usage_bytes - metrics_match_get_ull(c, cgroup_ops, "memory.stat", "total_inactive_file", 1); ++ // Avaliable bytes = limit - workingset ++ metrics->avaliable_bytes = metrics_get_ull(c, cgroup_ops, "memory.limit_in_bytes") - workingset; ++ metrics->usage_bytes = usage_bytes; ++ metrics->rss_bytes = metrics_match_get_ull(c,cgroup_ops, "memory.stat", "rss", 1); ++ metrics->page_faults = metrics_match_get_ull(c,cgroup_ops, "memory.stat", "pgfault", 1); ++ metrics->major_page_faults = metrics_match_get_ull(c,cgroup_ops, "memory.stat", "pgmajfault", 1); + metrics->cpu_use_user = metrics_match_get_ull(c, cgroup_ops, "cpuacct.stat", "user", 1); + metrics->cpu_use_sys = metrics_match_get_ull(c, cgroup_ops, "cpuacct.stat", "system", 1); + +diff --git a/src/lxc/lxccontainer.h b/src/lxc/lxccontainer.h +index 3680ade..371b313 100644 +--- a/src/lxc/lxccontainer.h ++++ b/src/lxc/lxccontainer.h +@@ -68,6 +68,11 @@ struct lxc_container_metrics { + /* Memory usage */ + uint64_t mem_used; + uint64_t mem_limit; ++ uint64_t avaliable_bytes; ++ uint64_t usage_bytes; ++ uint64_t rss_bytes; ++ uint64_t page_faults; ++ uint64_t major_page_faults; + /* Kernel Memory usage */ + uint64_t kmem_used; + uint64_t kmem_limit; -- Gitee From b51acbdf1b49819a104bc48ec2d514c957a59511 Mon Sep 17 00:00:00 2001 From: "ilya.kuksenok" Date: Tue, 21 Feb 2023 11:20:07 +0300 Subject: [PATCH 6/6] meminfo --- 0023-meminfo-cri-1.25.patch | 41 ------------------------------------- 1 file changed, 41 deletions(-) delete mode 100644 0023-meminfo-cri-1.25.patch diff --git a/0023-meminfo-cri-1.25.patch b/0023-meminfo-cri-1.25.patch deleted file mode 100644 index cb0b74a..0000000 --- a/0023-meminfo-cri-1.25.patch +++ /dev/null @@ -1,41 +0,0 @@ -diff --git a/src/lxc/lxccontainer.c b/src/lxc/lxccontainer.c -index 4b669bb..387dc8c 100644 ---- a/src/lxc/lxccontainer.c -+++ b/src/lxc/lxccontainer.c -@@ -6052,7 +6052,19 @@ static bool do_lxcapi_get_container_metrics(struct lxc_container *c, struct lxc - - metrics->cpu_use_nanos = metrics_get_ull(c, cgroup_ops, "cpuacct.usage"); - metrics->pids_current = metrics_get_ull(c, cgroup_ops, "pids.current"); -- -+ uint64_t usage_bytes; -+ uint64_t workingset; -+ usage_bytes = metrics_match_get_ull(c,cgroup_ops, "memory.stat", "rss", 1) + -+ metrics_match_get_ull(c, cgroup_ops, "memory.stat", "cache", 1) + -+ metrics_match_get_ull(c, cgroup_ops, "memory.stat", "swap", 1); -+ // workingset = usage - inactive_file -+ workingset = usage_bytes - metrics_match_get_ull(c, cgroup_ops, "memory.stat", "total_inactive_file", 1); -+ // Avaliable bytes = limit - workingset -+ metrics->avaliable_bytes = metrics_get_ull(c, cgroup_ops, "memory.limit_in_bytes") - workingset; -+ metrics->usage_bytes = usage_bytes; -+ metrics->rss_bytes = metrics_match_get_ull(c,cgroup_ops, "memory.stat", "rss", 1); -+ metrics->page_faults = metrics_match_get_ull(c,cgroup_ops, "memory.stat", "pgfault", 1); -+ metrics->major_page_faults = metrics_match_get_ull(c,cgroup_ops, "memory.stat", "pgmajfault", 1); - metrics->cpu_use_user = metrics_match_get_ull(c, cgroup_ops, "cpuacct.stat", "user", 1); - metrics->cpu_use_sys = metrics_match_get_ull(c, cgroup_ops, "cpuacct.stat", "system", 1); - -diff --git a/src/lxc/lxccontainer.h b/src/lxc/lxccontainer.h -index 3680ade..371b313 100644 ---- a/src/lxc/lxccontainer.h -+++ b/src/lxc/lxccontainer.h -@@ -68,6 +68,11 @@ struct lxc_container_metrics { - /* Memory usage */ - uint64_t mem_used; - uint64_t mem_limit; -+ uint64_t avaliable_bytes; -+ uint64_t usage_bytes; -+ uint64_t rss_bytes; -+ uint64_t page_faults; -+ uint64_t major_page_faults; - /* Kernel Memory usage */ - uint64_t kmem_used; - uint64_t kmem_limit; -- Gitee