summaryrefslogtreecommitdiff
path: root/0179-iSulad-support-shim-stats-cmd.patch
diff options
context:
space:
mode:
Diffstat (limited to '0179-iSulad-support-shim-stats-cmd.patch')
-rw-r--r--0179-iSulad-support-shim-stats-cmd.patch63
1 files changed, 63 insertions, 0 deletions
diff --git a/0179-iSulad-support-shim-stats-cmd.patch b/0179-iSulad-support-shim-stats-cmd.patch
new file mode 100644
index 0000000..b2a542e
--- /dev/null
+++ b/0179-iSulad-support-shim-stats-cmd.patch
@@ -0,0 +1,63 @@
+From ab9c9d71482e355e0015ac1c6331849f4ff98ee0 Mon Sep 17 00:00:00 2001
+From: zhongjiawei <zhongjiawei1@huawei.com>
+Date: Fri, 10 Jan 2025 11:51:52 +0800
+Subject: [PATCH 179/198] iSulad: support shim stats cmd
+
+---
+ src/daemon/modules/runtime/shim/shim_rt_ops.c | 32 +++++++++++++++++--
+ 1 file changed, 29 insertions(+), 3 deletions(-)
+
+diff --git a/src/daemon/modules/runtime/shim/shim_rt_ops.c b/src/daemon/modules/runtime/shim/shim_rt_ops.c
+index fce18ade..30b5e442 100644
+--- a/src/daemon/modules/runtime/shim/shim_rt_ops.c
++++ b/src/daemon/modules/runtime/shim/shim_rt_ops.c
+@@ -779,11 +779,37 @@ int rt_shim_listpids(const char *id, const char *runtime, const rt_listpids_para
+ return 0;
+ }
+
++static void transform_stats_info_from_runtime(struct Stats *stats,
++ struct runtime_container_resources_stats_info *info)
++{
++ if (info == NULL) {
++ return;
++ }
++ info->pids_current = stats->pids_current;
++ info->cpu_use_nanos = stats->cpu_use_nanos;
++ info->cpu_system_use = stats->cpu_system_use;
++ info->mem_used = stats->mem_used;
++ info->mem_limit = stats->mem_limit;
++ info->rss_bytes = stats->rss_bytes;
++ info->inactive_file_total = stats->inactive_file_total;
++ info->page_faults = stats->page_faults;
++ info->major_page_faults = stats->major_page_faults;
++ info->swap_used = stats->swap_used;
++ info->swap_limit = stats->swap_limit;
++ info->blkio_read = stats->blkio_read;
++ info->blkio_write = stats->blkio_write;
++}
++
+ int rt_shim_resources_stats(const char *id, const char *runtime, const rt_stats_params_t *params,
+ struct runtime_container_resources_stats_info *rs_stats)
+ {
+- ERROR("rt_shim_resources_stats not impl");
+- return -1;
++ struct Stats ss = { 0 };
++ if (shim_v2_stats(id, &ss) != 0) {
++ ERROR("rt_shim_stats failed");
++ return -1;
++ }
++ transform_stats_info_from_runtime(&ss, rs_stats);
++ return 0;
+ }
+
+ int rt_shim_resize(const char *id, const char *runtime, const rt_resize_params_t *params)
+@@ -820,4 +846,4 @@ int rt_shim_kill(const char *id, const char *runtime, const rt_kill_params_t *pa
+ int rt_shim_rebuild_config(const char *name, const char *runtime, const rt_rebuild_config_params_t *params)
+ {
+ return 0;
+-}
+\ No newline at end of file
++}
+--
+2.34.1
+