From b0389bc604f29a7cb7ffb58c25d3da6ab4239820 Mon Sep 17 00:00:00 2001 From: gaohuatao Date: Thu, 11 Nov 2021 19:44:11 +0800 Subject: [PATCH] upgrade from upstream Signed-off-by: gaohuatao --- ...thread-detach-to-avoid-resource-leak.patch | 32 - ...r-fix-udev-wait-thread-resource-leak.patch | 134 -- 0003-clean-code-fix-clean-code.patch | 61 - 0004-judge-isula-load-file-exists.patch | 29 - ...ge_load.sh-CI-to-test-file-not-exist.patch | 29 - 0006-do-not-pause-container-when-copy.patch | 1918 ----------------- 0007-add-testcases-for-isula-cp.patch | 157 -- ...e-the-function-isula_-docker_-to-do_.patch | 107 - ...ility-of-coredump-in-CRI-streaming-s.patch | 1078 --------- 0010-fix-ramdom-coredump-if-pull-failed.patch | 52 - 0011-shim-optimize-io-stream.patch | 257 --- 0012-add-CI-to-test-shim-io.patch | 412 ---- ...CI-add-testcase-for-exec-without-pty.patch | 106 - ...-adapt-for-sparse-file-when-tar-file.patch | 69 - ...nlock-and-destroy-lock-when-clean-up.patch | 29 - ...ver-do-not-set-g_graphdriver-to-NULL.patch | 32 - 0017-ignore-error-if-get-ip-failed.patch | 39 - ...-log-container-info-when-add-into-gc.patch | 35 - ...-function-to-init-log-in-export-paus.patch | 146 -- ...g-config-should-before-command-parse.patch | 623 ------ ...verify-for-device-cgroup-access-mode.patch | 102 - ...-change-log-level-from-warn-to-error.patch | 26 - ...Fix-create-env-path-dir-if-dir-exist.patch | 27 - ...-memusage-with-used-total_inactive_f.patch | 287 --- ...it-health-check-residue-and-multiple.patch | 677 ------ ...ry-testcase-for-health-check-monitor.patch | 63 - ...r-lock-when-clean-container-resource.patch | 36 - ...before-calculate-to-make-sure-fd-clo.patch | 36 - ...fix-wrong-memory-usage-info-in-stats.patch | 41 - ...h-check-log-to-disk-before-unhealthy.patch | 36 - ...move-and-replace-dst_path-while-unpa.patch | 179 -- ...-cp.sh-should-not-include-pull-fd-ch.patch | 93 - 0033-devmapper-modify-log-msg.patch | 116 - ...ix-restore-fail-to-remove-name-index.patch | 111 - ...calls-DAEMON_CLEAR_ERRORMSG-to-preve.patch | 26 - 0036-modify-resume-task-name.patch | 359 --- 0037-cleadcode-Remove-extra-semicolons.patch | 41 - ...cy-add-support-unless-stopped-policy.patch | 39 - ...se-for-unless-stopped-restart-policy.patch | 79 - 0040-bugfix-for-embedded-image.patch | 162 -- ...sole-client-ignore-stdin-close-event.patch | 75 - 0042-delete-lxc-from-runc-CI-test.patch | 182 -- 0043-add-embedded-testcases.patch | 635 ------ ...-ContainerStats-interface-field-valu.patch | 100 - ...tuped-network-if-mult-network-failed.patch | 275 --- ...d-testcase-for-rollback-mutlnetworks.patch | 242 --- ...evel-from-EVENT-to-WARN-to-reduce-lo.patch | 328 --- 0048-isulad-shim-fix-shim-exit-bug.patch | 249 --- ...ull-option-when-create-run-container.patch | 116 - 0050-add-testcase-for-pull-option.patch | 38 - 0051-remove-redundant-code.patch | 25 - ...umount-when-resize2fs-command-failed.patch | 35 - 0053-support-isula-exec-workdir.patch | 174 -- ...-add-testcase-for-isula-exec-workdir.patch | 72 - ...te-mtab-when-runtime-is-kata-runtime.patch | 36 - ...-unchecked-layer-ignore-rootfs-layer.patch | 91 - ...k-running-container-with-image-integ.patch | 38 - ...n-inspect-container-when-daemon-sets.patch | 34 - ...eadme-add-related-resouces-in-readme.patch | 33 - 0060-update-docs-build_guide_zh.md.patch | 25 - ...-fix-health_check.sh-execute-failure.patch | 88 - 0062-support-cgroup-v2.patch | 488 ----- 0063-add-testcases-for-cgroup-v2.patch | 785 ------- ...add-configure-image-registry-address.patch | 44 - 0065-add-iSulad-experiment-in-README.patch | 32 - 0066-CI-add-testcase-for-long-label.patch | 106 - ...ory-leak-when-pack-annotation-failed.patch | 92 - ...-script-to-install-iSulad-on-Centos7.patch | 198 -- ...-IO-copy-thread-in-CRI-exec-operatio.patch | 1061 --------- 0070-CI-add-testcase-for-cri-stream.patch | 191 -- ...sage-normal-when-stats-with-no-strea.patch | 69 - ...t-to-install-iSulad-on-Ubuntu-20.04-.patch | 118 - ...pdate-libarchive-requirement-to-v3.4.patch | 26 - ...t-the-mistake-package-libarchive-dev.patch | 26 - ...ocomplete-in-isula-command-line-mode.patch | 140 -- ...iSulad-fix-bugs-of-isula-runtime-ops.patch | 27 - ...mpatible-with-registry-URL-ending-in.patch | 57 - ...t-run-on-2-cpu-4G-memory-environment.patch | 443 ---- 0079-added-default-completion.patch | 41 - 0080-fix-coredump-when-poweroff.patch | 80 - ...ontainer-when-build-failed-for-debug.patch | 36 - ...ecrease-log-level-of-check-dm-device.patch | 85 - 0083-fix-bugs-when-pulling-image.patch | 206 -- 0084-add-testcase-for-pulling-image.patch | 55 - ...turn-value-to-valid-use-NULL-pointer.patch | 84 - ...move-reinstall_thinpool-to-helper.sh.patch | 192 -- 0087-CI-activate-vg-isulad.patch | 46 - 0088-CI-devicemapper-add-filter.patch | 31 - ...yslog-tag-support-dynamic-tag-values.patch | 555 ----- ...-add-testcase-for-contailer-log-opts.patch | 218 -- 0091-CI-run-the-containers-one-by-one.patch | 40 - 0092-completion-isula-images.patch | 102 - 0093-fix-memory-leak-when-pulling-image.patch | 110 - 0094-isula-fix-help-xx-coredump.patch | 51 - 0095-workdir-must-be-absolute-path.patch | 30 - 0096-check-if-pull-option-is-valid.patch | 42 - ...-of-stats-not-right-when-runtime-is-.patch | 28 - 0098-log-adjust-log-level-to-reduce-log.patch | 207 -- ...se-ali-registry-instead-of-docker.io.patch | 26 - ...ck-key-s-case-when-parse-http-header.patch | 60 - 0101-CI-use-docker.io-registry.patch | 57 - 0102-CI-fix-integration_check.sh.patch | 45 - 0103-optimize-token-generation.patch | 83 - ...-string-array-initialization-failure.patch | 35 - iSulad.spec | 128 +- v2.0.8.tar.gz => v2.0.10.tar.gz | Bin 3367710 -> 3422435 bytes 106 files changed, 21 insertions(+), 17327 deletions(-) delete mode 100644 0001-make-thread-detach-to-avoid-resource-leak.patch delete mode 100644 0002-devmapper-fix-udev-wait-thread-resource-leak.patch delete mode 100644 0003-clean-code-fix-clean-code.patch delete mode 100644 0004-judge-isula-load-file-exists.patch delete mode 100644 0005-modify-image_load.sh-CI-to-test-file-not-exist.patch delete mode 100644 0006-do-not-pause-container-when-copy.patch delete mode 100644 0007-add-testcases-for-isula-cp.patch delete mode 100644 0008-image_cb-rename-the-function-isula_-docker_-to-do_.patch delete mode 100644 0009-fix-small-probability-of-coredump-in-CRI-streaming-s.patch delete mode 100644 0010-fix-ramdom-coredump-if-pull-failed.patch delete mode 100644 0011-shim-optimize-io-stream.patch delete mode 100644 0012-add-CI-to-test-shim-io.patch delete mode 100644 0013-CI-add-testcase-for-exec-without-pty.patch delete mode 100644 0014-adapt-for-sparse-file-when-tar-file.patch delete mode 100644 0015-driver-do-not-unlock-and-destroy-lock-when-clean-up.patch delete mode 100644 0016-driver-do-not-set-g_graphdriver-to-NULL.patch delete mode 100644 0017-ignore-error-if-get-ip-failed.patch delete mode 100644 0018-GC-add-log-container-info-when-add-into-gc.patch delete mode 100644 0019-log-use-the-same-function-to-init-log-in-export-paus.patch delete mode 100644 0020-init-log-config-should-before-command-parse.patch delete mode 100644 0021-spec-add-verify-for-device-cgroup-access-mode.patch delete mode 100644 0022-log-change-log-level-from-warn-to-error.patch delete mode 100644 0023-Fix-create-env-path-dir-if-dir-exist.patch delete mode 100644 0024-iSulad-calculate-memusage-with-used-total_inactive_f.patch delete mode 100644 0025-fix-container-exit-health-check-residue-and-multiple.patch delete mode 100644 0026-CI-supplementary-testcase-for-health-check-monitor.patch delete mode 100644 0027-add-container-lock-when-clean-container-resource.patch delete mode 100644 0028-sleep-some-time-before-calculate-to-make-sure-fd-clo.patch delete mode 100644 0029-stats-fix-wrong-memory-usage-info-in-stats.patch delete mode 100644 0030-save-health-check-log-to-disk-before-unhealthy.patch delete mode 100644 0031-unpack-try-to-remove-and-replace-dst_path-while-unpa.patch delete mode 100644 0032-fd-leak-check-in-cp.sh-should-not-include-pull-fd-ch.patch delete mode 100644 0033-devmapper-modify-log-msg.patch delete mode 100644 0034-name_id_index-fix-restore-fail-to-remove-name-index.patch delete mode 100644 0035-thread-function-calls-DAEMON_CLEAR_ERRORMSG-to-preve.patch delete mode 100644 0036-modify-resume-task-name.patch delete mode 100644 0037-cleadcode-Remove-extra-semicolons.patch delete mode 100644 0038-restart-policy-add-support-unless-stopped-policy.patch delete mode 100644 0039-CI-add-testcase-for-unless-stopped-restart-policy.patch delete mode 100644 0040-bugfix-for-embedded-image.patch delete mode 100644 0041-console-client-ignore-stdin-close-event.patch delete mode 100644 0042-delete-lxc-from-runc-CI-test.patch delete mode 100644 0043-add-embedded-testcases.patch delete mode 100644 0044-fix-the-error-of-ContainerStats-interface-field-valu.patch delete mode 100644 0045-rollback-setuped-network-if-mult-network-failed.patch delete mode 100644 0046-add-testcase-for-rollback-mutlnetworks.patch delete mode 100644 0047-log-adjust-log-level-from-EVENT-to-WARN-to-reduce-lo.patch delete mode 100644 0048-isulad-shim-fix-shim-exit-bug.patch delete mode 100644 0049-support-pull-option-when-create-run-container.patch delete mode 100644 0050-add-testcase-for-pull-option.patch delete mode 100644 0051-remove-redundant-code.patch delete mode 100644 0052-devicemapper-umount-when-resize2fs-command-failed.patch delete mode 100644 0053-support-isula-exec-workdir.patch delete mode 100644 0054-add-testcase-for-isula-exec-workdir.patch delete mode 100644 0055-ignore-to-create-mtab-when-runtime-is-kata-runtime.patch delete mode 100644 0056-remove-unchecked-layer-ignore-rootfs-layer.patch delete mode 100644 0057-add-test-to-check-running-container-with-image-integ.patch delete mode 100644 0058-fix-coredump-when-inspect-container-when-daemon-sets.patch delete mode 100644 0059-Readme-add-related-resouces-in-readme.patch delete mode 100644 0060-update-docs-build_guide_zh.md.patch delete mode 100644 0061-fix-health_check.sh-execute-failure.patch delete mode 100644 0062-support-cgroup-v2.patch delete mode 100644 0063-add-testcases-for-cgroup-v2.patch delete mode 100644 0064-Readme-add-configure-image-registry-address.patch delete mode 100644 0065-add-iSulad-experiment-in-README.patch delete mode 100644 0066-CI-add-testcase-for-long-label.patch delete mode 100644 0067-event-fix-memory-leak-when-pack-annotation-failed.patch delete mode 100644 0068-Readme-add-script-to-install-iSulad-on-Centos7.patch delete mode 100644 0069-cri-fix-residual-IO-copy-thread-in-CRI-exec-operatio.patch delete mode 100644 0070-CI-add-testcase-for-cri-stream.patch delete mode 100644 0071-stats-show-cpu-usage-normal-when-stats-with-no-strea.patch delete mode 100644 0072-Readme-add-script-to-install-iSulad-on-Ubuntu-20.04-.patch delete mode 100644 0073-update-libarchive-requirement-to-v3.4.patch delete mode 100644 0074-correct-the-mistake-package-libarchive-dev.patch delete mode 100644 0075-Added-autocomplete-in-isula-command-line-mode.patch delete mode 100644 0076-iSulad-fix-bugs-of-isula-runtime-ops.patch delete mode 100644 0077-Compatible-with-registry-URL-ending-in.patch delete mode 100644 0078-CI-fix-CI-to-fit-run-on-2-cpu-4G-memory-environment.patch delete mode 100644 0079-added-default-completion.patch delete mode 100644 0080-fix-coredump-when-poweroff.patch delete mode 100644 0081-CI-keep-container-when-build-failed-for-debug.patch delete mode 100644 0082-devmapper-decrease-log-level-of-check-dm-device.patch delete mode 100644 0083-fix-bugs-when-pulling-image.patch delete mode 100644 0084-add-testcase-for-pulling-image.patch delete mode 100644 0085-check-return-value-to-valid-use-NULL-pointer.patch delete mode 100644 0086-move-reinstall_thinpool-to-helper.sh.patch delete mode 100644 0087-CI-activate-vg-isulad.patch delete mode 100644 0088-CI-devicemapper-add-filter.patch delete mode 100644 0089-syslog-tag-support-dynamic-tag-values.patch delete mode 100644 0090-add-testcase-for-contailer-log-opts.patch delete mode 100644 0091-CI-run-the-containers-one-by-one.patch delete mode 100644 0092-completion-isula-images.patch delete mode 100644 0093-fix-memory-leak-when-pulling-image.patch delete mode 100644 0094-isula-fix-help-xx-coredump.patch delete mode 100644 0095-workdir-must-be-absolute-path.patch delete mode 100644 0096-check-if-pull-option-is-valid.patch delete mode 100644 0097-fix-memory-usage-of-stats-not-right-when-runtime-is-.patch delete mode 100644 0098-log-adjust-log-level-to-reduce-log.patch delete mode 100644 0099-CI-use-ali-registry-instead-of-docker.io.patch delete mode 100644 0100-do-not-check-key-s-case-when-parse-http-header.patch delete mode 100644 0101-CI-use-docker.io-registry.patch delete mode 100644 0102-CI-fix-integration_check.sh.patch delete mode 100644 0103-optimize-token-generation.patch delete mode 100644 0104-fix-string-array-initialization-failure.patch rename v2.0.8.tar.gz => v2.0.10.tar.gz (52%) diff --git a/0001-make-thread-detach-to-avoid-resource-leak.patch b/0001-make-thread-detach-to-avoid-resource-leak.patch deleted file mode 100644 index 11ce9bb..0000000 --- a/0001-make-thread-detach-to-avoid-resource-leak.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 1ef7a43907ac6fc521cedd2b4744be4d102efd32 Mon Sep 17 00:00:00 2001 -From: WangFengTu -Date: Thu, 31 Dec 2020 14:05:25 +0800 -Subject: [PATCH 01/53] make thread detach to avoid resource leak - -Signed-off-by: WangFengTu ---- - src/daemon/modules/image/oci/registry/registry.c | 8 ++++++++ - 1 file changed, 8 insertions(+) - -diff --git a/src/daemon/modules/image/oci/registry/registry.c b/src/daemon/modules/image/oci/registry/registry.c -index 391af4fb..3fba2039 100644 ---- a/src/daemon/modules/image/oci/registry/registry.c -+++ b/src/daemon/modules/image/oci/registry/registry.c -@@ -1389,6 +1389,14 @@ static void *register_layers_in_thread(void *arg) - size_t i = 0; - struct timespec ts = {0}; - -+ ret = pthread_detach(pthread_self()); -+ if (ret != 0) { -+ ERROR("Set thread detach fail"); -+ goto out; -+ } -+ -+ prctl(PR_SET_NAME, "register_layer"); -+ - for (i = 0; i < desc->layers_len; i++) { - mutex_lock(&desc->mutex); - while (wait_fetch_complete(&infos[i])) { --- -2.25.1 - diff --git a/0002-devmapper-fix-udev-wait-thread-resource-leak.patch b/0002-devmapper-fix-udev-wait-thread-resource-leak.patch deleted file mode 100644 index 5bfbd74..0000000 --- a/0002-devmapper-fix-udev-wait-thread-resource-leak.patch +++ /dev/null @@ -1,134 +0,0 @@ -From 025416aae9f7eaaa8fe5ad52ecbbf6692505186b Mon Sep 17 00:00:00 2001 -From: gaohuatao -Date: Thu, 31 Dec 2020 14:31:12 +0800 -Subject: [PATCH 02/53] devmapper: fix udev wait thread resource leak - -Signed-off-by: gaohuatao ---- - .../graphdriver/devmapper/driver_devmapper.c | 2 +- - .../graphdriver/devmapper/wrapper_devmapper.c | 35 +++++++++++-------- - 2 files changed, 22 insertions(+), 15 deletions(-) - -diff --git a/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/driver_devmapper.c b/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/driver_devmapper.c -index ab60845d..f2586f0d 100644 ---- a/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/driver_devmapper.c -+++ b/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/driver_devmapper.c -@@ -216,7 +216,7 @@ char *devmapper_mount_layer(const char *id, const struct graphdriver *driver, - } - - if (mount_device(id, mnt_point_dir, mount_opts, driver->devset) != 0) { -- ERROR("Mount device:%s to path:%s failed", id, mnt_parent_dir); -+ ERROR("Mount device:%s to path:%s failed", id, mnt_point_dir); - ret = -1; - goto out; - } -diff --git a/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/wrapper_devmapper.c b/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/wrapper_devmapper.c -index 112e2b73..1dcdf595 100644 ---- a/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/wrapper_devmapper.c -+++ b/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/wrapper_devmapper.c -@@ -358,28 +358,32 @@ out: - - static void *udev_wait_process(void *data) - { -+ int ret = 0; - udev_wait_pth_t *uwait = (udev_wait_pth_t *)data; - -- if (dm_udev_wait(uwait->cookie) != 1) { -- pthread_mutex_lock(&uwait->udev_mutex); -- uwait->state = ERR_UDEV_WAIT; -- pthread_mutex_unlock(&uwait->udev_mutex); -- DAEMON_CLEAR_ERRMSG(); -- pthread_exit((void *)ERR_UDEV_WAIT); -+ if (pthread_detach(pthread_self()) != 0) { -+ CRIT("Start: set thread detach fail"); -+ goto out; - } - -+ ret = dm_udev_wait(uwait->cookie); - pthread_mutex_lock(&uwait->udev_mutex); -- uwait->state = DEV_OK; -+ if (ret != 1) { -+ uwait->state = ERR_UDEV_WAIT; -+ } else { -+ uwait->state = DEV_OK; -+ } - pthread_mutex_unlock(&uwait->udev_mutex); -+ -+out: - DAEMON_CLEAR_ERRMSG(); -- pthread_exit((void *)0); -+ return NULL; - } - - // UdevWait waits for any processes that are waiting for udev to complete the specified cookie. - void dev_udev_wait(uint32_t cookie) - { - pthread_t tid; -- int thread_result = 0; - udev_wait_pth_t *uwait = NULL; - float timeout = 0; - struct timeval start, end; -@@ -403,7 +407,7 @@ void dev_udev_wait(uint32_t cookie) - } - - if (pthread_create(&tid, NULL, udev_wait_process, uwait) != 0) { -- ERROR("devmapper: create udev wait process thread failed"); -+ ERROR("devmapper: create udev wait process thread error:%s", strerror(errno)); - goto free_out; - } - -@@ -419,15 +423,14 @@ void dev_udev_wait(uint32_t cookie) - ERROR("devmapper: get time failed"); - goto free_out; - } -+ - timeout = (end.tv_sec - start.tv_sec) + (end.tv_usec - start.tv_usec) / 1000000; // seconds - if (timeout >= (float)dm_udev_wait_timeout) { - if (dm_udev_complete(cookie) != 1) { - ERROR("Failed to complete udev cookie %u on udev wait timeout", cookie); - goto free_out; - } -- INFO("devmapper: udev wait join thread start..."); -- pthread_join(tid, (void *)&thread_result); -- INFO("devmapper: udev wait join thread end exit %d", thread_result); -+ ERROR("Wait on udev cookie time out"); - break; - } - } -@@ -482,6 +485,7 @@ int dev_delete_device_force(const char *name) - } - - udev: -+ DEBUG("Start udev wait on delete device force"); - dev_udev_wait(cookie); - - out: -@@ -536,6 +540,7 @@ int dev_remove_device_deferred(const char *name) - } - - udev: -+ DEBUG("Start udev wait on remove device deferred"); - dev_udev_wait(cookie); - out: - if (dmt != NULL) { -@@ -825,6 +830,7 @@ int dev_resume_device(const char *dm_name) - ret = -1; - } - -+ DEBUG("Start udev wait on resume device"); - dev_udev_wait(cookie); - - out: -@@ -886,7 +892,8 @@ int dev_active_device(const char *pool_name, const char *name, int device_id, ui - ERROR("devicemapper: error running deviceCreate (ActivateDevice) %d", ret); - ret = -1; - } -- -+ -+ DEBUG("Start udev wait on create device"); - dev_udev_wait(cookie); - out: - if (dmt != NULL) { --- -2.25.1 - diff --git a/0003-clean-code-fix-clean-code.patch b/0003-clean-code-fix-clean-code.patch deleted file mode 100644 index 0b01663..0000000 --- a/0003-clean-code-fix-clean-code.patch +++ /dev/null @@ -1,61 +0,0 @@ -From 200f49ff353ee8266505316659493ffc4082c803 Mon Sep 17 00:00:00 2001 -From: lifeng68 -Date: Tue, 5 Jan 2021 18:48:20 +0800 -Subject: [PATCH 03/53] clean code: fix clean code - -Signed-off-by: lifeng68 ---- - .../layer_store/graphdriver/devmapper/wrapper_devmapper.c | 2 +- - src/utils/console/console.c | 2 +- - src/utils/cutils/utils.c | 2 -- - 3 files changed, 2 insertions(+), 4 deletions(-) - -diff --git a/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/wrapper_devmapper.c b/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/wrapper_devmapper.c -index 1dcdf595..5748ec54 100644 ---- a/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/wrapper_devmapper.c -+++ b/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/wrapper_devmapper.c -@@ -892,7 +892,7 @@ int dev_active_device(const char *pool_name, const char *name, int device_id, ui - ERROR("devicemapper: error running deviceCreate (ActivateDevice) %d", ret); - ret = -1; - } -- -+ - DEBUG("Start udev wait on create device"); - dev_udev_wait(cookie); - out: -diff --git a/src/utils/console/console.c b/src/utils/console/console.c -index cb748196..7fda519c 100644 ---- a/src/utils/console/console.c -+++ b/src/utils/console/console.c -@@ -68,7 +68,7 @@ static int console_cb_tty_stdin_with_escape(int fd, uint32_t events, void *cbdat - } - - if (c == 'q' && ts->saw_tty_exit) { -- ret = 1; -+ ret = EPOLL_LOOP_HANDLE_CLOSE; - goto out; - } - -diff --git a/src/utils/cutils/utils.c b/src/utils/cutils/utils.c -index 1e777dc3..9107f540 100644 ---- a/src/utils/cutils/utils.c -+++ b/src/utils/cutils/utils.c -@@ -493,7 +493,6 @@ out: - static void set_stderr_buf(char **stderr_buf, const char *format, ...) - { - char errbuf[BUFSIZ + 1] = { 0 }; -- char *jerr = NULL; - - UTIL_FREE_AND_SET_NULL(*stderr_buf); - -@@ -511,7 +510,6 @@ static void set_stderr_buf(char **stderr_buf, const char *format, ...) - if (*stderr_buf == NULL) { - *stderr_buf = util_strdup_s(errbuf); - } -- free(jerr); - } - - static int open_devnull(void) --- -2.25.1 - diff --git a/0004-judge-isula-load-file-exists.patch b/0004-judge-isula-load-file-exists.patch deleted file mode 100644 index a3a5b1d..0000000 --- a/0004-judge-isula-load-file-exists.patch +++ /dev/null @@ -1,29 +0,0 @@ -From c0b6c4187a3c66bef8b75a63e699df1be57d05b4 Mon Sep 17 00:00:00 2001 -From: gaohuatao -Date: Mon, 11 Jan 2021 18:29:26 +0800 -Subject: [PATCH 04/53] judge isula load file exists - -Signed-off-by: gaohuatao ---- - src/cmd/isula/images/load.c | 5 +++++ - 1 file changed, 5 insertions(+) - -diff --git a/src/cmd/isula/images/load.c b/src/cmd/isula/images/load.c -index 343d8d6d..0fb8014e 100644 ---- a/src/cmd/isula/images/load.c -+++ b/src/cmd/isula/images/load.c -@@ -162,6 +162,11 @@ int cmd_load_main(int argc, const char **argv) - g_cmd_load_args.file = file; - } - -+ if (!util_file_exists(g_cmd_load_args.file)) { -+ COMMAND_ERROR("File %s is not exist", g_cmd_load_args.file); -+ exit(exit_code); -+ } -+ - ret = client_load_image(&g_cmd_load_args); - if (ret) { - exit(exit_code); --- -2.25.1 - diff --git a/0005-modify-image_load.sh-CI-to-test-file-not-exist.patch b/0005-modify-image_load.sh-CI-to-test-file-not-exist.patch deleted file mode 100644 index 3218d85..0000000 --- a/0005-modify-image_load.sh-CI-to-test-file-not-exist.patch +++ /dev/null @@ -1,29 +0,0 @@ -From e151821a1e092995836631b273bddc339cadffbe Mon Sep 17 00:00:00 2001 -From: gaohuatao -Date: Mon, 11 Jan 2021 18:33:39 +0800 -Subject: [PATCH 05/53] modify image_load.sh CI to test file not exist - -Signed-off-by: gaohuatao ---- - CI/test_cases/image_cases/image_load.sh | 5 +++++ - 1 file changed, 5 insertions(+) - -diff --git a/CI/test_cases/image_cases/image_load.sh b/CI/test_cases/image_cases/image_load.sh -index 8415e036..bf41f2af 100755 ---- a/CI/test_cases/image_cases/image_load.sh -+++ b/CI/test_cases/image_cases/image_load.sh -@@ -30,6 +30,11 @@ function test_image_load() - local test="isula load image test => (${FUNCNAME[@]})" - - msg_info "${test} starting..." -+ -+ # file is not exist, expect fail -+ isula load -i xxx.tar -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - image tar file not exist test failed" && ((ret++)) -+ - - # single image without --tag - isula load -i $single_image --- -2.25.1 - diff --git a/0006-do-not-pause-container-when-copy.patch b/0006-do-not-pause-container-when-copy.patch deleted file mode 100644 index e8bd7c0..0000000 --- a/0006-do-not-pause-container-when-copy.patch +++ /dev/null @@ -1,1918 +0,0 @@ -From b69da83db290057dde5dbe34e153fb0895e456e2 Mon Sep 17 00:00:00 2001 -From: WangFengTu -Date: Tue, 29 Dec 2020 10:16:13 +0800 -Subject: [PATCH 06/53] do not pause container when copy - -and use libarchive to do unpack/tar instead of -execute tar command. Once not pause container, -we need to chroot to container's rootfs first -to avoid symlink attrack when copy. - -Signed-off-by: WangFengTu ---- - src/cmd/isula/main.c | 20 + - src/cmd/isula/stream/cp.c | 3 +- - .../executor/container_cb/execution_stream.c | 133 ++-- - src/daemon/modules/image/oci/oci_load.c | 8 +- - .../graphdriver/devmapper/driver_devmapper.c | 6 +- - .../graphdriver/overlay2/driver_overlay2.c | 6 +- - src/utils/tar/isulad_tar.c | 405 +----------- - src/utils/tar/isulad_tar.h | 10 +- - src/utils/tar/util_archive.c | 611 ++++++++++++++++-- - src/utils/tar/util_archive.h | 15 +- - 10 files changed, 679 insertions(+), 538 deletions(-) - -diff --git a/src/cmd/isula/main.c b/src/cmd/isula/main.c -index d4a66695..a69df5d5 100644 ---- a/src/cmd/isula/main.c -+++ b/src/cmd/isula/main.c -@@ -14,6 +14,7 @@ - ******************************************************************************/ - - #include -+#include - - #include "isula_commands.h" - #include "create.h" -@@ -202,8 +203,27 @@ struct command g_commands[] = { - { NULL, false, NULL, NULL, NULL, NULL } // End of the list - }; - -+static int set_locale() -+{ -+ int ret = 0; -+ -+ /* Change from the standard (C) to en_US.UTF-8 locale, so libarchive can handle filename conversions.*/ -+ if (setlocale(LC_CTYPE, "en_US.UTF-8") == NULL) { -+ fprintf(stderr, "Could not set locale to en_US.UTF-8:%s", strerror(errno)); -+ ret = -1; -+ goto out; -+ } -+ -+out: -+ return ret; -+} -+ - int main(int argc, char **argv) - { -+ if (set_locale() != 0) { -+ exit(ECOMMON); -+ } -+ - if (connect_client_ops_init()) { - return ECOMMON; - } -diff --git a/src/cmd/isula/stream/cp.c b/src/cmd/isula/stream/cp.c -index 4ebca2b3..e954ed3d 100644 ---- a/src/cmd/isula/stream/cp.c -+++ b/src/cmd/isula/stream/cp.c -@@ -27,6 +27,7 @@ - #include "path.h" - #include "isula_connect.h" - #include "isulad_tar.h" -+#include "util_archive.h" - #include "command_parser.h" - #include "connect.h" - #include "io_wrapper.h" -@@ -124,7 +125,7 @@ static int client_copy_from_container(const struct client_arguments *args, const - srcinfo->path = util_strdup_s(srcpath); - srcinfo->isdir = S_ISDIR(response->stat->mode); - -- nret = archive_copy_to(&response->reader, false, srcinfo, resolved, &archive_err); -+ nret = archive_copy_to(&response->reader, srcinfo, resolved, &archive_err); - if (nret != 0) { - ret = nret; - } -diff --git a/src/daemon/executor/container_cb/execution_stream.c b/src/daemon/executor/container_cb/execution_stream.c -index fde5d41d..7d165fb9 100644 ---- a/src/daemon/executor/container_cb/execution_stream.c -+++ b/src/daemon/executor/container_cb/execution_stream.c -@@ -46,6 +46,7 @@ - #include "image_api.h" - #include "path.h" - #include "isulad_tar.h" -+#include "util_archive.h" - #include "container_api.h" - #include "error.h" - #include "isula_libutils/logger_json_file.h" -@@ -384,9 +385,18 @@ out: - return ret; - } - -+static char *get_tar_path(const char *srcdir, const char *srcbase, const char *container_fs) -+{ -+ if (!util_has_prefix(srcdir, container_fs)) { -+ ERROR("srcdir %s does not contain %s", srcdir, container_fs); -+ return NULL; -+ } -+ return util_path_join(srcdir + strlen(container_fs), srcbase); -+} -+ - static int archive_and_send_copy_data(const stream_func_wrapper *stream, - struct isulad_copy_from_container_response *response, const char *resolvedpath, -- const char *abspath) -+ const char *abspath, const char *container_fs) - { - int ret = -1; - int nret; -@@ -399,6 +409,7 @@ static int archive_and_send_copy_data(const stream_func_wrapper *stream, - char *buf = NULL; - char cleaned[PATH_MAX + 2] = { 0 }; - struct io_read_wrapper reader = { 0 }; -+ char *tar_path = NULL; - - buf = util_common_calloc_s(buf_len); - if (buf == NULL) { -@@ -422,7 +433,15 @@ static int archive_and_send_copy_data(const stream_func_wrapper *stream, - ERROR("split %s failed", abspath); - goto cleanup; - } -- nret = archive_path(srcdir, srcbase, absbase, false, &reader); -+ -+ tar_path = get_tar_path(srcdir, srcbase, container_fs); -+ if (tar_path == NULL) { -+ goto cleanup; -+ } -+ -+ DEBUG("archive chroot tar stream container_fs(%s) srcdir(%s) relative(%s) srcbase(%s) absbase(%s)", -+ container_fs, srcdir, tar_path, srcbase, absbase); -+ nret = archive_chroot_tar_stream(container_fs, tar_path, srcbase, absbase, &reader); - if (nret != 0) { - ERROR("Archive %s failed", resolvedpath); - goto cleanup; -@@ -445,6 +464,7 @@ static int archive_and_send_copy_data(const stream_func_wrapper *stream, - - ret = 0; - cleanup: -+ free(tar_path); - free(buf); - free(srcdir); - free(srcbase); -@@ -583,58 +603,6 @@ static container_path_stat *resolve_and_stat_path(const char *rootpath, const ch - return stat; - } - --static int pause_container(const container_t *cont) --{ -- int ret = 0; -- rt_pause_params_t params = { 0 }; -- const char *id = cont->common_config->id; -- -- params.rootpath = cont->root_path; -- params.state = cont->state_path; -- if (runtime_pause(id, cont->runtime, ¶ms)) { -- ERROR("Failed to pause container:%s", id); -- ret = -1; -- goto out; -- } -- -- container_state_set_paused(cont->state); -- -- if (container_state_to_disk(cont)) { -- ERROR("Failed to save container \"%s\" to disk", id); -- ret = -1; -- goto out; -- } -- --out: -- return ret; --} -- --static int resume_container(const container_t *cont) --{ -- int ret = 0; -- rt_resume_params_t params = { 0 }; -- const char *id = cont->common_config->id; -- -- params.rootpath = cont->root_path; -- params.state = cont->state_path; -- if (runtime_resume(id, cont->runtime, ¶ms)) { -- ERROR("Failed to resume container:%s", id); -- ret = -1; -- goto out; -- } -- -- container_state_reset_paused(cont->state); -- -- if (container_state_to_disk(cont)) { -- ERROR("Failed to save container \"%s\" to disk", id); -- ret = -1; -- goto out; -- } -- --out: -- return ret; --} -- - static int copy_from_container_cb(const struct isulad_copy_from_container_request *request, - const stream_func_wrapper *stream, char **err) - { -@@ -645,7 +613,6 @@ static int copy_from_container_cb(const struct isulad_copy_from_container_reques - container_path_stat *stat = NULL; - container_t *cont = NULL; - struct isulad_copy_from_container_response *response = NULL; -- bool need_pause = false; - - DAEMON_CLEAR_ERRMSG(); - if (request == NULL || stream == NULL || err == NULL) { -@@ -665,19 +632,10 @@ static int copy_from_container_cb(const struct isulad_copy_from_container_reques - goto unlock_container; - } - -- need_pause = container_is_running(cont->state) && !container_is_paused(cont->state); -- if (need_pause) { -- if (pause_container(cont) != 0) { -- ERROR("can't copy to a container which is cannot be paused"); -- isulad_set_error_message("can't copy to a container which is cannot be paused"); -- goto unlock_container; -- } -- } -- - nret = im_mount_container_rootfs(cont->common_config->image_type, cont->common_config->image, - cont->common_config->id); - if (nret != 0) { -- goto unpause_container; -+ goto unlock_container; - } - - stat = resolve_and_stat_path(cont->common_config->base_fs, request->srcpath, &resolvedpath, &abspath); -@@ -692,7 +650,7 @@ static int copy_from_container_cb(const struct isulad_copy_from_container_reques - goto cleanup_rootfs; - } - -- nret = archive_and_send_copy_data(stream, response, resolvedpath, abspath); -+ nret = archive_and_send_copy_data(stream, response, resolvedpath, abspath, cont->common_config->base_fs); - if (nret < 0) { - ERROR("Failed to send archive data"); - goto cleanup_rootfs; -@@ -705,10 +663,6 @@ cleanup_rootfs: - cont->common_config->id) != 0) { - WARN("Can not umount rootfs of container: %s", cont->common_config->id); - } --unpause_container: -- if (need_pause && resume_container(cont) != 0) { -- ERROR("can't resume container which has been paused before copy"); -- } - unlock_container: - container_unlock(cont); - container_unref(cont); -@@ -777,15 +731,16 @@ static ssize_t extract_stream_to_io_read(void *content, void *buf, size_t buf_le - return (ssize_t)(copy.data_len); - } - --int read_and_extract_archive(stream_func_wrapper *stream, const char *resolved_path, const char *transform) -+static int read_and_extract_archive(stream_func_wrapper *stream, const char *container_fs, -+ const char *dstdir_in_container, const char *src_rebase, -+ const char *dst_rebase) - { - int ret = -1; - char *err = NULL; - struct io_read_wrapper content = { 0 }; -- - content.context = stream; - content.read = extract_stream_to_io_read; -- ret = archive_untar(&content, false, resolved_path, transform, &err); -+ ret = archive_chroot_untar_stream(&content, container_fs, dstdir_in_container, src_rebase, dst_rebase, &err); - if (ret != 0) { - ERROR("Can not untar to container: %s", (err != NULL) ? err : "unknown"); - isulad_set_error_message("Can not untar to container: %s", (err != NULL) ? err : "unknown"); -@@ -795,7 +750,7 @@ int read_and_extract_archive(stream_func_wrapper *stream, const char *resolved_p - } - - static char *copy_to_container_get_dstdir(const container_t *cont, const container_copy_to_request *request, -- char **transform) -+ char **src_base, char **dst_base) - { - char *dstdir = NULL; - char *error = NULL; -@@ -836,7 +791,7 @@ static char *copy_to_container_get_dstdir(const container_t *cont, const contain - srcinfo.path = request->src_path; - srcinfo.rebase_name = request->src_rebase_name; - -- dstdir = prepare_archive_copy(&srcinfo, dstinfo, transform, &error); -+ dstdir = prepare_archive_copy(&srcinfo, dstinfo, src_base, dst_base, &error); - if (dstdir == NULL) { - if (error == NULL) { - ERROR("Can not prepare archive copy"); -@@ -930,9 +885,9 @@ static int copy_to_container_cb(const container_copy_to_request *request, stream - char *resolvedpath = NULL; - char *abspath = NULL; - char *dstdir = NULL; -- char *transform = NULL; -+ char *src_base = NULL; -+ char *dst_base = NULL; - container_t *cont = NULL; -- bool need_pause = false; - - DAEMON_CLEAR_ERRMSG(); - if (request == NULL || stream == NULL || err == NULL) { -@@ -952,22 +907,13 @@ static int copy_to_container_cb(const container_copy_to_request *request, stream - goto unlock_container; - } - -- need_pause = container_is_running(cont->state) && !container_is_paused(cont->state); -- if (need_pause) { -- if (pause_container(cont) != 0) { -- ERROR("can't copy to a container which is cannot be paused"); -- isulad_set_error_message("can't copy to a container which is cannot be paused"); -- goto unlock_container; -- } -- } -- - nret = im_mount_container_rootfs(cont->common_config->image_type, cont->common_config->image, - cont->common_config->id); - if (nret != 0) { -- goto unpause_container; -+ goto unlock_container; - } - -- dstdir = copy_to_container_get_dstdir(cont, request, &transform); -+ dstdir = copy_to_container_get_dstdir(cont, request, &src_base, &dst_base); - if (dstdir == NULL) { - goto cleanup_rootfs; - } -@@ -982,7 +928,8 @@ static int copy_to_container_cb(const container_copy_to_request *request, stream - goto cleanup_rootfs; - } - -- nret = read_and_extract_archive(stream, resolvedpath, transform); -+ nret = read_and_extract_archive(stream, cont->common_config->base_fs, -+ dstdir, src_base, dst_base); - if (nret < 0) { - ERROR("Failed to send archive data"); - goto cleanup_rootfs; -@@ -997,11 +944,6 @@ cleanup_rootfs: - WARN("Can not umount rootfs of container: %s", cont->common_config->id); - } - --unpause_container: -- if (need_pause && resume_container(cont) != 0) { -- ERROR("can't resume container which has been paused before copy"); -- } -- - unlock_container: - container_unlock(cont); - container_unref(cont); -@@ -1013,7 +955,8 @@ pack_response: - free(resolvedpath); - free(abspath); - free(dstdir); -- free(transform); -+ free(src_base); -+ free(dst_base); - return ret; - } - -diff --git a/src/daemon/modules/image/oci/oci_load.c b/src/daemon/modules/image/oci/oci_load.c -index 80647253..a8eecfe9 100644 ---- a/src/daemon/modules/image/oci/oci_load.c -+++ b/src/daemon/modules/image/oci/oci_load.c -@@ -1061,6 +1061,7 @@ int oci_do_load(const im_load_request *request) - load_image_t *im = NULL; - char *digest = NULL; - char *dstdir = NULL; -+ char *err = NULL; - - if (request == NULL || request->file == NULL) { - ERROR("Invalid input arguments, cannot load image"); -@@ -1082,9 +1083,9 @@ int oci_do_load(const im_load_request *request) - } - - options.whiteout_format = NONE_WHITEOUT_FORMATE; -- if (archive_unpack(&reader, dstdir, &options) != 0) { -- ERROR("Failed to unpack to :%s", dstdir); -- isulad_try_set_error_message("Failed to unpack to :%s", dstdir); -+ if (archive_unpack(&reader, dstdir, &options, &err) != 0) { -+ ERROR("Failed to unpack to %s: %s", dstdir, err); -+ isulad_try_set_error_message("Failed to unpack to %s: %s", dstdir, err); - ret = -1; - goto out; - } -@@ -1167,5 +1168,6 @@ out: - WARN("failed to remove directory %s", dstdir); - } - free(dstdir); -+ free(err); - return ret; - } -diff --git a/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/driver_devmapper.c b/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/driver_devmapper.c -index f2586f0d..e91ffe05 100644 ---- a/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/driver_devmapper.c -+++ b/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/driver_devmapper.c -@@ -319,6 +319,7 @@ int devmapper_apply_diff(const char *id, const struct graphdriver *driver, const - char *layer_fs = NULL; - int ret = 0; - struct archive_options options = { 0 }; -+ char *err = NULL; - - if (!util_valid_str(id) || driver == NULL || content == NULL) { - ERROR("invalid argument to apply diff with id(%s)", id); -@@ -340,8 +341,8 @@ int devmapper_apply_diff(const char *id, const struct graphdriver *driver, const - } - - options.whiteout_format = REMOVE_WHITEOUT_FORMATE; -- if (archive_unpack(content, layer_fs, &options) != 0) { -- ERROR("devmapper: failed to unpack to :%s", layer_fs); -+ if (archive_unpack(content, layer_fs, &options, &err) != 0) { -+ ERROR("devmapper: failed to unpack to %s: %s", layer_fs, err); - ret = -1; - goto out; - } -@@ -355,6 +356,7 @@ int devmapper_apply_diff(const char *id, const struct graphdriver *driver, const - out: - free_driver_mount_opts(mount_opts); - free(layer_fs); -+ free(err); - return ret; - } - -diff --git a/src/daemon/modules/image/oci/storage/layer_store/graphdriver/overlay2/driver_overlay2.c b/src/daemon/modules/image/oci/storage/layer_store/graphdriver/overlay2/driver_overlay2.c -index 6cdabe54..659d9d52 100644 ---- a/src/daemon/modules/image/oci/storage/layer_store/graphdriver/overlay2/driver_overlay2.c -+++ b/src/daemon/modules/image/oci/storage/layer_store/graphdriver/overlay2/driver_overlay2.c -@@ -1657,6 +1657,7 @@ int overlay2_apply_diff(const char *id, const struct graphdriver *driver, const - char *layer_dir = NULL; - char *layer_diff = NULL; - struct archive_options options = { 0 }; -+ char *err = NULL; - - if (id == NULL || driver == NULL || content == NULL) { - ERROR("invalid argument"); -@@ -1680,14 +1681,15 @@ int overlay2_apply_diff(const char *id, const struct graphdriver *driver, const - - options.whiteout_format = OVERLAY_WHITEOUT_FORMATE; - -- ret = archive_unpack(content, layer_diff, &options); -+ ret = archive_unpack(content, layer_diff, &options, &err); - if (ret != 0) { -- ERROR("Failed to unpack to :%s", layer_diff); -+ ERROR("Failed to unpack to %s: %s", layer_diff, err); - ret = -1; - goto out; - } - - out: -+ free(err); - free(layer_dir); - free(layer_diff); - return ret; -diff --git a/src/utils/tar/isulad_tar.c b/src/utils/tar/isulad_tar.c -index 5edf2ac3..03277373 100644 ---- a/src/utils/tar/isulad_tar.c -+++ b/src/utils/tar/isulad_tar.c -@@ -31,17 +31,7 @@ - #include "isula_libutils/log.h" - #include "error.h" - #include "isula_libutils/json_common.h" --#include "io_wrapper.h" --#include "utils_file.h" --#include "utils_verify.h" -- --#define TAR_MAX_OPTS 50 --#define TAR_CMD "tar" --#define TAR_TRANSFORM_OPT "--transform" --#define TAR_CREATE_OPT "-c" --#define TAR_EXACT_OPT "-x" --#define TAR_CHDIR_OPT "-C" --#define TAR_GZIP_OPT "-z" -+#include "util_archive.h" - - static void set_char_to_separator(char *p) - { -@@ -126,110 +116,6 @@ int gzip(const char *filename, size_t len) - return status; - } - --struct archive_context { -- int stdin_fd; -- int stdout_fd; -- int stderr_fd; -- pid_t pid; --}; -- --static ssize_t archive_context_read(void *context, void *buf, size_t len) --{ -- struct archive_context *ctx = (struct archive_context *)context; -- if (ctx == NULL) { -- return -1; -- } -- if (ctx->stdout_fd >= 0) { -- return util_read_nointr(ctx->stdout_fd, buf, len); -- } -- return 0; --} -- --static ssize_t archive_context_write(const void *context, const void *buf, size_t len) --{ -- struct archive_context *ctx = (struct archive_context *)context; -- if (ctx == NULL) { -- return -1; -- } -- if (ctx->stdin_fd >= 0) { -- return util_write_nointr(ctx->stdin_fd, buf, len); -- } -- return 0; --} -- --static int close_wait_pid(struct archive_context *ctx, int *status) --{ -- int ret = 0; -- -- // close stdin and stdout first, this will make sure the process of tar exit. -- if (ctx->stdin_fd >= 0) { -- close(ctx->stdin_fd); -- } -- -- if (ctx->stdout_fd >= 0) { -- close(ctx->stdout_fd); -- } -- -- if (ctx->pid > 0) { -- if (waitpid(ctx->pid, status, 0) != ctx->pid) { -- ERROR("Failed to wait pid %u", ctx->pid); -- ret = -1; -- } -- } -- -- return ret; --} -- --static int archive_context_close(void *context, char **err) --{ -- int ret = 0; -- int status = 0; -- char *reason = NULL; -- ssize_t size_read = 0; -- char buffer[BUFSIZ + 1] = { 0 }; -- struct archive_context *ctx = (struct archive_context *)context; -- char *marshaled = NULL; -- -- if (ctx == NULL) { -- return 0; -- } -- -- ret = close_wait_pid(ctx, &status); -- -- if (WIFSIGNALED((unsigned int)status)) { -- status = WTERMSIG(status); -- reason = "signaled"; -- } else if (WIFEXITED(status)) { -- status = WEXITSTATUS(status); -- reason = "exited"; -- } else { -- reason = "unknown"; -- } -- -- if (ctx->stderr_fd >= 0) { -- size_read = util_read_nointr(ctx->stderr_fd, buffer, BUFSIZ); -- if (size_read > 0) { -- reason = buffer; -- marshaled = util_marshal_string(buffer); -- if (marshaled == NULL) { -- ERROR("Can not marshal json buffer: %s", buffer); -- } else { -- reason = marshaled; -- } -- } -- close(ctx->stderr_fd); -- } -- -- if (size_read > 0 || status != 0) { -- format_errorf(err, "tar exited with status %d: %s", status, reason); -- ret = -1; -- } -- -- free(marshaled); -- free(ctx); -- return ret; --} -- - static int get_rebase_name(const char *path, const char *real_path, char **resolved_path, char **rebase_name) - { - int nret; -@@ -502,50 +388,8 @@ static bool asserts_directory(const char *path) - return util_has_trailing_path_separator(path) || util_specify_current_dir(path); - } - --static char *format_transform_of_tar(const char *srcbase, const char *dstbase) --{ -- char *transform = NULL; -- const char *src_escaped = srcbase; -- const char *dst_escaped = dstbase; -- int nret; -- size_t len; -- -- if (srcbase == NULL || dstbase == NULL) { -- return NULL; -- } -- -- // escape "/" by "." to avoid generating leading / in tar archive which is dangerous to host when untar. -- // this means tar or untar with leading / is forbidden and may got error, take care of this when coding. -- if (strcmp(srcbase, "/") == 0) { -- src_escaped = "."; -- } -- -- if (strcmp(dstbase, "/") == 0) { -- dst_escaped = "."; -- } -- -- len = strlen(src_escaped) + strlen(dst_escaped) + 5; -- if (len > PATH_MAX) { -- ERROR("Invalid path length"); -- return NULL; -- } -- -- transform = util_common_calloc_s(len); -- if (transform == NULL) { -- ERROR("Out of memory"); -- return NULL; -- } -- nret = snprintf(transform, len, "s/%s/%s/", src_escaped, dst_escaped); -- if (nret < 0 || (size_t)nret >= len) { -- ERROR("Failed to print string"); -- free(transform); -- return NULL; -- } -- return transform; --} -- - char *prepare_archive_copy(const struct archive_copy_info *srcinfo, const struct archive_copy_info *dstinfo, -- char **transform, char **err) -+ char **src_base, char **dst_base, char **err) - { - char *dstdir = NULL; - char *srcbase = NULL; -@@ -573,7 +417,8 @@ char *prepare_archive_copy(const struct archive_copy_info *srcinfo, const struct - free(srcbase); - srcbase = util_strdup_s(srcinfo->rebase_name); - } -- *transform = format_transform_of_tar(srcbase, dstbase); -+ *src_base = util_strdup_s(srcbase); -+ *dst_base = util_strdup_s(dstbase); - } else if (srcinfo->isdir) { - // dst does not exist and src is a directory, untar the content to parent of dest, - // and rename basename of src name to dest's basename. -@@ -581,7 +426,8 @@ char *prepare_archive_copy(const struct archive_copy_info *srcinfo, const struct - free(srcbase); - srcbase = util_strdup_s(srcinfo->rebase_name); - } -- *transform = format_transform_of_tar(srcbase, dstbase); -+ *src_base = util_strdup_s(srcbase); -+ *dst_base = util_strdup_s(dstbase); - } else if (asserts_directory(dstinfo->path)) { - // dst does not exist and is want to be created as a directory, but src is not a directory, report error. - format_errorf(err, "no such directory, can not copy file"); -@@ -594,7 +440,8 @@ char *prepare_archive_copy(const struct archive_copy_info *srcinfo, const struct - free(srcbase); - srcbase = util_strdup_s(srcinfo->rebase_name); - } -- *transform = format_transform_of_tar(srcbase, dstbase); -+ *src_base = util_strdup_s(srcbase); -+ *dst_base = util_strdup_s(dstbase); - } - - cleanup: -@@ -603,125 +450,14 @@ cleanup: - return dstdir; - } - --static void close_pipe_fd(int pipe_fd[]) --{ -- if (pipe_fd[0] != -1) { -- close(pipe_fd[0]); -- pipe_fd[0] = -1; -- } -- if (pipe_fd[1] != -1) { -- close(pipe_fd[1]); -- pipe_fd[1] = -1; -- } --} -- --int archive_untar(const struct io_read_wrapper *content, bool compression, const char *dstdir, const char *transform, -- char **err) --{ -- int stdin_pipe[2] = { -1, -1 }; -- int stderr_pipe[2] = { -1, -1 }; -- int ret = -1; -- int cret = 0; -- pid_t pid; -- struct archive_context *ctx = NULL; -- char *buf = NULL; -- size_t buf_len = ARCHIVE_BLOCK_SIZE; -- ssize_t read_len; -- const char *params[TAR_MAX_OPTS] = { NULL }; -- -- buf = util_common_calloc_s(buf_len); -- if (buf == NULL) { -- ERROR("Out of memory"); -- return -1; -- } -- -- if (pipe(stderr_pipe) != 0) { -- ERROR("Failed to create pipe: %s", strerror(errno)); -- goto cleanup; -- } -- if (pipe(stdin_pipe) != 0) { -- ERROR("Failed to create pipe: %s", strerror(errno)); -- goto cleanup; -- } -- -- pid = fork(); -- if (pid == (pid_t) -1) { -- ERROR("Failed to fork: %s", strerror(errno)); -- goto cleanup; -- } -- -- if (pid == (pid_t)0) { -- int i = 0; -- // child process, dup2 stderr[1] to stderr, stdout[0] to stdin. -- close(stderr_pipe[0]); -- dup2(stderr_pipe[1], 2); -- close(stdin_pipe[1]); -- dup2(stdin_pipe[0], 0); -- -- params[i++] = TAR_CMD; -- params[i++] = TAR_EXACT_OPT; -- if (compression) { -- params[i++] = TAR_GZIP_OPT; -- } -- params[i++] = TAR_CHDIR_OPT; -- params[i++] = dstdir; -- if (transform != NULL) { -- params[i++] = TAR_TRANSFORM_OPT; -- params[i++] = transform; -- } -- -- execvp(TAR_CMD, (char * const *)params); -- -- fprintf(stderr, "Failed to exec tar: %s", strerror(errno)); -- exit(EXIT_FAILURE); -- } -- -- close(stderr_pipe[1]); -- stderr_pipe[1] = -1; -- close(stdin_pipe[0]); -- stdin_pipe[0] = -1; -- -- ctx = util_common_calloc_s(sizeof(struct archive_context)); -- if (ctx == NULL) { -- goto cleanup; -- } -- -- ctx->pid = pid; -- ctx->stdin_fd = stdin_pipe[1]; -- stdin_pipe[1] = -1; -- ctx->stdout_fd = -1; -- ctx->stderr_fd = stderr_pipe[0]; -- stderr_pipe[0] = -1; -- -- read_len = content->read(content->context, buf, buf_len); -- while (read_len > 0) { -- ssize_t writed_len = archive_context_write(ctx, buf, (size_t)read_len); -- if (writed_len < 0) { -- DEBUG("Tar may exited: %s", strerror(errno)); -- break; -- } -- read_len = content->read(content->context, buf, buf_len); -- } -- -- ret = 0; -- --cleanup: -- free(buf); -- cret = archive_context_close(ctx, err); -- ret = (cret != 0) ? cret : ret; -- close_pipe_fd(stderr_pipe); -- close_pipe_fd(stdin_pipe); -- -- return ret; --} -- --int archive_copy_to(const struct io_read_wrapper *content, bool compression, const struct archive_copy_info *srcinfo, -+int archive_copy_to(const struct io_read_wrapper *content, const struct archive_copy_info *srcinfo, - const char *dstpath, char **err) - { - int ret = -1; - struct archive_copy_info *dstinfo = NULL; - char *dstdir = NULL; -- char *transform = NULL; -+ char *src_base = NULL; -+ char *dst_base = NULL; - - dstinfo = copy_info_destination_path(dstpath, err); - if (dstinfo == NULL) { -@@ -729,128 +465,23 @@ int archive_copy_to(const struct io_read_wrapper *content, bool compression, con - return -1; - } - -- dstdir = prepare_archive_copy(srcinfo, dstinfo, &transform, err); -+ dstdir = prepare_archive_copy(srcinfo, dstinfo, &src_base, &dst_base, err); - if (dstdir == NULL) { - ERROR("Can not prepare archive copy"); - goto cleanup; - } - -- ret = archive_untar(content, compression, dstdir, transform, err); -+ ret = archive_chroot_untar_stream(content, dstdir, ".", src_base, dst_base, err); - - cleanup: - free_archive_copy_info(dstinfo); - free(dstdir); -- free(transform); -- return ret; --} -- --static void close_archive_pipes_fd(int *pipes, size_t pipe_size) --{ -- size_t i = 0; -- -- for (i = 0; i < pipe_size; i++) { -- if (pipes[i] >= 0) { -- close(pipes[i]); -- pipes[i] = -1; -- } -- } --} -- --/* -- * Archive file or directory. -- * param src : file or directory to compression. -- * param compression : using gzip compression or not -- * param exclude_base : exclude source basename in the archived file or not -- * return : zero if archive success, non-zero if not. -- */ --int archive_path(const char *srcdir, const char *srcbase, const char *rebase_name, bool compression, -- struct io_read_wrapper *archive_reader) --{ -- int stderr_pipe[2] = { -1, -1 }; -- int stdout_pipe[2] = { -1, -1 }; -- int ret = -1; -- pid_t pid; -- struct archive_context *ctx = NULL; -- char *transform = NULL; -- const char *params[TAR_MAX_OPTS] = { NULL }; -- -- transform = format_transform_of_tar(srcbase, rebase_name); -- -- if (pipe(stderr_pipe) != 0) { -- ERROR("Failed to create pipe: %s", strerror(errno)); -- goto free_out; -- } -- if (pipe(stdout_pipe) != 0) { -- ERROR("Failed to create pipe: %s", strerror(errno)); -- goto free_out; -- } -- -- pid = fork(); -- if (pid == (pid_t) -1) { -- ERROR("Failed to fork: %s", strerror(errno)); -- goto free_out; -- } -- -- if (pid == (pid_t)0) { -- int i = 0; -- // child process, dup2 stderr[1] to stderr, stdout[1] to stdout. -- close(stderr_pipe[0]); -- close(stdout_pipe[0]); -- dup2(stderr_pipe[1], 2); -- dup2(stdout_pipe[1], 1); -- -- params[i++] = TAR_CMD; -- params[i++] = TAR_CREATE_OPT; -- if (compression) { -- params[i++] = TAR_GZIP_OPT; -- } -- params[i++] = TAR_CHDIR_OPT; -- params[i++] = srcdir; -- if (transform != NULL) { -- params[i++] = TAR_TRANSFORM_OPT; -- params[i++] = transform; -- } -- params[i++] = srcbase; -- -- execvp(TAR_CMD, (char * const *)params); -- -- fprintf(stderr, "Failed to exec tar: %s", strerror(errno)); -- exit(EXIT_FAILURE); -- } -- -- close(stderr_pipe[1]); -- stderr_pipe[1] = -1; -- close(stdout_pipe[1]); -- stdout_pipe[1] = -1; -- -- ctx = util_common_calloc_s(sizeof(struct archive_context)); -- if (ctx == NULL) { -- goto free_out; -- } -- -- ctx->stdin_fd = -1; -- ctx->stdout_fd = stdout_pipe[0]; -- stdout_pipe[0] = -1; -- ctx->stderr_fd = stderr_pipe[0]; -- stderr_pipe[0] = -1; -- ctx->pid = pid; -- -- archive_reader->close = archive_context_close; -- archive_reader->context = ctx; -- ctx = NULL; -- archive_reader->read = archive_context_read; -- -- ret = 0; --free_out: -- free(transform); -- close_archive_pipes_fd(stderr_pipe, 2); -- close_archive_pipes_fd(stdout_pipe, 2); -- free(ctx); -- -+ free(src_base); -+ free(dst_base); - return ret; - } - --int tar_resource_rebase(const char *path, const char *rebase, struct io_read_wrapper *archive_reader, char **err) -+static int tar_resource_rebase(const char *path, const char *rebase, struct io_read_wrapper *archive_reader, char **err) - { - int ret = -1; - int nret; -@@ -868,8 +499,8 @@ int tar_resource_rebase(const char *path, const char *rebase, struct io_read_wra - goto cleanup; - } - -- DEBUG("Copying %s from %s", srcbase, srcdir); -- nret = archive_path(srcdir, srcbase, rebase, false, archive_reader); -+ DEBUG("chroot tar stream srcdir(%s) srcbase(%s) rebase(%s)", srcdir, srcbase, rebase); -+ nret = archive_chroot_tar_stream(srcdir, srcbase, srcbase, rebase, archive_reader); - if (nret < 0) { - ERROR("Can not archive path: %s", path); - goto cleanup; -diff --git a/src/utils/tar/isulad_tar.h b/src/utils/tar/isulad_tar.h -index e2b78463..c773fe9b 100644 ---- a/src/utils/tar/isulad_tar.h -+++ b/src/utils/tar/isulad_tar.h -@@ -57,19 +57,13 @@ int gzip(const char *filename, size_t len); - struct archive_copy_info *copy_info_source_path(const char *path, bool follow_link, char **err); - - char *prepare_archive_copy(const struct archive_copy_info *srcinfo, const struct archive_copy_info *dstinfo, -- char **transform, char **err); -+ char **src_base, char **dst_base, char **err); - - int tar_resource(const struct archive_copy_info *info, struct io_read_wrapper *archive_reader, char **err); - --int archive_untar(const struct io_read_wrapper *content, bool compression, const char *dstdir, const char *transform, -- char **err); -- --int archive_copy_to(const struct io_read_wrapper *content, bool compression, const struct archive_copy_info *srcinfo, -+int archive_copy_to(const struct io_read_wrapper *content, const struct archive_copy_info *srcinfo, - const char *dstpath, char **err); - --int archive_path(const char *srcdir, const char *srcbase, const char *rebase_name, bool compression, -- struct io_read_wrapper *archive_reader); -- - #ifdef __cplusplus - } - #endif -diff --git a/src/utils/tar/util_archive.c b/src/utils/tar/util_archive.c -index 234e661e..7a28286a 100644 ---- a/src/utils/tar/util_archive.c -+++ b/src/utils/tar/util_archive.c -@@ -26,6 +26,7 @@ - #include - #include - #include -+#include - - #include "stdbool.h" - #include "utils.h" -@@ -33,11 +34,14 @@ - #include "io_wrapper.h" - #include "utils_file.h" - #include "map.h" -+#include "path.h" -+#include "error.h" - - struct archive; - struct archive_entry; - - #define ARCHIVE_READ_BUFFER_SIZE (10 * 1024) -+#define ARCHIVE_WRITE_BUFFER_SIZE (10 * 1024) - #define TAR_DEFAULT_MODE 0600 - #define TAR_DEFAULT_FLAG (O_WRONLY | O_CREAT | O_TRUNC) - -@@ -45,6 +49,13 @@ struct archive_entry; - #define WHITEOUT_META_PREFIX ".wh..wh." - #define WHITEOUT_OPAQUEDIR ".wh..wh..opq" - -+struct archive_context { -+ int stdin_fd; -+ int stdout_fd; -+ int stderr_fd; -+ pid_t pid; -+}; -+ - struct archive_content_data { - const struct io_read_wrapper *content; - char buff[ARCHIVE_READ_BUFFER_SIZE]; -@@ -286,8 +297,104 @@ static whiteout_convert_call_back_t get_whiteout_convert_cb(whiteout_format_type - return NULL; - } - --int archive_unpack_handler(const struct io_read_wrapper *content, const char *dstdir, -- const struct archive_options *options) -+static char *to_relative_path(const char *path) -+{ -+ char *dst_path = NULL; -+ -+ if (path != NULL && path[0] == '/') { -+ if (strcmp(path, "/") == 0) { -+ dst_path = util_strdup_s("."); -+ } else { -+ dst_path = util_strdup_s(path + 1); -+ } -+ } else { -+ dst_path = util_strdup_s(path); -+ } -+ -+ return dst_path; -+} -+ -+static int rebase_pathname(struct archive_entry *entry, const char *src_base, const char *dst_base) -+{ -+ int nret = 0; -+ const char *pathname = archive_entry_pathname(entry); -+ char path[PATH_MAX] = { 0 }; -+ -+ if (src_base == NULL || dst_base == NULL || !util_has_prefix(pathname, src_base)) { -+ return 0; -+ } -+ -+ nret = snprintf(path, sizeof(path), "%s%s", dst_base, pathname + strlen(src_base)); -+ if (nret < 0 || (size_t)nret >= sizeof(path)) { -+ ERROR("snprintf %s%s failed", dst_base, pathname + strlen(src_base)); -+ fprintf(stderr, "snprintf %s%s failed", dst_base, pathname + strlen(src_base)); -+ return -1; -+ } -+ -+ archive_entry_set_pathname(entry, path); -+ -+ return 0; -+} -+ -+static char *update_entry_for_pathname(struct archive_entry *entry, const char *src_base, const char *dst_base) -+{ -+ char *dst_path = NULL; -+ const char *pathname = NULL; -+ -+ if (rebase_pathname(entry, src_base, dst_base) != 0) { -+ return NULL; -+ } -+ -+ pathname = archive_entry_pathname(entry); -+ if (pathname == NULL) { -+ ERROR("Failed to get archive entry path name"); -+ fprintf(stderr, "Failed to get archive entry path name"); -+ return NULL; -+ } -+ -+ // if path in archive is absolute, we need to translate it to relative because -+ // libarchive can not support absolute path when unpack -+ dst_path = to_relative_path(pathname); -+ if (dst_path == NULL) { -+ ERROR("translate %s to relative path failed", pathname); -+ fprintf(stderr, "translate %s to relative path failed", pathname); -+ goto out; -+ } -+ -+ archive_entry_set_pathname(entry, dst_path); -+out: -+ -+ return dst_path; -+} -+ -+static int rebase_hardlink(struct archive_entry *entry, const char *src_base, const char *dst_base) -+{ -+ int nret = 0; -+ const char *linkname = NULL; -+ char path[PATH_MAX] = { 0 }; -+ -+ linkname = archive_entry_hardlink(entry); -+ if (linkname == NULL) { -+ return 0; -+ } -+ -+ if (src_base == NULL || dst_base == NULL || !util_has_prefix(linkname, src_base)) { -+ return 0; -+ } -+ -+ nret = snprintf(path, sizeof(path), "%s%s", dst_base, linkname + strlen(src_base)); -+ if (nret < 0 || (size_t)nret >= sizeof(path)) { -+ ERROR("snprintf %s%s failed", dst_base, linkname + strlen(src_base)); -+ fprintf(stderr, "snprintf %s%s failed", dst_base, linkname + strlen(src_base)); -+ return -1; -+ } -+ -+ archive_entry_set_hardlink(entry, path); -+ -+ return 0; -+} -+ -+int archive_unpack_handler(const struct io_read_wrapper *content, const struct archive_options *options) - { - int ret = 0; - struct archive *a = NULL; -@@ -302,6 +409,7 @@ int archive_unpack_handler(const struct io_read_wrapper *content, const char *ds - unpacked_path_map = map_new(MAP_STR_BOOL, MAP_DEFAULT_CMP_FUNC, MAP_DEFAULT_FREE_FUNC); - if (unpacked_path_map == NULL) { - ERROR("Out of memory"); -+ fprintf(stderr, "Out of memory"); - ret = -1; - goto out; - } -@@ -309,6 +417,7 @@ int archive_unpack_handler(const struct io_read_wrapper *content, const char *ds - mydata = util_common_calloc_s(sizeof(struct archive_content_data)); - if (mydata == NULL) { - ERROR("Memory out"); -+ fprintf(stderr, "Memory out"); - ret = -1; - goto out; - } -@@ -327,6 +436,7 @@ int archive_unpack_handler(const struct io_read_wrapper *content, const char *ds - a = archive_read_new(); - if (a == NULL) { - ERROR("archive read new failed"); -+ fprintf(stderr, "archive read new failed"); - ret = -1; - goto out; - } -@@ -336,6 +446,7 @@ int archive_unpack_handler(const struct io_read_wrapper *content, const char *ds - ext = archive_write_disk_new(); - if (ext == NULL) { - ERROR("archive write disk new failed"); -+ fprintf(stderr, "archive write disk new failed"); - ret = -1; - goto out; - } -@@ -345,6 +456,7 @@ int archive_unpack_handler(const struct io_read_wrapper *content, const char *ds - ret = archive_read_open(a, mydata, NULL, read_content, NULL); - if (ret != 0) { - SYSERROR("Failed to open archive"); -+ fprintf(stderr, "Failed to open archive: %s", strerror(errno)); - ret = -1; - goto out; - } -@@ -354,7 +466,6 @@ int archive_unpack_handler(const struct io_read_wrapper *content, const char *ds - for (;;) { - free(dst_path); - dst_path = NULL; -- - ret = archive_read_next_header(a, &entry); - - if (ret == ARCHIVE_EOF) { -@@ -363,20 +474,23 @@ int archive_unpack_handler(const struct io_read_wrapper *content, const char *ds - - if (ret != ARCHIVE_OK) { - ERROR("Warning reading tar header: %s", archive_error_string(a)); -+ fprintf(stderr, "Warning reading tar header: %s", archive_error_string(a)); - ret = -1; - goto out; - } - -- const char *pathname = archive_entry_pathname(entry); -- if (pathname == NULL) { -- ERROR("Failed to get archive entry path name"); -+ dst_path = update_entry_for_pathname(entry, options->src_base, options->dst_base); -+ if (dst_path == NULL) { -+ ERROR("Failed to update pathname"); -+ fprintf(stderr, "Failed to update pathname"); - ret = -1; - goto out; - } - -- dst_path = util_path_join(dstdir, pathname); -- if (dst_path == NULL) { -- ERROR("Failed to get archive entry dst path %s/%s", dstdir, pathname); -+ ret = rebase_hardlink(entry, options->src_base, options->dst_base); -+ if (ret != 0) { -+ ERROR("Failed to rebase hardlink"); -+ fprintf(stderr, "Failed to rebase hardlink"); - ret = -1; - goto out; - } -@@ -385,22 +499,17 @@ int archive_unpack_handler(const struct io_read_wrapper *content, const char *ds - continue; - } - -- // if path in archive is absolute, we need to translate it to relative because -- // libarchive can not support absolute path when unpack -- pathname = archive_entry_pathname(entry); -- if (pathname != NULL && pathname[0] == '/') { -- archive_entry_set_pathname(entry, pathname + 1); -- } -- - ret = archive_write_header(ext, entry); - if (ret != ARCHIVE_OK) { - ERROR("Fail to handle tar header: %s", archive_error_string(ext)); -+ fprintf(stderr, "Fail to handle tar header: %s", archive_error_string(ext)); - ret = -1; - goto out; - } else if (archive_entry_size(entry) > 0) { - ret = copy_data(a, ext); - if (ret != ARCHIVE_OK) { - ERROR("Failed to do copy tar data: %s", archive_error_string(ext)); -+ fprintf(stderr, "Failed to do copy tar data: %s", archive_error_string(ext)); - ret = -1; - goto out; - } -@@ -408,6 +517,7 @@ int archive_unpack_handler(const struct io_read_wrapper *content, const char *ds - ret = archive_write_finish_entry(ext); - if (ret != ARCHIVE_OK) { - ERROR("Failed to freeing archive entry: %s\n", archive_error_string(ext)); -+ fprintf(stderr, "Failed to freeing archive entry: %s\n", archive_error_string(ext)); - ret = -1; - goto out; - } -@@ -415,6 +525,7 @@ int archive_unpack_handler(const struct io_read_wrapper *content, const char *ds - bool b = true; - if (!map_replace(unpacked_path_map, (void *)dst_path, (void *)(&b))) { - ERROR("Failed to replace unpacked path map element"); -+ fprintf(stderr, "Failed to replace unpacked path map element"); - ret = -1; - goto out; - } -@@ -433,11 +544,32 @@ out: - return ret; - } - --int archive_unpack(const struct io_read_wrapper *content, const char *dstdir, const struct archive_options *options) -+static void close_archive_pipes_fd(int *pipes, size_t pipe_size) -+{ -+ size_t i = 0; -+ -+ for (i = 0; i < pipe_size; i++) { -+ if (pipes[i] >= 0) { -+ close(pipes[i]); -+ pipes[i] = -1; -+ } -+ } -+} -+ -+int archive_unpack(const struct io_read_wrapper *content, const char *dstdir, const struct archive_options *options, -+ char **errmsg) - { - int ret = 0; - pid_t pid = -1; -- int keepfds[] = { -1, -1 }; -+ int keepfds[] = { -1, -1, -1 }; -+ int pipe_stderr[2] = { -1, -1 }; -+ char errbuf[BUFSIZ] = { 0 }; -+ -+ if (pipe2(pipe_stderr, O_CLOEXEC) != 0) { -+ ERROR("Failed to create pipe"); -+ ret = -1; -+ goto cleanup; -+ } - - pid = fork(); - if (pid == (pid_t) -1) { -@@ -448,26 +580,37 @@ int archive_unpack(const struct io_read_wrapper *content, const char *dstdir, co - if (pid == (pid_t)0) { - keepfds[0] = isula_libutils_get_log_fd(); - keepfds[1] = *(int *)(content->context); -- ret = util_check_inherited_exclude_fds(true, keepfds, 2); -+ keepfds[2] = pipe_stderr[1]; -+ ret = util_check_inherited_exclude_fds(true, keepfds, 3); - if (ret != 0) { - ERROR("Failed to close fds."); -+ fprintf(stderr, "Failed to close fds."); -+ ret = -1; -+ goto child_out; -+ } -+ -+ // child process, dup2 pipe_for_read[1] to stderr, -+ if (dup2(pipe_stderr[1], 2) < 0) { -+ ERROR("Dup fd error: %s", strerror(errno)); - ret = -1; - goto child_out; - } - - if (chroot(dstdir) != 0) { - SYSERROR("Failed to chroot to %s", dstdir); -+ fprintf(stderr, "Failed to chroot to %s: %s", dstdir, strerror(errno)); - ret = -1; - goto child_out; - } - - if (chdir("/") != 0) { - SYSERROR("Failed to chroot to /"); -+ fprintf(stderr, "Failed to chroot to /: %s", strerror(errno)); - ret = -1; - goto child_out; - } - -- ret = archive_unpack_handler(content, "/", options); -+ ret = archive_unpack_handler(content, options); - - child_out: - if (ret != 0) { -@@ -476,13 +619,23 @@ child_out: - exit(EXIT_SUCCESS); - } - } -+ close(pipe_stderr[1]); -+ pipe_stderr[1] = -1; - - ret = util_wait_for_pid(pid); - if (ret != 0) { - ERROR("Wait archive_untar_handler failed"); -+ fcntl(pipe_stderr[0], F_SETFL, O_NONBLOCK); -+ if (read(pipe_stderr[0], errbuf, BUFSIZ) < 0) { -+ ERROR("read error message from child failed"); -+ } - } - - cleanup: -+ close_archive_pipes_fd(pipe_stderr, 2); -+ if (errmsg != NULL && strlen(errbuf) != 0) { -+ *errmsg = util_strdup_s(errbuf); -+ } - return ret; - } - -@@ -569,19 +722,19 @@ static int copy_data_between_archives(struct archive *ar, struct archive *aw) - } - } - --int update_entry_for_hardlink(map_t *map_link, struct archive_entry *entry) -+int update_entry_for_hardlink(map_t *map_link, struct archive_entry *entry, const char *src_base, const char *dst_base) - { - const char *path = archive_entry_pathname(entry); - char *linkname = NULL; - unsigned int nlink = archive_entry_nlink(entry); - int ino = archive_entry_ino(entry); -+ const char *hardlink = archive_entry_hardlink(entry); - -- // hardlink is regular file, not type AE_IFLNK -- if (archive_entry_filetype(entry) != AE_IFREG) { -- return 0; -+ if (hardlink != NULL && rebase_hardlink(entry, src_base, dst_base) != 0) { -+ return -1; - } - -- // no hardlink -+ // try to use hardlink to reduce tar size - if (nlink <= 1) { - return 0; - } -@@ -610,11 +763,12 @@ static void link_kvfree(void *key, void *value) - return; - } - --int tar_handler(struct archive *r, struct archive *w) -+int tar_handler(struct archive *r, struct archive *w, const char *src_base, const char *dst_base) - { - int ret = ARCHIVE_OK; - struct archive_entry *entry = NULL; - map_t *map_link = NULL; -+ char *pathname = NULL; - - map_link = map_new(MAP_INT_STR, MAP_DEFAULT_CMP_FUNC, link_kvfree); - if (map_link == NULL) { -@@ -636,11 +790,18 @@ int tar_handler(struct archive *r, struct archive *w) - break; - } - -- if (update_entry_for_hardlink(map_link, entry) != 0) { -+ pathname = update_entry_for_pathname(entry, src_base, dst_base); -+ if (pathname == NULL) { - ret = ARCHIVE_FAILED; - break; - } -+ free(pathname); -+ pathname = NULL; - -+ if (update_entry_for_hardlink(map_link, entry, src_base, dst_base) != 0) { -+ ret = ARCHIVE_FAILED; -+ break; -+ } - ret = archive_write_header(w, entry); - if (ret != ARCHIVE_OK) { - ERROR("Fail to write tar header: %s", archive_error_string(w)); -@@ -680,7 +841,29 @@ int tar_handler(struct archive *r, struct archive *w) - return ret; - } - --static int tar_all(int fd) -+static ssize_t stream_write_data(struct archive *a, void *client_data, const void *buffer, size_t length) -+{ -+ struct io_write_wrapper *writer = (struct io_write_wrapper *)client_data; -+ size_t written_length = 0; -+ size_t size = 0; -+ while (length > written_length) { -+ if (length - written_length > ARCHIVE_WRITE_BUFFER_SIZE) { -+ size = ARCHIVE_WRITE_BUFFER_SIZE; -+ } else { -+ size = length - written_length; -+ } -+ if (!writer->write_func(writer->context, (const char *)buffer + written_length, size)) { -+ ERROR("write stream failed"); -+ return -1; -+ } -+ written_length += size; -+ } -+ -+ return size; -+} -+ -+static int tar_all(const struct io_write_wrapper *writer, const char *tar_dir, -+ const char *src_base, const char *dst_base) - { - struct archive *r = NULL; - struct archive *w = NULL; -@@ -689,12 +872,13 @@ static int tar_all(int fd) - r = archive_read_disk_new(); - if (r == NULL) { - ERROR("archive read disk new failed"); -+ fprintf(stderr, "archive read disk new failed"); - return -1; - } - archive_read_disk_set_standard_lookup(r); - archive_read_disk_set_symlink_physical(r); - archive_read_disk_set_behavior(r, ARCHIVE_READDISK_NO_TRAVERSE_MOUNTS); -- ret = archive_read_disk_open(r, "."); -+ ret = archive_read_disk_open(r, tar_dir); - if (ret != ARCHIVE_OK) { - ERROR("open archive read failed: %s", archive_error_string(r)); - fprintf(stderr, "open archive read failed: %s\n", archive_error_string(r)); -@@ -704,19 +888,20 @@ static int tar_all(int fd) - w = archive_write_new(); - if (w == NULL) { - ERROR("archive write new failed"); -+ fprintf(stderr, "archive write new failed"); - ret = ARCHIVE_FAILED; - goto out; - } - archive_write_set_format_pax(w); - archive_write_set_options(w, "xattrheader=SCHILY"); -- ret = archive_write_open_fd(w, fd); -+ ret = archive_write_open(w, (void*)writer, NULL, stream_write_data, NULL); - if (ret != ARCHIVE_OK) { - ERROR("open archive write failed: %s", archive_error_string(w)); - fprintf(stderr, "open archive write failed: %s\n", archive_error_string(w)); - goto out; - } - -- ret = tar_handler(r, w); -+ ret = tar_handler(r, w, src_base, dst_base); - - out: - archive_free(r); -@@ -725,8 +910,14 @@ out: - return (ret == ARCHIVE_OK) ? 0 : -1; - } - -+static ssize_t fd_write(void *context, const void *data, size_t len) -+{ -+ return util_write_nointr(*(int*)context, data, len); -+} -+ - int archive_chroot_tar(char *path, char *file, char **errmsg) - { -+ struct io_write_wrapper pipe_context = { 0 }; - int ret = 0; - pid_t pid; - int pipe_for_read[2] = { -1, -1 }; -@@ -744,8 +935,6 @@ int archive_chroot_tar(char *path, char *file, char **errmsg) - if (pid == (pid_t) -1) { - ERROR("Failed to fork()"); - ret = -1; -- close(pipe_for_read[0]); -- close(pipe_for_read[1]); - goto cleanup; - } - -@@ -788,7 +977,9 @@ int archive_chroot_tar(char *path, char *file, char **errmsg) - goto child_out; - } - -- ret = tar_all(fd); -+ pipe_context.context = (void*)&fd; -+ pipe_context.write_func = fd_write; -+ ret = tar_all(&pipe_context, ".", ".", NULL); - - child_out: - -@@ -798,6 +989,8 @@ child_out: - exit(EXIT_SUCCESS); - } - } -+ close(pipe_for_read[1]); -+ pipe_for_read[1] = -1; - - ret = util_wait_for_pid(pid); - if (ret != 0) { -@@ -806,17 +999,357 @@ child_out: - if (read(pipe_for_read[0], errbuf, BUFSIZ) < 0) { - ERROR("read error message from child failed"); - } -- close(pipe_for_read[0]); -- pipe_for_read[0] = -1; - } - -- close(pipe_for_read[1]); -- pipe_for_read[1] = -1; -- - cleanup: -+ close_archive_pipes_fd(pipe_for_read, 2); - if (errmsg != NULL && strlen(errbuf) != 0) { - *errmsg = util_strdup_s(errbuf); - } - - return ret; - } -+ -+static ssize_t pipe_read(void *context, void *buf, size_t len) -+{ -+ return util_read_nointr(*(int*)context, buf, len); -+} -+ -+static ssize_t archive_context_write(const void *context, const void *buf, size_t len) -+{ -+ struct archive_context *ctx = (struct archive_context *)context; -+ if (ctx == NULL) { -+ return -1; -+ } -+ if (ctx->stdin_fd >= 0) { -+ return util_write_nointr(ctx->stdin_fd, buf, len); -+ } -+ return 0; -+} -+ -+static ssize_t pipe_write(void *context, const void *data, size_t len) -+{ -+ return util_write_nointr(*(int*)context, data, len); -+} -+ -+static ssize_t archive_context_read(void *context, void *buf, size_t len) -+{ -+ struct archive_context *ctx = (struct archive_context *)context; -+ if (ctx == NULL) { -+ return -1; -+ } -+ if (ctx->stdout_fd >= 0) { -+ return util_read_nointr(ctx->stdout_fd, buf, len); -+ } -+ return 0; -+} -+ -+static int close_wait_pid(struct archive_context *ctx, int *status) -+{ -+ int ret = 0; -+ -+ // close stdin and stdout first, this will make sure the process of tar exit. -+ if (ctx->stdin_fd >= 0) { -+ close(ctx->stdin_fd); -+ } -+ -+ if (ctx->stdout_fd >= 0) { -+ close(ctx->stdout_fd); -+ } -+ -+ if (ctx->pid > 0) { -+ if (waitpid(ctx->pid, status, 0) != ctx->pid) { -+ ERROR("Failed to wait pid %u", ctx->pid); -+ ret = -1; -+ } -+ } -+ -+ return ret; -+} -+ -+static int archive_context_close(void *context, char **err) -+{ -+ int ret = 0; -+ int status = 0; -+ char *reason = NULL; -+ ssize_t size_read = 0; -+ char buffer[BUFSIZ + 1] = { 0 }; -+ struct archive_context *ctx = (struct archive_context *)context; -+ char *marshaled = NULL; -+ -+ if (ctx == NULL) { -+ return 0; -+ } -+ -+ ret = close_wait_pid(ctx, &status); -+ -+ if (WIFSIGNALED((unsigned int)status)) { -+ status = WTERMSIG(status); -+ reason = "signaled"; -+ } else if (WIFEXITED(status)) { -+ status = WEXITSTATUS(status); -+ reason = "exited"; -+ } else { -+ reason = "unknown"; -+ } -+ if (ctx->stderr_fd >= 0) { -+ size_read = util_read_nointr(ctx->stderr_fd, buffer, BUFSIZ); -+ if (size_read > 0) { -+ reason = buffer; -+ marshaled = util_marshal_string(buffer); -+ if (marshaled == NULL) { -+ ERROR("Can not marshal json buffer: %s", buffer); -+ } else { -+ reason = marshaled; -+ } -+ } -+ close(ctx->stderr_fd); -+ } -+ -+ if (size_read > 0 || status != 0) { -+ format_errorf(err, "tar exited with status %d: %s", status, reason); -+ ret = -1; -+ } -+ -+ free(marshaled); -+ free(ctx); -+ return ret; -+} -+ -+int archive_chroot_untar_stream(const struct io_read_wrapper *context, const char *chroot_dir, -+ const char *untar_dir, const char *src_base, const char *dst_base, -+ char **errmsg) -+{ -+ struct io_read_wrapper pipe_context = { 0 }; -+ int pipe_stream[2] = { -1, -1 }; -+ int pipe_stderr[2] = { -1, -1 }; -+ int keepfds[] = { -1, -1, -1 }; -+ int ret = -1; -+ int cret = 0; -+ pid_t pid; -+ struct archive_context *ctx = NULL; -+ char *buf = NULL; -+ size_t buf_len = ARCHIVE_BLOCK_SIZE; -+ ssize_t read_len; -+ struct archive_options options = { -+ .whiteout_format = NONE_WHITEOUT_FORMATE, -+ .src_base = src_base, -+ .dst_base = dst_base -+ }; -+ -+ buf = util_common_calloc_s(buf_len); -+ if (buf == NULL) { -+ ERROR("Out of memory"); -+ return -1; -+ } -+ -+ if (pipe(pipe_stderr) != 0) { -+ ERROR("Failed to create pipe: %s", strerror(errno)); -+ goto cleanup; -+ } -+ if (pipe(pipe_stream) != 0) { -+ ERROR("Failed to create pipe: %s", strerror(errno)); -+ goto cleanup; -+ } -+ -+ pid = fork(); -+ if (pid == (pid_t) -1) { -+ ERROR("Failed to fork: %s", strerror(errno)); -+ goto cleanup; -+ } -+ -+ if (pid == (pid_t)0) { -+ keepfds[0] = isula_libutils_get_log_fd(); -+ keepfds[1] = pipe_stderr[1]; -+ keepfds[2] = pipe_stream[0]; -+ ret = util_check_inherited_exclude_fds(true, keepfds, 3); -+ if (ret != 0) { -+ ERROR("Failed to close fds."); -+ ret = -1; -+ goto child_out; -+ } -+ -+ // child process, dup2 pipe_stderr[1] to stderr, -+ if (dup2(pipe_stderr[1], 2) < 0) { -+ ERROR("Dup fd error: %s", strerror(errno)); -+ ret = -1; -+ goto child_out; -+ } -+ -+ if (chroot(chroot_dir) != 0) { -+ SYSERROR("Failed to chroot to %s", chroot_dir); -+ ret = -1; -+ goto child_out; -+ } -+ -+ if (chdir("/") != 0 || chdir(untar_dir) != 0) { -+ SYSERROR("Failed to chdir to %s", untar_dir); -+ fprintf(stderr, "Failed to chdir to %s", untar_dir); -+ ret = -1; -+ goto child_out; -+ } -+ -+ pipe_context.context = (void*)&pipe_stream[0]; -+ pipe_context.read = pipe_read; -+ ret = archive_unpack_handler(&pipe_context, &options); -+ -+child_out: -+ if (ret != 0) { -+ exit(EXIT_FAILURE); -+ } else { -+ exit(EXIT_SUCCESS); -+ } -+ } -+ -+ close(pipe_stderr[1]); -+ pipe_stderr[1] = -1; -+ close(pipe_stream[0]); -+ pipe_stream[0] = -1; -+ -+ ctx = util_common_calloc_s(sizeof(struct archive_context)); -+ if (ctx == NULL) { -+ goto cleanup; -+ } -+ -+ ctx->pid = pid; -+ ctx->stdin_fd = pipe_stream[1]; -+ pipe_stream[1] = -1; -+ ctx->stdout_fd = -1; -+ ctx->stderr_fd = pipe_stderr[0]; -+ pipe_stderr[0] = -1; -+ -+ read_len = context->read(context->context, buf, buf_len); -+ while (read_len > 0) { -+ ssize_t writed_len = archive_context_write(ctx, buf, (size_t)read_len); -+ if (writed_len < 0) { -+ DEBUG("Tar may exited: %s", strerror(errno)); -+ break; -+ } -+ read_len = context->read(context->context, buf, buf_len); -+ } -+ -+ ret = 0; -+ -+cleanup: -+ free(buf); -+ cret = archive_context_close(ctx, errmsg); -+ ret = (cret != 0) ? cret : ret; -+ close_archive_pipes_fd(pipe_stderr, 2); -+ close_archive_pipes_fd(pipe_stream, 2); -+ -+ return ret; -+} -+ -+int archive_chroot_tar_stream(const char *chroot_dir, const char *tar_path, const char *src_base, -+ const char *dst_base, struct io_read_wrapper *reader) -+{ -+ struct io_write_wrapper pipe_context = { 0 }; -+ int keepfds[] = { -1, -1, -1 }; -+ int pipe_stderr[2] = { -1, -1 }; -+ int pipe_stream[2] = { -1, -1 }; -+ int ret = -1; -+ pid_t pid; -+ struct archive_context *ctx = NULL; -+ -+ if (pipe(pipe_stderr) != 0) { -+ ERROR("Failed to create pipe: %s", strerror(errno)); -+ goto free_out; -+ } -+ if (pipe(pipe_stream) != 0) { -+ ERROR("Failed to create pipe: %s", strerror(errno)); -+ goto free_out; -+ } -+ -+ pid = fork(); -+ if (pid == (pid_t) - 1) { -+ ERROR("Failed to fork: %s", strerror(errno)); -+ goto free_out; -+ } -+ -+ if (pid == (pid_t)0) { -+ char *tar_dir_name = NULL; -+ char *tar_base_name = NULL; -+ -+ keepfds[0] = isula_libutils_get_log_fd(); -+ keepfds[1] = pipe_stderr[1]; -+ keepfds[2] = pipe_stream[1]; -+ ret = util_check_inherited_exclude_fds(true, keepfds, 3); -+ if (ret != 0) { -+ ERROR("Failed to close fds."); -+ ret = -1; -+ goto child_out; -+ } -+ -+ // child process, dup2 pipe_stderr[1] to stderr, -+ if (dup2(pipe_stderr[1], 2) < 0) { -+ ERROR("Dup fd error: %s", strerror(errno)); -+ ret = -1; -+ goto child_out; -+ } -+ -+ if (chroot(chroot_dir) != 0) { -+ ERROR("Failed to chroot to %s", chroot_dir); -+ fprintf(stderr, "Failed to chroot to %s\n", chroot_dir); -+ ret = -1; -+ goto child_out; -+ } -+ -+ if (util_split_dir_and_base_name(tar_path, &tar_dir_name, &tar_base_name) != 0) { -+ ERROR("Failed to split %s", tar_path); -+ fprintf(stderr, "Failed to split %s\n", tar_path); -+ ret = -1; -+ goto child_out; -+ } -+ -+ if (chdir("/") != 0 || chdir(tar_dir_name) != 0) { -+ ERROR("Failed to chdir to %s", tar_dir_name); -+ fprintf(stderr, "Failed to chdir to %s\n", tar_dir_name); -+ ret = -1; -+ goto child_out; -+ } -+ -+ pipe_context.context = (void*)&pipe_stream[1]; -+ pipe_context.write_func = pipe_write; -+ ret = tar_all(&pipe_context, tar_base_name, src_base, dst_base); -+ -+child_out: -+ free(tar_dir_name); -+ free(tar_base_name); -+ -+ if (ret != 0) { -+ exit(EXIT_FAILURE); -+ } else { -+ exit(EXIT_SUCCESS); -+ } -+ } -+ -+ close(pipe_stderr[1]); -+ pipe_stderr[1] = -1; -+ close(pipe_stream[1]); -+ pipe_stream[1] = -1; -+ -+ ctx = util_common_calloc_s(sizeof(struct archive_context)); -+ if (ctx == NULL) { -+ goto free_out; -+ } -+ -+ ctx->stdin_fd = -1; -+ ctx->stdout_fd = pipe_stream[0]; -+ pipe_stream[0] = -1; -+ ctx->stderr_fd = pipe_stderr[0]; -+ pipe_stderr[0] = -1; -+ ctx->pid = pid; -+ -+ reader->close = archive_context_close; -+ reader->context = ctx; -+ ctx = NULL; -+ reader->read = archive_context_read; -+ -+ ret = 0; -+free_out: -+ close_archive_pipes_fd(pipe_stderr, 2); -+ close_archive_pipes_fd(pipe_stream, 2); -+ free(ctx); -+ -+ return ret; -+} -diff --git a/src/utils/tar/util_archive.h b/src/utils/tar/util_archive.h -index 0e05a363..55fd7683 100644 ---- a/src/utils/tar/util_archive.h -+++ b/src/utils/tar/util_archive.h -@@ -24,6 +24,8 @@ - - #include "io_wrapper.h" - -+#define ARCHIVE_BLOCK_SIZE (32 * 1024) -+ - struct io_read_wrapper; - - #ifdef __cplusplus -@@ -38,14 +40,25 @@ typedef enum { - - struct archive_options { - whiteout_format_type whiteout_format; -+ -+ // rename archive entry's name from src_base to dst_base -+ const char *src_base; -+ const char *dst_base; - }; - --int archive_unpack(const struct io_read_wrapper *content, const char *dstdir, const struct archive_options *options); -+int archive_unpack(const struct io_read_wrapper *content, const char *dstdir, const struct archive_options *options, -+ char **errmsg); - - bool valid_archive_format(const char *file); - - int archive_chroot_tar(char *path, char *file, char **errmsg); - -+int archive_chroot_tar_stream(const char *chroot_dir, const char *tar_path, const char *src_base, -+ const char *dst_base, struct io_read_wrapper *content); -+int archive_chroot_untar_stream(const struct io_read_wrapper *content, const char *chroot_dir, -+ const char *untar_dir, const char *src_base, const char *dst_base, -+ char **errmsg); -+ - #ifdef __cplusplus - } - #endif --- -2.25.1 - diff --git a/0007-add-testcases-for-isula-cp.patch b/0007-add-testcases-for-isula-cp.patch deleted file mode 100644 index 56a82e8..0000000 --- a/0007-add-testcases-for-isula-cp.patch +++ /dev/null @@ -1,157 +0,0 @@ -From 085b93daf8f080f21b304058da3af404be9ac61d Mon Sep 17 00:00:00 2001 -From: WangFengTu -Date: Fri, 8 Jan 2021 14:02:00 +0800 -Subject: [PATCH 07/53] add testcases for isula cp - -Signed-off-by: WangFengTu ---- - CI/test_cases/container_cases/cp.sh | 93 ++++++++++++++++++++++++++++- - 1 file changed, 90 insertions(+), 3 deletions(-) - -diff --git a/CI/test_cases/container_cases/cp.sh b/CI/test_cases/container_cases/cp.sh -index dfbd222f..67a36909 100644 ---- a/CI/test_cases/container_cases/cp.sh -+++ b/CI/test_cases/container_cases/cp.sh -@@ -163,6 +163,7 @@ test_cp_file_to_container() - return ${ret} - } - -+ - test_cp_dir_to_container() - { - local ret=0 -@@ -194,6 +195,66 @@ test_cp_dir_to_container() - isula exec $containername /bin/sh -c "ls $dstfile/passwd" - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to do copy" && ((ret++)) - -+ # test copy dir with hardlink -+ rm -rf $cpfiles/a -+ mkdir -p $cpfiles/a/a $cpfiles/a/b -+ echo "test_hardlink_a" > $cpfiles/a/a/a -+ ln $cpfiles/a/a/a $cpfiles/a/b/b -+ isula cp $cpfiles/a $containername:/c -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to do copy" && ((ret++)) -+ -+ isula exec -ti $containername cat /c/a/a | grep "test_hardlink_a" -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - copy hardlink a not right" && ((ret++)) -+ -+ isula exec -ti $containername cat /c/b/b | grep "test_hardlink_a" -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - copy hardlink b not right" && ((ret++)) -+ rm -rf $cpfiles/a -+ -+ # test copy dir to file -+ mkdir -p $cpfiles/dst -+ isula exec -ti $containername sh -c 'touch /dst' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to touch file in container" && ((ret++)) -+ -+ isula cp $cpfiles/dst $containername:/ -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - copy dir to container failed" && ((ret++)) -+ -+ isula exec -ti $containername stat / | grep directory -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - file should be replaced to be dir" && ((ret++)) -+ rm -rf $cpfiles/dir -+ -+ # test copy current dir file -+ touch $cpfiles/current -+ cd $cpfiles -+ isula cp . $containername:/current1 -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to cp current1 file" && ((ret++)) -+ -+ isula exec -ti $containername stat /current1 -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - file current1 not exist" && ((ret++)) -+ -+ isula cp ./ $containername:/current2 -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to cp current2 file" && ((ret++)) -+ -+ isula exec -ti $containername stat /current2 -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - file current2 not exist" && ((ret++)) -+ cd - -+ rm -f $cpfiles/current -+ -+ # test copy perm -+ mkdir -p $cpfiles/perm && chmod 700 $cpfiles/perm -+ isula cp $cpfiles/perm $containername:/ -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to cp dir to container" && ((ret++)) -+ -+ isula exec -ti $containername stat /perm | grep "Access: (0700/drwx" -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - copy perm not right" && ((ret++)) -+ rm -f $cpfiles/perm -+ -+ # test copy hardlink -+ rm -rf $cpfiles/cp_dir -+ mkdir $cpfiles/cp_dir && cd $cpfiles/cp_dir && echo hello > norm_file && ln norm_file norm_file_link && cd - -+ isula cp $cpfiles/cp_dir $containername:/home/ -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - copy hardlink failed" && ((ret++)) -+ rm -rf $cpfiles/cp_dir -+ - return ${ret} - } - -@@ -227,6 +288,17 @@ test_cp_symlink_to_container() - isula exec $containername /bin/sh -c "cat $cpfiles/target | grep root" - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to do copy" && ((ret++)) - -+ # test cp symlink with dir which have the same name prefix -+ rm -rf $cpfiles/abc $cpfiles/a -+ ln -s $cpfiles/abc $cpfiles/a -+ -+ isula cp $cpfiles/a $containername:/b -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to copy symlink" && ((ret++)) -+ -+ isula exec -ti $containername readlink /b | grep "$cpfiles/abc" -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - invalid symlink" && ((ret++)) -+ rm -f $cpfiles/abc $cpfiles/a -+ - return ${ret} - } - -@@ -256,14 +328,21 @@ function cp_test_t() - - msg_info "${test} starting..." - -- isula pull ${image} -- [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to pull image: ${image}" && return ${FAILURE} -+ local isulad_pid=$(cat /var/run/isulad.pid) -+ local fd_num1=$(ls -l /proc/$isulad_pid/fd | wc -l) -+ [[ $fd_num1 -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - can not get fd number" && ((ret++)) -+ -+ isula inspect ${image} -+ if [ x"$?" != x"0" ];then -+ isula pull ${image} -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to pull image: ${image}" && return ${FAILURE} -+ fi - - isula images | grep busybox - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - missing list image: ${image}" && ((ret++)) - - containername=test_cmd_cp -- isula run -n $containername -itd $image -+ isula run -n $containername -itd $image - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to run container: ${image}" && ((ret++)) - - rm -rf $cpfiles -@@ -274,6 +353,7 @@ function cp_test_t() - test_cp_file_from_container $containername || ((ret++)) - test_cp_dir_from_container $containername || ((ret++)) - test_cp_file_to_container $containername || ((ret++)) -+ test_cp_dir_to_container $containername || ((ret++)) - test_cp_symlink_to_container $containername || ((ret++)) - test_cp_symlink_from_container $containername || ((ret++)) - -@@ -281,6 +361,13 @@ function cp_test_t() - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to rm container: ${containername}" && ((ret++)) - - rm -rf $cpfiles -+ -+ local fd_num2=$(ls -l /proc/$isulad_pid/fd | wc -l) -+ [[ $fd_num2 -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - can not get fd number" && ((ret++)) -+ -+ # make sure fd not increase after test -+ [[ $fd_num1 -ne $fd_num2 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - fd number not right" && ((ret++)) -+ - echo "test end" - return ${ret} - } --- -2.25.1 - diff --git a/0008-image_cb-rename-the-function-isula_-docker_-to-do_.patch b/0008-image_cb-rename-the-function-isula_-docker_-to-do_.patch deleted file mode 100644 index d456467..0000000 --- a/0008-image_cb-rename-the-function-isula_-docker_-to-do_.patch +++ /dev/null @@ -1,107 +0,0 @@ -From c8d14980e145a7d400aa6c5b449a59952a422801 Mon Sep 17 00:00:00 2001 -From: Li Feng -Date: Fri, 15 Jan 2021 10:34:43 +0800 -Subject: [PATCH 08/53] image_cb: rename the function {isula_/docker_} to do_ - -Signed-off-by: Li Feng ---- - src/daemon/executor/image_cb/image_cb.c | 20 ++++++++++---------- - 1 file changed, 10 insertions(+), 10 deletions(-) - -diff --git a/src/daemon/executor/image_cb/image_cb.c b/src/daemon/executor/image_cb/image_cb.c -index 6ab8067f..156cf88c 100644 ---- a/src/daemon/executor/image_cb/image_cb.c -+++ b/src/daemon/executor/image_cb/image_cb.c -@@ -54,7 +54,7 @@ - #include "utils_timestamp.h" - #include "utils_verify.h" - --static int isula_import_image(const char *file, const char *tag, char **id) -+static int do_import_image(const char *file, const char *tag, char **id) - { - int ret = 0; - im_import_request *request = NULL; -@@ -114,7 +114,7 @@ static int import_cb(const image_import_request *request, image_import_response - - EVENT("Image Event: {Object: %s, Type: Importing}", request->file); - -- ret = isula_import_image(request->file, request->tag, &id); -+ ret = do_import_image(request->file, request->tag, &id); - if (ret != 0) { - ERROR("Failed to import docker image %s with tag %s", request->file, request->tag); - cc = EINVALIDARGS; -@@ -140,7 +140,7 @@ out: - return (ret < 0) ? ECOMMON : ret; - } - --static int docker_load_image(const char *file, const char *tag, const char *type) -+static int do_load_image(const char *file, const char *tag, const char *type) - { - int ret = 0; - im_load_request *request = NULL; -@@ -210,7 +210,7 @@ static int image_load_cb(const image_load_image_request *request, image_load_ima - - EVENT("Image Event: {Object: %s, Type: Loading}", request->file); - -- ret = docker_load_image(request->file, request->tag, request->type); -+ ret = do_load_image(request->file, request->tag, request->type); - if (ret != 0) { - ERROR("Failed to load docker image %s with tag %s and type %s", request->file, request->tag, request->type); - cc = EINVALIDARGS; -@@ -233,7 +233,7 @@ out: - return (ret < 0) ? ECOMMON : ret; - } - --static int docker_login(const char *username, const char *password, const char *server, const char *type) -+static int do_login(const char *username, const char *password, const char *server, const char *type) - { - int ret = 0; - im_login_request *request = NULL; -@@ -290,7 +290,7 @@ static int login_cb(const image_login_request *request, image_login_response **r - - EVENT("Image Event: {Object: %s, Type: Logining}", request->server); - -- ret = docker_login(request->username, request->password, request->server, request->type); -+ ret = do_login(request->username, request->password, request->server, request->type); - if (ret != 0) { - ERROR("Failed to login %s", request->server); - cc = EINVALIDARGS; -@@ -312,7 +312,7 @@ out: - return (ret < 0) ? ECOMMON : ret; - } - --static int docker_logout(const char *server, const char *type) -+static int do_logout(const char *server, const char *type) - { - int ret = 0; - im_logout_request *request = NULL; -@@ -367,7 +367,7 @@ static int logout_cb(const image_logout_request *request, image_logout_response - - EVENT("Image Event: {Object: %s, Type: Logouting}", request->server); - -- ret = docker_logout(request->server, request->type); -+ ret = do_logout(request->server, request->type); - if (ret != 0) { - ERROR("Failed to logout %s", request->server); - cc = EINVALIDARGS; -@@ -442,7 +442,7 @@ out: - } - - /* tag image */ --static int tag_image(const char *src_name, const char *dest_name) -+static int do_tag_image(const char *src_name, const char *dest_name) - { - int ret = 0; - im_tag_request *im_request = NULL; -@@ -524,7 +524,7 @@ static int image_tag_cb(const image_tag_image_request *request, image_tag_image_ - - EVENT("Image Event: {Object: %s, Type: Tagging}", src_name); - -- ret = tag_image(src_name, dest_name); -+ ret = do_tag_image(src_name, dest_name); - if (ret != 0) { - cc = ISULAD_ERR_EXEC; - goto out; --- -2.25.1 - diff --git a/0009-fix-small-probability-of-coredump-in-CRI-streaming-s.patch b/0009-fix-small-probability-of-coredump-in-CRI-streaming-s.patch deleted file mode 100644 index a35f5a4..0000000 --- a/0009-fix-small-probability-of-coredump-in-CRI-streaming-s.patch +++ /dev/null @@ -1,1078 +0,0 @@ -From 0295f347d6394294cb2c81741ece78548d4cafc6 Mon Sep 17 00:00:00 2001 -From: wujing -Date: Thu, 14 Jan 2021 10:53:07 +0800 -Subject: [PATCH 09/53] fix small probability of coredump in CRI streaming - services in high concurrency scenarios - -Signed-off-by: wujing ---- - .../cri/cri_container_manager_service_impl.cc | 16 +- - src/daemon/entry/cri/request_cache.cc | 74 ++++++--- - src/daemon/entry/cri/request_cache.h | 29 +++- - .../cri/websocket/service/attach_serve.cc | 60 ++++--- - .../cri/websocket/service/attach_serve.h | 3 +- - .../entry/cri/websocket/service/exec_serve.cc | 71 +++++---- - .../entry/cri/websocket/service/exec_serve.h | 3 +- - .../entry/cri/websocket/service/ws_server.cc | 148 ++++++++++-------- - .../entry/cri/websocket/service/ws_server.h | 20 ++- - src/utils/cpputils/read_write_lock.cc | 59 +++++++ - src/utils/cpputils/read_write_lock.h | 90 +++++++++++ - src/utils/cpputils/stoppable_thread.cc | 4 - - 12 files changed, 392 insertions(+), 185 deletions(-) - create mode 100644 src/utils/cpputils/read_write_lock.cc - create mode 100644 src/utils/cpputils/read_write_lock.h - -diff --git a/src/daemon/entry/cri/cri_container_manager_service_impl.cc b/src/daemon/entry/cri/cri_container_manager_service_impl.cc -index 45ecf9f2..812469ee 100644 ---- a/src/daemon/entry/cri/cri_container_manager_service_impl.cc -+++ b/src/daemon/entry/cri/cri_container_manager_service_impl.cc -@@ -1251,15 +1251,9 @@ void ContainerManagerServiceImpl::Exec(const runtime::v1alpha2::ExecRequest &req - return; - } - RequestCache *cache = RequestCache::GetInstance(); -- runtime::v1alpha2::ExecRequest *execReq = new (std::nothrow) runtime::v1alpha2::ExecRequest(req); -- if (execReq == nullptr) { -- error.SetError("Out of memory"); -- return; -- } -- std::string token = cache->Insert(const_cast(execReq)); -+ std::string token = cache->InsertExecRequest(req); - if (token.empty()) { - error.SetError("failed to get a unique token!"); -- delete execReq; - return; - } - std::string url = BuildURL("exec", token); -@@ -1303,15 +1297,9 @@ void ContainerManagerServiceImpl::Attach(const runtime::v1alpha2::AttachRequest - return; - } - RequestCache *cache = RequestCache::GetInstance(); -- runtime::v1alpha2::AttachRequest *attachReq = new (std::nothrow) runtime::v1alpha2::AttachRequest(req); -- if (attachReq == nullptr) { -- error.SetError("Out of memory"); -- return; -- } -- std::string token = cache->Insert(const_cast(attachReq)); -+ std::string token = cache->InsertAttachRequest(req); - if (token.empty()) { - error.SetError("failed to get a unique token!"); -- delete attachReq; - return; - } - std::string url = BuildURL("attach", token); -diff --git a/src/daemon/entry/cri/request_cache.cc b/src/daemon/entry/cri/request_cache.cc -index a3cb3771..b502715a 100644 ---- a/src/daemon/entry/cri/request_cache.cc -+++ b/src/daemon/entry/cri/request_cache.cc -@@ -41,12 +41,26 @@ RequestCache *RequestCache::GetInstance() noexcept - return cache; - } - --std::string RequestCache::Insert(::google::protobuf::Message *req) -+std::string RequestCache::InsertExecRequest(const runtime::v1alpha2::ExecRequest &req) - { -- if (req == nullptr) { -- ERROR("invalid request"); -+ std::lock_guard lock(m_mutex); -+ // Remove expired entries. -+ GarbageCollection(); -+ // If the cache is full, reject the request. -+ if (m_ll.size() == MaxInFlight) { -+ ERROR("too many cache in flight!"); - return ""; - } -+ auto token = UniqueToken(); -+ CacheEntry tmp; -+ tmp.SetValue(token, &req, nullptr, std::chrono::system_clock::now() + std::chrono::minutes(1)); -+ m_ll.push_front(tmp); -+ m_tokens.insert(std::make_pair(token, tmp)); -+ return token; -+} -+ -+std::string RequestCache::InsertAttachRequest(const runtime::v1alpha2::AttachRequest &req) -+{ - std::lock_guard lock(m_mutex); - // Remove expired entries. - GarbageCollection(); -@@ -56,7 +70,8 @@ std::string RequestCache::Insert(::google::protobuf::Message *req) - return ""; - } - auto token = UniqueToken(); -- CacheEntry tmp { token, req, std::chrono::system_clock::now() + std::chrono::minutes(1) }; -+ CacheEntry tmp; -+ tmp.SetValue(token, nullptr, &req, std::chrono::system_clock::now() + std::chrono::minutes(1)); - m_ll.push_front(tmp); - m_tokens.insert(std::make_pair(token, tmp)); - return token; -@@ -64,16 +79,12 @@ std::string RequestCache::Insert(::google::protobuf::Message *req) - - void RequestCache::GarbageCollection() - { -- std::chrono::system_clock::time_point now = std::chrono::system_clock::now(); -+ auto now = std::chrono::system_clock::now(); - while (!m_ll.empty()) { - CacheEntry oldest = m_ll.back(); - if (now < oldest.expireTime) { - return; - } -- if (oldest.req != nullptr) { -- delete oldest.req; -- oldest.req = nullptr; -- } - m_ll.pop_back(); - m_tokens.erase(oldest.token); - } -@@ -124,34 +135,59 @@ std::string RequestCache::UniqueToken() - ERROR("create unique token failed!"); - return ""; - } -+ - bool RequestCache::IsValidToken(const std::string &token) - { -+ std::lock_guard lock(m_mutex); -+ - return static_cast(m_tokens.count(token)); - } - - // Consume the token (remove it from the cache) and return the cached request, if found. --::google::protobuf::Message *RequestCache::Consume(const std::string &token, bool &found) -+runtime::v1alpha2::ExecRequest RequestCache::ConsumeExecRequest(const std::string &token) - { - std::lock_guard lock(m_mutex); - -- found = false; -- if (!IsValidToken(token)) { -+ if (m_tokens.count(token) == 0 || m_tokens[token].execRequest.size() == 0) { - ERROR("Invalid token"); -- return nullptr; -+ return runtime::v1alpha2::ExecRequest(); - } - - CacheEntry ele = m_tokens[token]; - for (auto it = m_ll.begin(); it != m_ll.end(); it++) { -- if (it->token == ele.token) { -+ if (it->token == token) { - m_ll.erase(it); - break; - } - } - m_tokens.erase(token); -- std::chrono::system_clock::time_point now = std::chrono::system_clock::now(); -- if (now > ele.expireTime) { -- return nullptr; -+ if (std::chrono::system_clock::now() > ele.expireTime) { -+ return runtime::v1alpha2::ExecRequest(); - } -- found = true; -- return ele.req; -+ -+ return ele.execRequest.at(0); - } -+ -+runtime::v1alpha2::AttachRequest RequestCache::ConsumeAttachRequest(const std::string &token) -+{ -+ std::lock_guard lock(m_mutex); -+ -+ if (m_tokens.count(token) == 0 || m_tokens[token].attachRequest.size() == 0) { -+ ERROR("Invalid token"); -+ return runtime::v1alpha2::AttachRequest(); -+ } -+ -+ CacheEntry ele = m_tokens[token]; -+ for (auto it = m_ll.begin(); it != m_ll.end(); it++) { -+ if (it->token == token) { -+ m_ll.erase(it); -+ break; -+ } -+ } -+ m_tokens.erase(token); -+ if (std::chrono::system_clock::now() > ele.expireTime) { -+ return runtime::v1alpha2::AttachRequest(); -+ } -+ -+ return ele.attachRequest.at(0); -+} -\ No newline at end of file -diff --git a/src/daemon/entry/cri/request_cache.h b/src/daemon/entry/cri/request_cache.h -index 024f3ba7..0f86a85e 100644 ---- a/src/daemon/entry/cri/request_cache.h -+++ b/src/daemon/entry/cri/request_cache.h -@@ -21,19 +21,38 @@ - #include - #include - #include -+#include - #include -+#include "api.pb.h" - --typedef struct sCacheEntry { -+struct CacheEntry { - std::string token; -- ::google::protobuf::Message *req; -+ std::vector execRequest; -+ std::vector attachRequest; - std::chrono::system_clock::time_point expireTime; --} CacheEntry, *pCacheEntry; -+ -+ void SetValue(const std::string &t, -+ const runtime::v1alpha2::ExecRequest *execReq, -+ const runtime::v1alpha2::AttachRequest *attachReq, -+ std::chrono::system_clock::time_point et) -+ { -+ token = t; -+ if (execReq != nullptr) { -+ execRequest.push_back(*execReq); -+ } else if (attachReq != nullptr) { -+ attachRequest.push_back(*attachReq); -+ } -+ expireTime = et; -+ } -+}; - - class RequestCache { - public: - static RequestCache *GetInstance() noexcept; -- std::string Insert(::google::protobuf::Message *req); -- ::google::protobuf::Message *Consume(const std::string &token, bool &found); -+ std::string InsertExecRequest(const runtime::v1alpha2::ExecRequest &req); -+ std::string InsertAttachRequest(const runtime::v1alpha2::AttachRequest &req); -+ runtime::v1alpha2::ExecRequest ConsumeExecRequest(const std::string &token); -+ runtime::v1alpha2::AttachRequest ConsumeAttachRequest(const std::string &token); - bool IsValidToken(const std::string &token); - - private: -diff --git a/src/daemon/entry/cri/websocket/service/attach_serve.cc b/src/daemon/entry/cri/websocket/service/attach_serve.cc -index caf02c74..01c6b9cf 100644 ---- a/src/daemon/entry/cri/websocket/service/attach_serve.cc -+++ b/src/daemon/entry/cri/websocket/service/attach_serve.cc -@@ -18,54 +18,50 @@ - - int AttachServe::Execute(struct lws *wsi, const std::string &token, int read_pipe_fd) - { -- RequestCache *cache = RequestCache::GetInstance(); -- bool found = false; -- auto cachedRequest = cache->Consume(token, found); -- if (!found) { -- ERROR("invalid token :%s", token.c_str()); -- return -1; -- } -- runtime::v1alpha2::AttachRequest *request = dynamic_cast(cachedRequest); -- if (request == nullptr) { -- ERROR("failed to get exec request!"); -- return -1; -- } -- -- container_attach_request *container_req = nullptr; -- container_attach_response *container_res = nullptr; -- - service_executor_t *cb = get_service_executor(); - if (cb == nullptr || cb->container.attach == nullptr) { - return -1; - } -- int tret = 0; -- tret = RequestFromCri(request, &container_req); -- if (tret != 0) { -- ERROR("Failed to transform grpc request!"); -+ -+ container_attach_request *container_req = nullptr; -+ if (GetContainerRequest(token, &container_req) != 0) { -+ ERROR("Failed to get contaner request"); - return -1; - } -+ - struct io_write_wrapper stringWriter = { 0 }; - stringWriter.context = (void *)wsi; - stringWriter.write_func = WsWriteStdoutToClient; - stringWriter.close_func = closeWsConnect; - container_req->attach_stderr = false; -+ -+ container_attach_response *container_res = nullptr; - int ret = cb->container.attach(container_req, &container_res, container_req->attach_stdin ? read_pipe_fd : -1, - &stringWriter, nullptr); -+ if (ret != 0) { -+ ERROR("Failed to attach container: %s", container_req->container_id); -+ } -+ - free_container_attach_request(container_req); - free_container_attach_response(container_res); - -- if (request != nullptr) { -- delete request; -- request = nullptr; -- } -- if (tret != 0) { -- ERROR("Failed to translate response to grpc, operation is %s", ret ? "failed" : "success"); -+ return ret; -+} -+ -+int AttachServe::GetContainerRequest(const std::string &token, container_attach_request **container_req) -+{ -+ RequestCache *cache = RequestCache::GetInstance(); -+ auto request = cache->ConsumeAttachRequest(token); -+ -+ int ret = RequestFromCri(request, container_req); -+ if (ret != 0) { -+ ERROR("Failed to transform grpc request!"); - } - - return ret; - } - --int AttachServe::RequestFromCri(const runtime::v1alpha2::AttachRequest *grequest, container_attach_request **request) -+int AttachServe::RequestFromCri(const runtime::v1alpha2::AttachRequest &grequest, container_attach_request **request) - { - container_attach_request *tmpreq = nullptr; - -@@ -75,12 +71,12 @@ int AttachServe::RequestFromCri(const runtime::v1alpha2::AttachRequest *grequest - return -1; - } - -- if (!grequest->container_id().empty()) { -- tmpreq->container_id = util_strdup_s(grequest->container_id().c_str()); -+ if (!grequest.container_id().empty()) { -+ tmpreq->container_id = util_strdup_s(grequest.container_id().c_str()); - } -- tmpreq->attach_stdin = grequest->stdin(); -- tmpreq->attach_stdout = grequest->stdout(); -- tmpreq->attach_stderr = grequest->stderr(); -+ tmpreq->attach_stdin = grequest.stdin(); -+ tmpreq->attach_stdout = grequest.stdout(); -+ tmpreq->attach_stderr = grequest.stderr(); - - *request = tmpreq; - -diff --git a/src/daemon/entry/cri/websocket/service/attach_serve.h b/src/daemon/entry/cri/websocket/service/attach_serve.h -index 7d57b9a3..00e2b34e 100644 ---- a/src/daemon/entry/cri/websocket/service/attach_serve.h -+++ b/src/daemon/entry/cri/websocket/service/attach_serve.h -@@ -35,8 +35,9 @@ public: - virtual ~AttachServe() = default; - int Execute(struct lws *wsi, const std::string &token, int read_pipe_fd) override; - private: -- int RequestFromCri(const runtime::v1alpha2::AttachRequest *grequest, -+ int RequestFromCri(const runtime::v1alpha2::AttachRequest &grequest, - container_attach_request **request); -+ int GetContainerRequest(const std::string &token, container_attach_request **container_req); - }; - #endif // DAEMON_ENTRY_CRI_WEBSOCKET_SERVICE_ATTACH_SERVE_H - -diff --git a/src/daemon/entry/cri/websocket/service/exec_serve.cc b/src/daemon/entry/cri/websocket/service/exec_serve.cc -index b1a3759d..855d28b8 100644 ---- a/src/daemon/entry/cri/websocket/service/exec_serve.cc -+++ b/src/daemon/entry/cri/websocket/service/exec_serve.cc -@@ -19,37 +19,25 @@ - - int ExecServe::Execute(struct lws *wsi, const std::string &token, int read_pipe_fd) - { -- RequestCache *cache = RequestCache::GetInstance(); -- bool found = false; -- auto cachedRequest = cache->Consume(token, found); -- if (!found) { -- ERROR("invalid token :%s", token.c_str()); -- return -1; -- } -- runtime::v1alpha2::ExecRequest *request = dynamic_cast(cachedRequest); -- if (request == nullptr) { -- ERROR("failed to get exec request!"); -- return -1; -- } -- -- container_exec_request *container_req = nullptr; -- container_exec_response *container_res = nullptr; -- - service_executor_t *cb = get_service_executor(); - if (cb == nullptr || cb->container.exec == nullptr) { - return -1; - } -- int tret = RequestFromCri(request, &container_req); -- if (tret != 0) { -- ERROR("Failed to transform grpc request!"); -+ -+ container_exec_request *container_req = nullptr; -+ if (GetContainerRequest(token, &container_req) != 0) { -+ ERROR("Failed to get contaner request"); - return -1; - } -+ - struct io_write_wrapper StdoutstringWriter = { 0 }; - StdoutstringWriter.context = (void *)wsi; - StdoutstringWriter.write_func = WsWriteStdoutToClient; - struct io_write_wrapper StderrstringWriter = { 0 }; - StderrstringWriter.context = (void *)wsi; - StderrstringWriter.write_func = WsWriteStderrToClient; -+ -+ container_exec_response *container_res = nullptr; - int ret = cb->container.exec(container_req, &container_res, container_req->attach_stdin ? read_pipe_fd : -1, - container_req->attach_stdout ? &StdoutstringWriter : nullptr, - container_req->attach_stderr ? &StderrstringWriter : nullptr); -@@ -66,19 +54,29 @@ int ExecServe::Execute(struct lws *wsi, const std::string &token, int read_pipe_ - std::string exit_info = "Exit code :" + std::to_string((int)container_res->exit_code) + "\n"; - WsWriteStdoutToClient(wsi, exit_info.c_str(), exit_info.length()); - } -+ - free_container_exec_request(container_req); - free_container_exec_response(container_res); -- if (request != nullptr) { -- delete request; -- request = nullptr; -- } - - (void)closeWsConnect((void*)wsi, nullptr); - - return ret; - } - --int ExecServe::RequestFromCri(const runtime::v1alpha2::ExecRequest *grequest, container_exec_request **request) -+int ExecServe::GetContainerRequest(const std::string &token, container_exec_request **container_req) -+{ -+ RequestCache *cache = RequestCache::GetInstance(); -+ auto request = cache->ConsumeExecRequest(token); -+ -+ int ret = RequestFromCri(request, container_req); -+ if (ret != 0) { -+ ERROR("Failed to transform grpc request!"); -+ } -+ -+ return ret; -+} -+ -+int ExecServe::RequestFromCri(const runtime::v1alpha2::ExecRequest &grequest, container_exec_request **request) - { - container_exec_request *tmpreq = nullptr; - -@@ -88,32 +86,33 @@ int ExecServe::RequestFromCri(const runtime::v1alpha2::ExecRequest *grequest, co - return -1; - } - -- tmpreq->tty = grequest->tty(); -- tmpreq->attach_stdin = grequest->stdin(); -- tmpreq->attach_stdout = grequest->stdout(); -- tmpreq->attach_stderr = grequest->stderr(); -+ tmpreq->tty = grequest.tty(); -+ tmpreq->attach_stdin = grequest.stdin(); -+ tmpreq->attach_stdout = grequest.stdout(); -+ tmpreq->attach_stderr = grequest.stderr(); - -- if (!grequest->container_id().empty()) { -- tmpreq->container_id = util_strdup_s(grequest->container_id().c_str()); -+ if (!grequest.container_id().empty()) { -+ tmpreq->container_id = util_strdup_s(grequest.container_id().c_str()); - } - -- if (grequest->cmd_size() > 0) { -- if ((size_t)grequest->cmd_size() > SIZE_MAX / sizeof(char *)) { -+ if (grequest.cmd_size() > 0) { -+ if ((size_t)grequest.cmd_size() > SIZE_MAX / sizeof(char *)) { - ERROR("Too many arguments!"); - free_container_exec_request(tmpreq); - return -1; - } -- tmpreq->argv = (char **)util_common_calloc_s(sizeof(char *) * grequest->cmd_size()); -+ tmpreq->argv = (char **)util_common_calloc_s(sizeof(char *) * grequest.cmd_size()); - if (tmpreq->argv == nullptr) { - ERROR("Out of memory!"); - free_container_exec_request(tmpreq); - return -1; - } -- for (int i = 0; i < grequest->cmd_size(); i++) { -- tmpreq->argv[i] = util_strdup_s(grequest->cmd(i).c_str()); -+ for (int i = 0; i < grequest.cmd_size(); i++) { -+ tmpreq->argv[i] = util_strdup_s(grequest.cmd(i).c_str()); - } -- tmpreq->argv_len = (size_t)grequest->cmd_size(); -+ tmpreq->argv_len = (size_t)grequest.cmd_size(); - } -+ - *request = tmpreq; - return 0; - } -diff --git a/src/daemon/entry/cri/websocket/service/exec_serve.h b/src/daemon/entry/cri/websocket/service/exec_serve.h -index ef474018..b29c3e1e 100644 ---- a/src/daemon/entry/cri/websocket/service/exec_serve.h -+++ b/src/daemon/entry/cri/websocket/service/exec_serve.h -@@ -40,6 +40,7 @@ public: - int Execute(struct lws *wsi, const std::string &token, int read_pipe_fd) override; - - private: -- int RequestFromCri(const runtime::v1alpha2::ExecRequest *grequest, container_exec_request **request); -+ int RequestFromCri(const runtime::v1alpha2::ExecRequest &grequest, container_exec_request **request); -+ int GetContainerRequest(const std::string &token, container_exec_request **request); - }; - #endif // DAEMON_ENTRY_CRI_WEBSOCKET_SERVICE_EXEC_SERVE_H -diff --git a/src/daemon/entry/cri/websocket/service/ws_server.cc b/src/daemon/entry/cri/websocket/service/ws_server.cc -index c7e1b538..795d2c1e 100644 ---- a/src/daemon/entry/cri/websocket/service/ws_server.cc -+++ b/src/daemon/entry/cri/websocket/service/ws_server.cc -@@ -28,22 +28,19 @@ - - struct lws_context *WebsocketServer::m_context = nullptr; - std::atomic WebsocketServer::m_instance; --std::mutex WebsocketServer::m_mutex; --std::unordered_map WebsocketServer::m_wsis; -+RWMutex WebsocketServer::m_mutex; -+std::unordered_map WebsocketServer::m_wsis; -+std::unordered_set WebsocketServer::m_activeSession; -+ - WebsocketServer *WebsocketServer::GetInstance() noexcept - { -- WebsocketServer *server = m_instance.load(std::memory_order_relaxed); -- std::atomic_thread_fence(std::memory_order_acquire); -- if (server == nullptr) { -- std::lock_guard lock(m_mutex); -- server = m_instance.load(std::memory_order_relaxed); -- if (server == nullptr) { -- server = new WebsocketServer; -- std::atomic_thread_fence(std::memory_order_release); -- m_instance.store(server, std::memory_order_relaxed); -- } -- } -- return server; -+ static std::once_flag flag; -+ -+ std::call_once(flag, [] { -+ m_instance = new WebsocketServer; -+ }); -+ -+ return m_instance; - } - - WebsocketServer::WebsocketServer() -@@ -62,14 +59,14 @@ url::URLDatum WebsocketServer::GetWebsocketUrl() - return m_url; - } - --std::unordered_map &WebsocketServer::GetWsisData() -+std::unordered_map &WebsocketServer::GetWsisData() - { - return m_wsis; - } - --void WebsocketServer::LockAllWsSession() -+void WebsocketServer::ReadLockAllWsSession() - { -- m_mutex.lock(); -+ m_mutex.rdlock(); - } - - void WebsocketServer::UnlockAllWsSession() -@@ -160,7 +157,7 @@ void WebsocketServer::RegisterCallback(const std::string &path, - - void WebsocketServer::CloseAllWsSession() - { -- std::lock_guard lock(m_mutex); -+ WriteGuard lock(m_mutex); - for (auto it = m_wsis.begin(); it != m_wsis.end(); ++it) { - free(it->second.buf); - close(it->second.pipes.at(0)); -@@ -172,15 +169,10 @@ void WebsocketServer::CloseAllWsSession() - m_wsis.clear(); - } - --void WebsocketServer::CloseWsSession(struct lws *wsi) -+void WebsocketServer::CloseWsSession(int socketID) - { -- const int WAIT_PERIOD_MS = 50; -- -- auto it = m_wsis.find(wsi); -+ auto it = m_wsis.find(socketID); - if (it != m_wsis.end()) { -- while (it->second.GetProcessingStatus()) { -- std::this_thread::sleep_for(std::chrono::milliseconds(WAIT_PERIOD_MS)); -- } - free(it->second.buf); - close(it->second.pipes.at(0)); - close(it->second.pipes.at(1)); -@@ -191,6 +183,21 @@ void WebsocketServer::CloseWsSession(struct lws *wsi) - } - } - -+void WebsocketServer::RecordSession(struct lws *wsi) -+{ -+ m_activeSession.insert(wsi); -+} -+ -+void WebsocketServer::RemoveSession(struct lws *wsi) -+{ -+ m_activeSession.erase(wsi); -+} -+ -+bool WebsocketServer::IsValidSession(struct lws *wsi) -+{ -+ return m_activeSession.count(wsi) != 0; -+} -+ - int WebsocketServer::DumpHandshakeInfo(struct lws *wsi) noexcept - { - int read_pipe_fd[PIPE_FD_NUM]; -@@ -200,15 +207,17 @@ int WebsocketServer::DumpHandshakeInfo(struct lws *wsi) noexcept - - session_data session; - session.pipes = std::array { read_pipe_fd[0], read_pipe_fd[1] }; -- m_wsis.insert(std::make_pair(wsi, session)); -- m_wsis[wsi].buf = (unsigned char *)util_common_calloc_s(LWS_PRE + MAX_MSG_BUFFER_SIZE + 1); -- if (m_wsis[wsi].buf == nullptr) { -+ -+ int socketID = lws_get_socket_fd(wsi); -+ m_wsis.insert(std::make_pair(socketID, std::move(session))); -+ m_wsis[socketID].buf = (unsigned char *)util_common_calloc_s(LWS_PRE + MAX_MSG_BUFFER_SIZE + 1); -+ if (m_wsis[socketID].buf == nullptr) { - ERROR("Out of memory"); - return -1; - } -- m_wsis[wsi].buf_mutex = new std::mutex; -- m_wsis[wsi].sended_mutex = new std::mutex; -- m_wsis[wsi].SetProcessingStatus(false); -+ m_wsis[socketID].buf_mutex = new std::mutex; -+ m_wsis[socketID].sended_mutex = new std::mutex; -+ m_wsis[socketID].SetProcessingStatus(false); - - int len; - char buf[MAX_BUF_LEN] { 0 }; -@@ -216,7 +225,7 @@ int WebsocketServer::DumpHandshakeInfo(struct lws *wsi) noexcept - lws_hdr_copy(wsi, buf, sizeof(buf), WSI_TOKEN_GET_URI); - if (strlen(buf) == 0) { - ERROR("invalid url"); -- CloseWsSession(wsi); -+ CloseWsSession(socketID); - return -1; - } - -@@ -228,14 +237,15 @@ int WebsocketServer::DumpHandshakeInfo(struct lws *wsi) noexcept - !m_handler.IsValidMethod(vec.at(1)) || - !cache->IsValidToken(vec.at(2))) { - ERROR("invalid url(%s): incorrect format!", buf); -- CloseWsSession(wsi); -+ CloseWsSession(socketID); - return -1; - } - - std::thread streamTh([ = ]() { -- StreamTask(&m_handler, wsi, vec.at(1), vec.at(2), m_wsis[wsi].pipes.at(0)).Run(); -+ StreamTask(&m_handler, wsi, vec.at(1), vec.at(2), m_wsis[socketID].pipes.at(0)).Run(); - }); - streamTh.detach(); -+ RecordSession(wsi); - int n = 0; - const unsigned char *c = nullptr; - do { -@@ -260,7 +270,7 @@ int WebsocketServer::DumpHandshakeInfo(struct lws *wsi) noexcept - - int WebsocketServer::Wswrite(struct lws *wsi, void *in, size_t len) - { -- auto it = m_wsis.find(wsi); -+ auto it = m_wsis.find(lws_get_socket_fd(wsi)); - if (it != m_wsis.end()) { - if (it->second.close) { - DEBUG("websocket session disconnected"); -@@ -286,9 +296,9 @@ int WebsocketServer::Wswrite(struct lws *wsi, void *in, size_t len) - return 0; - } - --void WebsocketServer::Receive(struct lws *wsi, void *in, size_t len) -+void WebsocketServer::Receive(int socketID, void *in, size_t len) - { -- if (m_wsis.find(wsi) == m_wsis.end()) { -+ if (m_wsis.find(socketID) == m_wsis.end()) { - ERROR("invailed websocket session!"); - return; - } -@@ -298,20 +308,20 @@ void WebsocketServer::Receive(struct lws *wsi, void *in, size_t len) - return; - } - -- if (write(m_wsis[wsi].pipes.at(1), (void *)((char *)in + 1), len - 1) < 0) { -+ if (write(m_wsis[socketID].pipes.at(1), (void *)((char *)in + 1), len - 1) < 0) { - ERROR("sub write over!"); - return; - } - } - --void WebsocketServer::SetLwsSendedFlag(struct lws *wsi, bool sended) -+void WebsocketServer::SetLwsSendedFlag(int socketID, bool sended) - { -- auto it = m_wsis.find(wsi); -- if (it != m_wsis.end()) { -- it->second.sended_mutex->lock(); -- it->second.sended = sended; -- it->second.sended_mutex->unlock(); -+ if (m_wsis.count(socketID) == 0) { -+ return; - } -+ m_wsis[socketID].sended_mutex->lock(); -+ m_wsis[socketID].sended = sended; -+ m_wsis[socketID].sended_mutex->unlock(); - } - - int WebsocketServer::Callback(struct lws *wsi, enum lws_callback_reasons reason, -@@ -323,7 +333,7 @@ int WebsocketServer::Callback(struct lws *wsi, enum lws_callback_reasons reason, - // asking to upgrade the connection to a websocket one. - return -1; - case LWS_CALLBACK_FILTER_PROTOCOL_CONNECTION: { -- std::lock_guard lock(m_mutex); -+ WriteGuard lock(m_mutex); - if (WebsocketServer::GetInstance()->DumpHandshakeInfo(wsi)) { - // return non-zero here and kill the connection - return -1; -@@ -335,22 +345,27 @@ int WebsocketServer::Callback(struct lws *wsi, enum lws_callback_reasons reason, - } - break; - case LWS_CALLBACK_SERVER_WRITEABLE: { -- std::lock_guard lock(m_mutex); -+ ReadGuard lock(m_mutex); -+ int socketID = lws_get_socket_fd(wsi); - if (WebsocketServer::GetInstance()->Wswrite(wsi, in, len)) { -- WebsocketServer::GetInstance()->SetLwsSendedFlag(wsi, true); -+ WebsocketServer::GetInstance()->SetLwsSendedFlag(socketID, true); -+ // return nonzero from the user callback to close the connection -+ // and callback with the reason of LWS_CALLBACK_CLOSED - return -1; - } -- WebsocketServer::GetInstance()->SetLwsSendedFlag(wsi, true); -+ WebsocketServer::GetInstance()->SetLwsSendedFlag(socketID, true); - } - break; - case LWS_CALLBACK_RECEIVE: { -- std::lock_guard lock(m_mutex); -- WebsocketServer::GetInstance()->Receive(wsi, (char *)in, len); -+ ReadGuard lock(m_mutex); -+ WebsocketServer::GetInstance()->Receive(lws_get_socket_fd(wsi), (char *)in, len); - } - break; - case LWS_CALLBACK_CLOSED: { -- std::lock_guard lock(m_mutex); -- WebsocketServer::GetInstance()->CloseWsSession(wsi); -+ WriteGuard lock(m_mutex); -+ DEBUG("connection has been closed"); -+ WebsocketServer::GetInstance()->RemoveSession(wsi); -+ WebsocketServer::GetInstance()->CloseWsSession(lws_get_socket_fd(wsi)); - } - break; - default: -@@ -363,8 +378,7 @@ void WebsocketServer::ServiceWorkThread(int threadid) - { - int n = 0; - while (n >= 0 && !m_force_exit) { -- n = lws_service(m_context, 50); -- std::this_thread::sleep_for(std::chrono::milliseconds(1)); -+ n = lws_service(m_context, 0); - } - } - -@@ -396,20 +410,19 @@ void WebsocketServer::Wait() - } - - namespace { --auto PrepareWsiSession(struct lws *wsi) -> session_data * -+auto PrepareWsiSession(int socketID) -> session_data * - { - WebsocketServer *server = WebsocketServer::GetInstance(); -- server->LockAllWsSession(); -+ server->ReadLockAllWsSession(); - -- auto itor = server->GetWsisData().find(wsi); -+ auto itor = server->GetWsisData().find(socketID); - if (itor == server->GetWsisData().end()) { - ERROR("invalid session!"); - server->UnlockAllWsSession(); - return nullptr; - } -- itor->second.SetProcessingStatus(true); -+ server->SetLwsSendedFlag(socketID, false); - server->UnlockAllWsSession(); -- server->SetLwsSendedFlag(wsi, false); - - return &itor->second; - } -@@ -450,15 +463,13 @@ void EnsureWrited(struct lws *wsi, session_data *session) - } - std::this_thread::sleep_for(std::chrono::milliseconds(TRIGGER_PERIOD_MS)); - } -- -- session->SetProcessingStatus(false); - } - - ssize_t WsWriteToClient(void *context, const void *data, size_t len, WebsocketChannel channel) - { - struct lws *wsi = static_cast(context); - -- session_data *session = PrepareWsiSession(wsi); -+ session_data *session = PrepareWsiSession(lws_get_socket_fd(wsi)); - if (session == nullptr) { - return 0; - } -@@ -487,15 +498,20 @@ int closeWsConnect(void *context, char **err) - struct lws *wsi = static_cast(context); - - WebsocketServer *server = WebsocketServer::GetInstance(); -- auto it = server->GetWsisData().find(wsi); -+ server->ReadLockAllWsSession(); -+ auto it = server->GetWsisData().find(lws_get_socket_fd(wsi)); - if (it == server->GetWsisData().end()) { -+ server->UnlockAllWsSession(); - ERROR("websocket session not exist"); - return -1; - } -+ - it->second.close = true; - // close websocket session -- lws_callback_on_writable(wsi); -+ if (server->IsValidSession(wsi)) { -+ lws_callback_on_writable(wsi); -+ } -+ server->UnlockAllWsSession(); -+ - return 0; - } -- -- -diff --git a/src/daemon/entry/cri/websocket/service/ws_server.h b/src/daemon/entry/cri/websocket/service/ws_server.h -index 1370c552..cb431f7f 100644 ---- a/src/daemon/entry/cri/websocket/service/ws_server.h -+++ b/src/daemon/entry/cri/websocket/service/ws_server.h -@@ -17,6 +17,7 @@ - #define DAEMON_ENTRY_CRI_WEBSOCKET_SERVICE_WS_SERVER_H - #include - #include -+#include - #include - #include - #include -@@ -26,6 +27,7 @@ - #include "route_callback_register.h" - #include "url.h" - #include "errors.h" -+#include "read_write_lock.h" - - #define MAX_ECHO_PAYLOAD 4096 - #define MAX_ARRAY_LEN 2 -@@ -71,10 +73,11 @@ public: - void Shutdown(); - void RegisterCallback(const std::string &path, std::shared_ptr callback); - url::URLDatum GetWebsocketUrl(); -- std::unordered_map &GetWsisData(); -- void SetLwsSendedFlag(struct lws *wsi, bool sended); -- void LockAllWsSession(); -+ std::unordered_map &GetWsisData(); -+ void SetLwsSendedFlag(int socketID, bool sended); -+ void ReadLockAllWsSession(); - void UnlockAllWsSession(); -+ bool IsValidSession(struct lws *wsi); - - private: - WebsocketServer(); -@@ -85,17 +88,19 @@ private: - std::vector split(std::string str, char r); - static void EmitLog(int level, const char *line); - int CreateContext(); -- inline void Receive(struct lws *client, void *in, size_t len); -+ inline void Receive(int socketID, void *in, size_t len); - int Wswrite(struct lws *wsi, void *in, size_t len); - inline int DumpHandshakeInfo(struct lws *wsi) noexcept; - static int Callback(struct lws *wsi, enum lws_callback_reasons reason, - void *user, void *in, size_t len); - void ServiceWorkThread(int threadid); -- void CloseWsSession(struct lws *wsi); -+ void CloseWsSession(int socketID); - void CloseAllWsSession(); -+ void RecordSession(struct lws *wsi); -+ void RemoveSession(struct lws *wsi); - - private: -- static std::mutex m_mutex; -+ static RWMutex m_mutex; - static struct lws_context *m_context; - volatile int m_force_exit = 0; - std::thread m_pthread_service; -@@ -104,7 +109,8 @@ private: - { NULL, NULL, 0, 0 } - }; - RouteCallbackRegister m_handler; -- static std::unordered_map m_wsis; -+ static std::unordered_map m_wsis; -+ static std::unordered_set m_activeSession; - url::URLDatum m_url; - int m_listenPort; - }; -diff --git a/src/utils/cpputils/read_write_lock.cc b/src/utils/cpputils/read_write_lock.cc -new file mode 100644 -index 00000000..c9f94dc8 ---- /dev/null -+++ b/src/utils/cpputils/read_write_lock.cc -@@ -0,0 +1,59 @@ -+/****************************************************************************** -+ * Copyright (c) Huawei Technologies Co., Ltd. 2021. All rights reserved. -+ * iSulad licensed under the Mulan PSL v2. -+ * You can use this software according to the terms and conditions of the Mulan PSL v2. -+ * You may obtain a copy of Mulan PSL v2 at: -+ * http://license.coscl.org.cn/MulanPSL2 -+ * THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND, EITHER EXPRESS OR -+ * IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT, MERCHANTABILITY OR FIT FOR A PARTICULAR -+ * PURPOSE. -+ * See the Mulan PSL v2 for more details. -+ * Author: wujing -+ * Create: 2021-01-18 -+ * Description: provide read write lock implementation -+ *********************************************************************************/ -+ -+#include "read_write_lock.h" -+ -+void RWMutex::rdlock() -+{ -+ std::unique_lock autoLock(m_mutex); -+ ++m_waiting_readers; -+ m_read_cond.wait(autoLock, [&]() { -+ return m_waiting_writers == 0 && m_status >= 0; -+ }); -+ --m_waiting_readers; -+ ++m_status; -+} -+ -+void RWMutex::wrlock() -+{ -+ std::unique_lock autoLock(m_mutex); -+ ++m_waiting_writers; -+ m_write_cond.wait(autoLock, [&]() { -+ return m_status == 0; -+ }); -+ --m_waiting_writers; -+ --m_status; -+} -+ -+void RWMutex::unlock() -+{ -+ std::unique_lock autoLock(m_mutex); -+ -+ if (m_status == -1) { // one writer -+ m_status = 0; -+ } else if (m_status > 0) { // one or multiple readers -+ --m_status; -+ } else { // neither readers nor writers -+ return; -+ } -+ -+ if (m_waiting_writers > 0) { -+ if (m_status == 0) { -+ m_write_cond.notify_one(); -+ } -+ } else { -+ m_read_cond.notify_all(); -+ } -+} -diff --git a/src/utils/cpputils/read_write_lock.h b/src/utils/cpputils/read_write_lock.h -new file mode 100644 -index 00000000..0149e3a5 ---- /dev/null -+++ b/src/utils/cpputils/read_write_lock.h -@@ -0,0 +1,90 @@ -+/****************************************************************************** -+ * Copyright (c) Huawei Technologies Co., Ltd. 2021. All rights reserved. -+ * iSulad licensed under the Mulan PSL v2. -+ * You can use this software according to the terms and conditions of the Mulan PSL v2. -+ * You may obtain a copy of Mulan PSL v2 at: -+ * http://license.coscl.org.cn/MulanPSL2 -+ * THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND, EITHER EXPRESS OR -+ * IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT, MERCHANTABILITY OR FIT FOR A PARTICULAR -+ * PURPOSE. -+ * See the Mulan PSL v2 for more details. -+ * Author: wujing -+ * Create: 2021-01-18 -+ * Description: provide read write lock definition -+ *********************************************************************************/ -+#ifndef UTILS_CPPUTILS_READ_WRITE_LOCK_H -+#define UTILS_CPPUTILS_READ_WRITE_LOCK_H -+ -+#include -+#include -+#include -+#include -+ -+class RWMutex { -+public: -+ RWMutex() = default; -+ ~RWMutex() = default; -+ RWMutex(const RWMutex &) = delete; -+ RWMutex(RWMutex &&) = delete; -+ RWMutex &operator = (const RWMutex &) = delete; -+ RWMutex &operator = (RWMutex &&) = delete; -+ -+ void rdlock(); -+ void wrlock(); -+ void unlock(); -+ -+private: -+ volatile long m_status {0}; -+ volatile long m_waiting_readers {0}; -+ volatile long m_waiting_writers {0}; -+ std::mutex m_mutex; -+ std::condition_variable m_read_cond; -+ std::condition_variable m_write_cond; -+}; -+ -+template -+class ReadGuard { -+public: -+ explicit ReadGuard(RWMutexType &lock) : m_lock(lock) -+ { -+ m_lock.rdlock(); -+ } -+ virtual ~ReadGuard() -+ { -+ m_lock.unlock(); -+ } -+ -+ ReadGuard() = delete; -+ ReadGuard(const ReadGuard &) = delete; -+ ReadGuard &operator=(const ReadGuard &) = delete; -+ ReadGuard(const ReadGuard &&) = delete; -+ ReadGuard &operator = (const ReadGuard &&) = delete; -+ -+private: -+ RWMutexType &m_lock; -+}; -+ -+ -+template -+class WriteGuard { -+public: -+ explicit WriteGuard(RWMutexType &lock) : m_lock(lock) -+ { -+ m_lock.wrlock(); -+ } -+ virtual ~WriteGuard() -+ { -+ m_lock.unlock(); -+ } -+ -+ WriteGuard() = delete; -+ WriteGuard(const WriteGuard &) = delete; -+ WriteGuard &operator=(const WriteGuard &) = delete; -+ WriteGuard(const WriteGuard &&) = delete; -+ WriteGuard &operator = (const WriteGuard &&) = delete; -+ -+private: -+ RWMutexType &m_lock; -+}; -+ -+#endif // UTILS_CPPUTILS_READ_WRITE_LOCK_H -diff --git a/src/utils/cpputils/stoppable_thread.cc b/src/utils/cpputils/stoppable_thread.cc -index 0d15aa01..68f6d9b2 100644 ---- a/src/utils/cpputils/stoppable_thread.cc -+++ b/src/utils/cpputils/stoppable_thread.cc -@@ -22,7 +22,6 @@ StoppableThread &StoppableThread::operator=(StoppableThread &&obj) - return *this; - } - -- - bool StoppableThread::stopRequested() - { - if (m_future_obj.wait_for(std::chrono::milliseconds(0)) == std::future_status::timeout) { -@@ -35,6 +34,3 @@ void StoppableThread::stop() - { - m_exit_signal.set_value(); - } -- -- -- --- -2.25.1 - diff --git a/0010-fix-ramdom-coredump-if-pull-failed.patch b/0010-fix-ramdom-coredump-if-pull-failed.patch deleted file mode 100644 index a8918fc..0000000 --- a/0010-fix-ramdom-coredump-if-pull-failed.patch +++ /dev/null @@ -1,52 +0,0 @@ -From 7e04901403a0053f67eae6c9bb58764b529c0bd8 Mon Sep 17 00:00:00 2001 -From: WangFengTu -Date: Tue, 19 Jan 2021 16:57:17 +0800 -Subject: [PATCH 10/53] fix ramdom coredump if pull failed - -Signed-off-by: WangFengTu ---- - src/daemon/modules/image/oci/registry/registry.c | 13 +++++++++++-- - 1 file changed, 11 insertions(+), 2 deletions(-) - -diff --git a/src/daemon/modules/image/oci/registry/registry.c b/src/daemon/modules/image/oci/registry/registry.c -index 3fba2039..1bb91d0f 100644 ---- a/src/daemon/modules/image/oci/registry/registry.c -+++ b/src/daemon/modules/image/oci/registry/registry.c -@@ -1298,8 +1298,10 @@ static void free_thread_fetch_info(thread_fetch_info *info) - return; - } - --static bool all_fetch_complete(pull_descriptor *desc, int *result) -+static bool all_fetch_complete(pull_descriptor *desc, thread_fetch_info *infos, int *result) - { -+ int i = 0; -+ - if (!desc->config.complete) { - return false; - } -@@ -1314,6 +1316,13 @@ static bool all_fetch_complete(pull_descriptor *desc, int *result) - return false; - } - -+ // wait all fetch threads completed -+ for (i = 0; i < desc->layers_len; i++) { -+ if (infos[i].use && !infos[i].notified) { -+ return false; -+ } -+ } -+ - if (desc->cancel) { - *result = -1; - } -@@ -1584,7 +1593,7 @@ static int fetch_all(pull_descriptor *desc) - - // wait until all pulled or cancelled - mutex_lock(&g_shared->mutex); -- while (!all_fetch_complete(desc, &result)) { -+ while (!all_fetch_complete(desc, infos, &result)) { - ts.tv_sec = time(NULL) + DEFAULT_WAIT_TIMEOUT; // avoid wait forever - cond_ret = pthread_cond_timedwait(&g_shared->cond, &g_shared->mutex, &ts); - if (cond_ret != 0 && cond_ret != ETIMEDOUT) { --- -2.25.1 - diff --git a/0011-shim-optimize-io-stream.patch b/0011-shim-optimize-io-stream.patch deleted file mode 100644 index cc4822c..0000000 --- a/0011-shim-optimize-io-stream.patch +++ /dev/null @@ -1,257 +0,0 @@ -From bbf3f17765483e2e87e96e975c1d85bb5250c8f2 Mon Sep 17 00:00:00 2001 -From: gaohuatao -Date: Wed, 20 Jan 2021 10:13:14 +0800 -Subject: [PATCH 11/53] shim: optimize io stream - -Signed-off-by: gaohuatao ---- - src/cmd/isulad-shim/common.c | 25 ++++++++++++++ - src/cmd/isulad-shim/common.h | 2 ++ - src/cmd/isulad-shim/process.c | 48 ++++++++++++++++---------- - src/cmd/isulad-shim/process.h | 6 ++-- - src/cmd/isulad-shim/terminal.c | 2 +- - test/cmd/isulad-shim/isulad-shim_ut.cc | 2 +- - 6 files changed, 61 insertions(+), 24 deletions(-) - -diff --git a/src/cmd/isulad-shim/common.c b/src/cmd/isulad-shim/common.c -index 23aa33cd..324d72a1 100644 ---- a/src/cmd/isulad-shim/common.c -+++ b/src/cmd/isulad-shim/common.c -@@ -84,6 +84,31 @@ ssize_t write_nointr(int fd, const void *buf, size_t count) - return nret; - } - -+ssize_t write_nointr_in_total(int fd, const char *buf, size_t count) -+{ -+ ssize_t nret = 0; -+ ssize_t nwritten; -+ -+ if (buf == NULL) { -+ return -1; -+ } -+ -+ for (nwritten = 0; nwritten < count;) { -+ nret = write(fd, buf + nwritten, count - nwritten); -+ if (nret < 0) { -+ if (errno == EINTR || errno == EAGAIN) { -+ continue; -+ } else { -+ return nret; -+ } -+ } else { -+ nwritten += nret; -+ } -+ } -+ -+ return nwritten; -+} -+ - bool file_exists(const char *f) - { - struct stat buf; -diff --git a/src/cmd/isulad-shim/common.h b/src/cmd/isulad-shim/common.h -index b83d72ba..8c6ea7ba 100644 ---- a/src/cmd/isulad-shim/common.h -+++ b/src/cmd/isulad-shim/common.h -@@ -52,6 +52,8 @@ extern "C" { - ssize_t read_nointr(int fd, void *buf, size_t count); - ssize_t write_nointr(int fd, const void *buf, size_t count); - -+ssize_t write_nointr_in_total(int fd, const char *buf, size_t count); -+ - char *read_text_file(const char *path); - - bool file_exists(const char *f); -diff --git a/src/cmd/isulad-shim/process.c b/src/cmd/isulad-shim/process.c -index 606a3df7..3ac739b9 100644 ---- a/src/cmd/isulad-shim/process.c -+++ b/src/cmd/isulad-shim/process.c -@@ -44,15 +44,6 @@ - - extern int g_log_fd; - --typedef int (*epoll_loop_callback_t)(int fd, uint32_t event, void *data); -- --struct epoll_loop_handler { -- epoll_loop_callback_t cb; -- int epfd; -- int cbfd; -- void *cbdata; --}; -- - static shim_client_process_state *load_process() - { - parser_error err = NULL; -@@ -243,7 +234,7 @@ static void remove_io_dispatch(io_thread_t *io_thd, int from, int to) - pthread_mutex_unlock(&(ioc->mutex)); - } - --static void *task_io_copy(void *data) -+static void *do_io_copy(void *data) - { - io_thread_t *io_thd = (io_thread_t *)data; - if (io_thd == NULL || io_thd->ioc == NULL) { -@@ -278,7 +269,7 @@ static void *task_io_copy(void *data) - shim_write_container_log_file(io_thd->terminal, ioc->id == stdid_out ? "stdout" : "stderr", buf, - r_count); - } else { -- int w_count = write_nointr(fn->fd, buf, r_count); -+ int w_count = write_nointr_in_total(fn->fd, buf, r_count); - if (w_count < 0) { - /* When any error occurs, remove the write fd */ - remove_io_dispatch(io_thd, -1, fn->fd); -@@ -287,7 +278,11 @@ static void *task_io_copy(void *data) - } - } - -- if (io_thd->shutdown) { -+ /* -+ In the case of stdout and stderr, maybe numbers of read bytes are not the last msg in pipe. -+ So, when the value of r_count is larger than zero, we need to try reading again to avoid loss msgs. -+ */ -+ if (io_thd->shutdown && r_count <= 0) { - break; - } - } -@@ -301,7 +296,7 @@ static void *task_io_copy(void *data) - return NULL; - } - --static void do_io_copy(int fd, uint32_t event, void *data) -+static void sem_post_inotify_io_copy(int fd, uint32_t event, void *data) - { - io_thread_t *thd = (io_thread_t *)data; - if (thd->ioc == NULL || fd != thd->ioc->fd_from) { -@@ -318,7 +313,7 @@ static void do_io_copy(int fd, uint32_t event, void *data) - return; - } - --static int process_io_start(process_t *p, int std_id) -+static int create_io_copy_thread(process_t *p, int std_id) - { - int ret = SHIM_ERR; - io_thread_t *io_thd = NULL; -@@ -351,7 +346,7 @@ static int process_io_start(process_t *p, int std_id) - - p->io_threads[std_id] = io_thd; - -- ret = pthread_create(&(io_thd->tid), NULL, task_io_copy, io_thd); -+ ret = pthread_create(&(io_thd->tid), NULL, do_io_copy, io_thd); - if (ret != SHIM_OK) { - write_message(g_log_fd, ERR_MSG, "thread io copy create failed:%d", SHIM_SYS_ERR(errno)); - goto failure; -@@ -380,7 +375,7 @@ static int start_io_copy_threads(process_t *p) - - /* 3 threads for stdin, stdout and stderr */ - for (i = 0; i < 3; i++) { -- ret = process_io_start(p, i); -+ ret = create_io_copy_thread(p, i); - if (ret != SHIM_OK) { - return SHIM_ERR; - } -@@ -405,6 +400,20 @@ static void destroy_io_thread(process_t *p, int std_id) - p->io_threads[std_id] = NULL; - } - -+/* -+ std_id: channel type -+ isulad_stdio: one side of the isulad fifo file -+ fd: one side of the shim io pipe -+ --------------------------------------------------------------- -+ | CHANNEL | iSulad Fifo Side | Flow Direction | fd | -+ --------------------------------------------------------------- -+ | STDIN | READ | --> | WRITE | -+ --------------------------------------------------------------- -+ | STDOUT | WRITE | <-- | READ | -+ --------------------------------------------------------------- -+ | STDERR | WRITE | <-- | READ | -+ --------------------------------------------------------------- -+*/ - static int connect_to_isulad(process_t *p, int std_id, const char *isulad_stdio, int fd) - { - mode_t mode; -@@ -501,7 +510,7 @@ out: - return NULL; - } - --static void *task_io_loop(void *data) -+static void *io_epoll_loop(void *data) - { - process_t *p = (process_t *)data; - int wait_fds = 0; -@@ -526,7 +535,7 @@ static void *task_io_loop(void *data) - - for (i = 0; i < wait_fds; i++) { - io_thread_t *thd_io = (io_thread_t *)evs[i].data.ptr; -- do_io_copy(thd_io->ioc->fd_from, evs[i].events, thd_io); -+ sem_post_inotify_io_copy(thd_io->ioc->fd_from, evs[i].events, thd_io); - } - } - } -@@ -702,6 +711,7 @@ static int open_generic_io(process_t *p) - { - int ret = SHIM_ERR; - -+ // io: in: w out/err: r - stdio_t *io = initialize_io(p); - if (io == NULL) { - return SHIM_ERR; -@@ -858,7 +868,7 @@ int process_io_init(process_t *p) - int ret = SHIM_ERR; - - pthread_t tid_loop; -- ret = pthread_create(&tid_loop, NULL, task_io_loop, p); -+ ret = pthread_create(&tid_loop, NULL, io_epoll_loop, p); - if (ret != SHIM_OK) { - return SHIM_SYS_ERR(errno); - } -diff --git a/src/cmd/isulad-shim/process.h b/src/cmd/isulad-shim/process.h -index 17704320..c17a20b1 100644 ---- a/src/cmd/isulad-shim/process.h -+++ b/src/cmd/isulad-shim/process.h -@@ -66,13 +66,13 @@ typedef struct process { - char *id; - char *bundle; - char *runtime; -- char *console_sock_path; -+ char *console_sock_path;// pty socket path - int io_loop_fd; - int exit_fd; - int ctr_pid; - log_terminal *terminal; -- stdio_t *stdio; -- stdio_t *shim_io; -+ stdio_t *stdio;// shim to on runtime side, in:r out/err: w -+ stdio_t *shim_io; // shim io on isulad side, in: w out/err: r - io_thread_t *io_threads[3];// stdin,stdout,stderr - shim_client_process_state *state; - sem_t sem_mainloop; -diff --git a/src/cmd/isulad-shim/terminal.c b/src/cmd/isulad-shim/terminal.c -index 989f20d8..ac39539a 100644 ---- a/src/cmd/isulad-shim/terminal.c -+++ b/src/cmd/isulad-shim/terminal.c -@@ -38,7 +38,7 @@ static ssize_t shim_write_nointr_lock(log_terminal *terminal, const void *buf, s - ssize_t ret; - - (void)pthread_rwlock_wrlock(&terminal->log_terminal_rwlock); -- ret = write_nointr(terminal->fd, buf, count); -+ ret = write_nointr_in_total(terminal->fd, buf, count); - (void)pthread_rwlock_unlock(&terminal->log_terminal_rwlock); - - return ret; -diff --git a/test/cmd/isulad-shim/isulad-shim_ut.cc b/test/cmd/isulad-shim/isulad-shim_ut.cc -index d512f0bc..34ecd452 100644 ---- a/test/cmd/isulad-shim/isulad-shim_ut.cc -+++ b/test/cmd/isulad-shim/isulad-shim_ut.cc -@@ -79,7 +79,7 @@ TEST_F(IsuladShimUnitTest, test_read_write_nointr) - - fd_wr = open_no_inherit(test_file.c_str(), O_CREAT | O_RDWR | O_APPEND | O_SYNC, 0640); - EXPECT_GT(fd_wr, 0); -- nwrite = write_nointr(fd_wr, test_string.c_str(), 5); -+ nwrite = write_nointr_in_total(fd_wr, test_string.c_str(), 5); - EXPECT_EQ(nwrite, 5); - fd_rd = open(test_file.c_str(), O_RDONLY); - nread = read_nointr(fd_rd, buf, 32); --- -2.25.1 - diff --git a/0012-add-CI-to-test-shim-io.patch b/0012-add-CI-to-test-shim-io.patch deleted file mode 100644 index 9b02b69..0000000 --- a/0012-add-CI-to-test-shim-io.patch +++ /dev/null @@ -1,412 +0,0 @@ -From f3f4c25792721bc130aec31deea9473d5283dfc6 Mon Sep 17 00:00:00 2001 -From: gaohuatao -Date: Wed, 20 Jan 2021 10:13:35 +0800 -Subject: [PATCH 12/53] add CI to test shim io - -Signed-off-by: gaohuatao ---- - .../container_cases/bigdata_stream_runc.sh | 392 ++++++++++++++++++ - 1 file changed, 392 insertions(+) - create mode 100755 CI/test_cases/container_cases/bigdata_stream_runc.sh - -diff --git a/CI/test_cases/container_cases/bigdata_stream_runc.sh b/CI/test_cases/container_cases/bigdata_stream_runc.sh -new file mode 100755 -index 00000000..203bdd98 ---- /dev/null -+++ b/CI/test_cases/container_cases/bigdata_stream_runc.sh -@@ -0,0 +1,392 @@ -+#!/bin/bash -+# -+# attributes: isulad basic container stream exec start attach -+# concurrent: NA -+# spend time: 6 -+ -+####################################################################### -+##- @Copyright (C) Huawei Technologies., Ltd. 2020. All rights reserved. -+# - iSulad licensed under the Mulan PSL v2. -+# - You can use this software according to the terms and conditions of the Mulan PSL v2. -+# - You may obtain a copy of Mulan PSL v2 at: -+# - http://license.coscl.org.cn/MulanPSL2 -+# - THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND, EITHER EXPRESS OR -+# - IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT, MERCHANTABILITY OR FIT FOR A PARTICULAR -+# - PURPOSE. -+# - See the Mulan PSL v2 for more details. -+##- @Description:CI -+##- @Author: gaohuatao -+##- @Create: 2021-01-19 -+####################################################################### -+declare -r curr_path=$(dirname $(readlink -f "$0")) -+source ../helpers.sh -+ -+function set_up() -+{ -+ local ret=0 -+ local image="busybox" -+ local test="set_up => (${FUNCNAME[@]})" -+ -+ msg_info "${test} starting..." -+ -+ check_valgrind_log -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - memory leak before current testcase, please check...." && return ${FAILURE} -+ -+ start_isulad_without_valgrind -+ -+ isula pull ${image} -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to pull image: ${image}" && return ${FAILURE} -+ -+ isula images | grep busybox -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - missing list image: ${image}" && ((ret++)) -+ -+ CID=$(isula run -itd --runtime runc ${image} sh) -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to run container with image: ${image}" && ((ret++)) -+ -+ isula exec -it $CID dd if=/dev/zero of=test_500M bs=1M count=500 -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to create bigdata" && ((ret++)) -+ -+ msg_info "${test} finished with return ${ret}..." -+ return ${ret} -+} -+ -+function record_origin_status() -+{ -+ origin_isulad_cpu_usage=$(ps -o %cpu -p $(cat /var/run/isulad.pid) | sed -n '2p') -+ msg_info "origin isulad cpu usage: $origin_isulad_cpu_usage" -+ -+ lxc_monitor_pid=$(ps aux | grep "lxc monitor" | grep $CID | awk '{print $2}') -+ origin_lxc_monitor_cpu_usage=$(ps -o %cpu -p $lxc_monitor_pid | sed -n '2p') -+ msg_info "origin lxc monitor cpu usage: $origin_lxc_monitor_cpu_usage" -+ -+ rm -rf /iocopy_stream_data_* -+} -+ -+function check_last_status() -+{ -+ local ret=0 -+ sleep 5 -+ ps -T -p $(cat /var/run/isulad.pid) | grep IoCopy -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - IOCopy Thread residue" && ((ret++)) -+ -+ last_isulad_cpu_usage=$(ps -o %cpu -p $(cat /var/run/isulad.pid) | sed -n '2p') -+ allowable_isulad_cpu_usage=$(echo "$origin_isulad_cpu_usage*2" | bc) -+ if [[ $(echo "$allowable_isulad_cpu_usage < 80.0" | bc) -eq 1 ]]; then -+ allowable_isulad_cpu_usage=80.0 -+ fi -+ msg_info "allowable isulad cpu usage: $allowable_isulad_cpu_usage" -+ if [[ $(echo "$last_isulad_cpu_usage > $allowable_isulad_cpu_usage" | bc) -eq 1 ]]; then -+ msg_err "${FUNCNAME[0]}:${LINENO} - Process exception: endless loop or residual thread" && ((ret++)) -+ ps -o %cpu -p $(cat /var/run/isulad.pid) -+ fi -+ -+ lxc_monintor_pid=$(ps aux | grep "lxc monitor" | grep $CID | awk '{print $2}') -+ last_lxc_monitor_cpu_usage=$(ps -o %cpu -p $lxc_monintor_pid | sed -n '2p') -+ allowable_lxc_monitor_cpu_usage=$(echo "$origin_lxc_monitor_cpu_usage*2" | bc) -+ if [[ $(echo "$allowable_lxc_monitor_cpu_usage < 1.0" | bc) -eq 1 ]]; then -+ allowable_lxc_monitor_cpu_usage=1.0 -+ fi -+ msg_info "allowable lxc_monitor cpu usage: $allowable_lxc_monitor_cpu_usage" -+ if [[ $(echo "$last_lxc_monitor_cpu_usage > $allowable_lxc_monitor_cpu_usage" | bc) -eq 1 ]]; then -+ msg_err "${FUNCNAME[0]}:${LINENO} - Process exception: endless loop or residual thread" && ((ret++)) -+ ps -o %cpu -p $lxc_monintor_pid -+ fi -+ -+ lxc_attach_process_number=$(ps aux | grep lxc-attach | grep $CID | wc -l) -+ if [[ $lxc_attach_process_number -ne 0 ]]; then -+ msg_err "${FUNCNAME[0]}:${LINENO} - lxc_attach process residual" && ((ret++)) -+ ps aux | grep lxc-attach | grep $CID -+ fi -+ -+ client_pid=$(pidof isula) -+ if [[ -n "$client_pid" ]]; then -+ msg_err "${FUNCNAME[0]}:${LINENO} - client not exit!!" && ((ret++)) -+ fi -+ -+ ps aux | grep "cat test_" | grep -v "grep" -+ if [[ $? -eq 0 ]]; then -+ msg_err "${FUNCNAME[0]}:${LINENO} - business process residual" && ((ret++)) -+ fi -+ -+ return ${ret} -+} -+ -+function test_cat_bigdata() -+{ -+ local ret=0 -+ local test="test_concurrent_bigdata_stream => (${FUNCNAME[@]})" -+ msg_info "${test} starting..." -+ declare -a pids -+ -+ for index in $(seq 1 5); do -+ nohup isula exec $CID cat test_500M > /tmp/iocopy_stream_data_500M_$index & -+ pids[${#pids[@]}]=$! -+ done -+ wait ${pids[*]// /|} -+ -+ for index in $(seq 1 5); do -+ ls -l /tmp/iocopy_stream_data_500M_$index -+ total_size=$(stat -c"%s" /tmp/iocopy_stream_data_500M_$index) -+ [[ $total_size -ne 524288000 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - stream iocopy loss data" && ((ret++)) -+ rm -f /tmp/iocopy_stream_data_500M_$index -+ done -+ -+ check_last_status -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - abnormal status" && ((ret++)) -+ -+ msg_info "${test} finished with return ${ret}..." -+ return ${ret} -+} -+ -+function test_stream_with_stop_client() -+{ -+ local ret=0 -+ local test="test_stream_with_stop_client => (${FUNCNAME[@]})" -+ msg_info "${test} starting..." -+ -+ nohup isula exec $CID cat test_500M > /tmp/iocopy_stream_data_500M & -+ pid=$! -+ sleep 2 -+ kill -19 $pid -+ sleep 5 -+ kill -18 $pid -+ -+ wait $pid -+ -+ ls -l /tmp/iocopy_stream_data_500M -+ total_size=$(stat -c"%s" /tmp/iocopy_stream_data_500M) -+ [[ $total_size -ne 524288000 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - stream iocopy loss data" && ((ret++)) -+ -+ check_last_status -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - abnormal status" && ((ret++)) -+ -+ msg_info "${test} finished with return ${ret}..." -+ return ${ret} -+} -+ -+function test_stream_with_kill_client() -+{ -+ local ret=0 -+ local test="test_stream_with_kill_client => (${FUNCNAME[@]})" -+ msg_info "${test} starting..." -+ -+ nohup isula exec $CID cat test_500M > /tmp/iocopy_stream_data_500M & -+ pid=$! -+ sleep 5 -+ kill -9 $pid -+ -+ check_last_status -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - abnormal status" && ((ret++)) -+ -+ msg_info "${test} finished with return ${ret}..." -+ return ${ret} -+} -+ -+function test_stream_with_stop_attach() -+{ -+ local ret=0 -+ local test="test_stream_with_stop_attach => (${FUNCNAME[@]})" -+ msg_info "${test} starting..." -+ -+ nohup isula exec $CID cat test_500M > /tmp/iocopy_stream_data_500M & -+ exec_pid=$! -+ sleep 2 -+ pid=$(ps aux | grep lxc-attach | grep $CID |grep "cat test_500M" | awk '{print $2}') -+ kill -19 $pid -+ sleep 3 -+ kill -18 $pid -+ -+ wait $exec_pid -+ -+ ls -l /tmp/iocopy_stream_data_500M -+ total_size=$(stat -c"%s" /tmp/iocopy_stream_data_500M) -+ [[ $total_size -ne 524288000 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - stream iocopy loss data" && ((ret++)) -+ -+ check_last_status -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - abnormal status" && ((ret++)) -+ -+ msg_info "${test} finished with return ${ret}..." -+ return ${ret} -+} -+ -+function test_stream_with_kill_attach() -+{ -+ local ret=0 -+ local test="test_stream_with_kill_client => (${FUNCNAME[@]})" -+ msg_info "${test} starting..." -+ -+ nohup isula exec $CID cat test_500M > /tmp/iocopy_stream_data_500M & -+ sleep 3 -+ pid=$(ps aux | grep lxc-attach | grep $CID |grep "cat test_500M" | awk '{print $2}') -+ kill -9 $pid -+ -+ check_last_status -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - abnormal status" && ((ret++)) -+ -+ msg_info "${test} finished with return ${ret}..." -+ return ${ret} -+} -+ -+function test_stream_with_stop_lxc_monitor() -+{ -+ local ret=0 -+ local test="test_stream_with_stop_lxc_monitor => (${FUNCNAME[@]})" -+ msg_info "${test} starting..." -+ -+ nohup isula exec $CID cat test_500M > /tmp/iocopy_stream_data_500M & -+ exec_pid=$! -+ sleep 2 -+ pid=$(ps aux | grep "lxc monitor" | grep $CID | awk '{print $2}') -+ kill -19 $pid -+ sleep 3 -+ kill -18 $pid -+ -+ wait $exec_pid -+ -+ ls -l /tmp/iocopy_stream_data_500M -+ total_size=$(stat -c"%s" /tmp/iocopy_stream_data_500M) -+ [[ $total_size -ne 524288000 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - stream iocopy loss data" && ((ret++)) -+ -+ check_last_status -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - abnormal status" && ((ret++)) -+ -+ msg_info "${test} finished with return ${ret}..." -+ return ${ret} -+} -+ -+function test_stream_with_kill_lxc_monitor() -+{ -+ local ret=0 -+ local test="test_stream_with_kill_lxc_monitor => (${FUNCNAME[@]})" -+ msg_info "${test} starting..." -+ -+ nohup isula exec $CID cat test_500M > /tmp/iocopy_stream_data_500M & -+ sleep 3 -+ pid=$(ps aux | grep "lxc monitor" | grep $CID | awk '{print $2}') -+ kill -9 $pid -+ sleep 3 -+ -+ isula start $CID -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to start container: $CID" && ((ret++)) -+ -+ check_last_status -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - abnormal status" && ((ret++)) -+ -+ msg_info "${test} finished with return ${ret}..." -+ return ${ret} -+} -+ -+function test_stream_with_stop_isulad() -+{ -+ local ret=0 -+ local test="test_stream_with_stop_isulad => (${FUNCNAME[@]})" -+ msg_info "${test} starting..." -+ -+ nohup isula exec $CID cat test_500M > /tmp/iocopy_stream_data_500M & -+ pid=$! -+ sleep 2 -+ kill -19 $(cat /var/run/isulad.pid) -+ sleep 3 -+ kill -18 $(cat /var/run/isulad.pid) -+ -+ wait $pid -+ -+ ls -l /tmp/iocopy_stream_data_500M -+ total_size=$(stat -c"%s" /tmp/iocopy_stream_data_500M) -+ [[ $total_size -ne 524288000 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - stream iocopy loss data" && ((ret++)) -+ -+ check_last_status -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - abnormal status" && ((ret++)) -+ -+ msg_info "${test} finished with return ${ret}..." -+ return ${ret} -+} -+ -+function test_stream_with_kill_isulad() -+{ -+ local ret=0 -+ local test="test_stream_with_kill_isulad => (${FUNCNAME[@]})" -+ msg_info "${test} starting..." -+ -+ nohup isula exec $CID cat test_500M > /tmp/iocopy_stream_data_500M & -+ sleep 3 -+ isulad_pid=$(cat /var/run/isulad.pid) -+ kill -9 $isulad_pid -+ sleep 1 -+ -+ check_isulad_stopped $isulad_pid -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - isulad still alive" && ((ret++)) -+ -+ start_isulad_without_valgrind -+ -+ check_last_status -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - abnormal status" && ((ret++)) -+ -+ msg_info "${test} finished with return ${ret}..." -+ return ${ret} -+} -+ -+function tear_down() -+{ -+ local ret=0 -+ isula rm -f $CID -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to rm container: $CID" && ((ret++)) -+ -+ rm -rf //tmp/iocopy_stream_data_* -+ -+ stop_isulad_without_valgrind -+ -+ return ${ret} -+} -+ -+function test_memory_leak_with_bigdata_stream() -+{ -+ local ret=0 -+ local image="busybox" -+ local test="test_memory_leak_with_bigdata_stream => (${FUNCNAME[@]})" -+ msg_info "${test} starting..." -+ -+ start_isulad_with_valgrind -+ -+ CID=$(isula run -itd ${image} sh) -+ -+ isula exec -it $CID dd if=/dev/zero of=test_100M bs=1M count=100 -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to create bigdata" && ((ret++)) -+ -+ isula exec -it $CID cat test_100M > /tmp/iocopy_stream_data_100M -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to cat bigdata from container" && ((ret++)) -+ -+ rm -rf /tmp/iocopy_stream_data_100M -+ -+ isula rm -f $CID -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to rm container" && ((ret++)) -+ -+ check_valgrind_log -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - memory leak, please check...." && ((ret++)) -+ -+ -+ start_isulad_with_valgrind -+ -+ msg_info "${test} finished with return ${ret}..." -+ return ${ret} -+} -+ -+declare -i ans=0 -+ -+set_up || ((ans++)) -+ -+record_origin_status -+test_cat_bigdata || ((ans++)) -+test_stream_with_stop_client || ((ans++)) -+test_stream_with_kill_client || ((ans++)) -+test_stream_with_stop_attach || ((ans++)) -+test_stream_with_kill_attach || ((ans++)) -+test_stream_with_stop_lxc_monitor || ((ans++)) -+test_stream_with_kill_lxc_monitor || ((ans++)) -+test_stream_with_stop_isulad || ((ans++)) -+test_stream_with_kill_isulad || ((ans++)) -+tear_down || ((ans++)) -+ -+test_memory_leak_with_bigdata_stream || ((ans++)) -+ -+show_result ${ans} "${curr_path}/${0}" --- -2.25.1 - diff --git a/0013-CI-add-testcase-for-exec-without-pty.patch b/0013-CI-add-testcase-for-exec-without-pty.patch deleted file mode 100644 index b7d003c..0000000 --- a/0013-CI-add-testcase-for-exec-without-pty.patch +++ /dev/null @@ -1,106 +0,0 @@ -From 0eedc0354deb5616fe7e3308547d475af01d7cc3 Mon Sep 17 00:00:00 2001 -From: Li Feng -Date: Wed, 20 Jan 2021 14:50:43 +0800 -Subject: [PATCH 13/53] CI: add testcase for exec without pty - -Signed-off-by: Li Feng ---- - .../container_cases/bigdata_stream.sh | 28 +++++++++++++++++++ - .../container_cases/bigdata_stream_runc.sh | 28 +++++++++++++++++++ - 2 files changed, 56 insertions(+) - -diff --git a/CI/test_cases/container_cases/bigdata_stream.sh b/CI/test_cases/container_cases/bigdata_stream.sh -index d7dd2d18..768e9703 100755 ---- a/CI/test_cases/container_cases/bigdata_stream.sh -+++ b/CI/test_cases/container_cases/bigdata_stream.sh -@@ -138,6 +138,33 @@ function test_concurrent_bigdata_stream() - return ${ret} - } - -+function test_concurrent_bigdata_stream_without_pty() -+{ -+ local ret=0 -+ local test="test_concurrent_bigdata_stream => (${FUNCNAME[@]})" -+ msg_info "${test} starting..." -+ declare -a pids -+ -+ for index in $(seq 1 5); do -+ nohup isula exec $CID cat test_500M > /tmp/iocopy_stream_data_500M_$index & -+ pids[${#pids[@]}]=$! -+ done -+ wait ${pids[*]// /|} -+ -+ for index in $(seq 1 5); do -+ ls -l /tmp/iocopy_stream_data_500M_$index -+ total_size=$(stat -c"%s" /tmp/iocopy_stream_data_500M_$index) -+ [[ $total_size -ne 524288000 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - stream iocopy loss data" && ((ret++)) -+ rm -f /tmp/iocopy_stream_data_500M_$index -+ done -+ -+ check_last_status -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - abnormal status" && ((ret++)) -+ -+ msg_info "${test} finished with return ${ret}..." -+ return ${ret} -+} -+ - function test_more_concurrent_stream() - { - local ret=0 -@@ -432,6 +459,7 @@ set_up || ((ans++)) - - record_origin_status - test_concurrent_bigdata_stream || ((ans++)) -+test_concurrent_bigdata_stream_without_pty || ((ans++)) - test_more_concurrent_stream || ((ans++)) - test_stream_with_stop_client || ((ans++)) - test_stream_with_kill_client || ((ans++)) -diff --git a/CI/test_cases/container_cases/bigdata_stream_runc.sh b/CI/test_cases/container_cases/bigdata_stream_runc.sh -index 203bdd98..f6c2ee94 100755 ---- a/CI/test_cases/container_cases/bigdata_stream_runc.sh -+++ b/CI/test_cases/container_cases/bigdata_stream_runc.sh -@@ -118,6 +118,33 @@ function test_cat_bigdata() - msg_info "${test} starting..." - declare -a pids - -+ for index in $(seq 1 5); do -+ nohup isula exec -it $CID cat test_500M > /tmp/iocopy_stream_data_500M_$index & -+ pids[${#pids[@]}]=$! -+ done -+ wait ${pids[*]// /|} -+ -+ for index in $(seq 1 5); do -+ ls -l /tmp/iocopy_stream_data_500M_$index -+ total_size=$(stat -c"%s" /tmp/iocopy_stream_data_500M_$index) -+ [[ $total_size -ne 524288000 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - stream iocopy loss data" && ((ret++)) -+ rm -f /tmp/iocopy_stream_data_500M_$index -+ done -+ -+ check_last_status -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - abnormal status" && ((ret++)) -+ -+ msg_info "${test} finished with return ${ret}..." -+ return ${ret} -+} -+ -+function test_cat_bigdata_without_pty() -+{ -+ local ret=0 -+ local test="test_concurrent_bigdata_stream => (${FUNCNAME[@]})" -+ msg_info "${test} starting..." -+ declare -a pids -+ - for index in $(seq 1 5); do - nohup isula exec $CID cat test_500M > /tmp/iocopy_stream_data_500M_$index & - pids[${#pids[@]}]=$! -@@ -377,6 +404,7 @@ set_up || ((ans++)) - - record_origin_status - test_cat_bigdata || ((ans++)) -+test_cat_bigdata_without_pty || ((ans++)) - test_stream_with_stop_client || ((ans++)) - test_stream_with_kill_client || ((ans++)) - test_stream_with_stop_attach || ((ans++)) --- -2.25.1 - diff --git a/0014-adapt-for-sparse-file-when-tar-file.patch b/0014-adapt-for-sparse-file-when-tar-file.patch deleted file mode 100644 index 43464be..0000000 --- a/0014-adapt-for-sparse-file-when-tar-file.patch +++ /dev/null @@ -1,69 +0,0 @@ -From 7e9b7b16c76785c15fd1465d7985a0919848f786 Mon Sep 17 00:00:00 2001 -From: WangFengTu -Date: Thu, 21 Jan 2021 18:44:52 +0800 -Subject: [PATCH 14/53] adapt for sparse file when tar file - -archive_read_data_block can not process sparse file -correctly, use archive_read_data instead. - -Signed-off-by: WangFengTu ---- - src/utils/tar/util_archive.c | 30 +++++++++++++++++++++--------- - 1 file changed, 21 insertions(+), 9 deletions(-) - -diff --git a/src/utils/tar/util_archive.c b/src/utils/tar/util_archive.c -index 7a28286a..1b9553c9 100644 ---- a/src/utils/tar/util_archive.c -+++ b/src/utils/tar/util_archive.c -@@ -699,27 +699,39 @@ out: - static int copy_data_between_archives(struct archive *ar, struct archive *aw) - { - int ret = ARCHIVE_FAILED; -- const void *buff = NULL; -- size_t size; -- int64_t offset; -+ char *buff = NULL; -+ ssize_t size = 0; -+ -+ buff = util_common_calloc_s(ARCHIVE_BLOCK_SIZE); -+ if (buff == NULL) { -+ ERROR("out of memory"); -+ fprintf(stderr, "out of memory"); -+ return ARCHIVE_FAILED; -+ } - - for (;;) { -- ret = archive_read_data_block(ar, &buff, &size, &offset); -- if (ret == ARCHIVE_EOF) { -- return ARCHIVE_OK; -+ size = archive_read_data(ar, buff, ARCHIVE_BLOCK_SIZE); -+ if (size == 0) { -+ ret = ARCHIVE_OK; -+ goto out; - } -- if (ret < ARCHIVE_OK) { -+ if (size < 0) { - ERROR("tar archive read result %d, error: %s", ret, archive_error_string(ar)); - fprintf(stderr, "tar archive read result %d, error: %s", ret, archive_error_string(ar)); -- return ret; -+ ret = ARCHIVE_FAILED; -+ goto out; - } - ret = archive_write_data(aw, buff, size); - if (ret < ARCHIVE_OK) { - ERROR("tar archive write result %d, error: %s", ret, archive_error_string(aw)); - fprintf(stderr, "tar archive write result %d, error: %s", ret, archive_error_string(aw)); -- return ret; -+ goto out; - } - } -+ -+out: -+ free(buff); -+ return ret; - } - - int update_entry_for_hardlink(map_t *map_link, struct archive_entry *entry, const char *src_base, const char *dst_base) --- -2.25.1 - diff --git a/0015-driver-do-not-unlock-and-destroy-lock-when-clean-up.patch b/0015-driver-do-not-unlock-and-destroy-lock-when-clean-up.patch deleted file mode 100644 index 23f2cbe..0000000 --- a/0015-driver-do-not-unlock-and-destroy-lock-when-clean-up.patch +++ /dev/null @@ -1,29 +0,0 @@ -From bba60af5e275a24ab6ae11943ce48ff71524c494 Mon Sep 17 00:00:00 2001 -From: Li Feng -Date: Mon, 25 Jan 2021 11:31:54 +0800 -Subject: [PATCH 15/53] driver: do not unlock and destroy lock when clean up - -Signed-off-by: Li Feng ---- - .../image/oci/storage/layer_store/graphdriver/driver.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/src/daemon/modules/image/oci/storage/layer_store/graphdriver/driver.c b/src/daemon/modules/image/oci/storage/layer_store/graphdriver/driver.c -index f2df4f8f..b41132ea 100644 ---- a/src/daemon/modules/image/oci/storage/layer_store/graphdriver/driver.c -+++ b/src/daemon/modules/image/oci/storage/layer_store/graphdriver/driver.c -@@ -517,9 +517,9 @@ int graphdriver_cleanup(void) - g_graphdriver->home = NULL; - free(g_graphdriver->backing_fs); - g_graphdriver->backing_fs = NULL; -- driver_unlock(); -- pthread_rwlock_destroy(&(g_graphdriver->rwlock)); - g_graphdriver = NULL; -+ // notes, do not driver_unlock and destroy the lock, becase the other threads may wait for it -+ // if we unlock and destroy the lock, may cause the lock failure, and result to coredump - - out: - return ret; --- -2.25.1 - diff --git a/0016-driver-do-not-set-g_graphdriver-to-NULL.patch b/0016-driver-do-not-set-g_graphdriver-to-NULL.patch deleted file mode 100644 index 8f9bf00..0000000 --- a/0016-driver-do-not-set-g_graphdriver-to-NULL.patch +++ /dev/null @@ -1,32 +0,0 @@ -From d1fbada9a7b520830d8a0c31263aadba97b2dd9d Mon Sep 17 00:00:00 2001 -From: Li Feng -Date: Mon, 25 Jan 2021 15:01:35 +0800 -Subject: [PATCH 16/53] driver: do not set g_graphdriver to NULL - -Signed-off-by: Li Feng ---- - .../image/oci/storage/layer_store/graphdriver/driver.c | 8 +------- - 1 file changed, 1 insertion(+), 7 deletions(-) - -diff --git a/src/daemon/modules/image/oci/storage/layer_store/graphdriver/driver.c b/src/daemon/modules/image/oci/storage/layer_store/graphdriver/driver.c -index b41132ea..6b1e0922 100644 ---- a/src/daemon/modules/image/oci/storage/layer_store/graphdriver/driver.c -+++ b/src/daemon/modules/image/oci/storage/layer_store/graphdriver/driver.c -@@ -512,13 +512,7 @@ int graphdriver_cleanup(void) - driver_unlock(); - goto out; - } -- -- free((char *)g_graphdriver->home); -- g_graphdriver->home = NULL; -- free(g_graphdriver->backing_fs); -- g_graphdriver->backing_fs = NULL; -- g_graphdriver = NULL; -- // notes, do not driver_unlock and destroy the lock, becase the other threads may wait for it -+ // notes, do not call driver_unlock and destroy the lock, becase the other threads may wait for it - // if we unlock and destroy the lock, may cause the lock failure, and result to coredump - - out: --- -2.25.1 - diff --git a/0017-ignore-error-if-get-ip-failed.patch b/0017-ignore-error-if-get-ip-failed.patch deleted file mode 100644 index 140de4b..0000000 --- a/0017-ignore-error-if-get-ip-failed.patch +++ /dev/null @@ -1,39 +0,0 @@ -From 4f2951681dbe583e80af91d808292aad8cceb599 Mon Sep 17 00:00:00 2001 -From: haozi007 -Date: Thu, 28 Jan 2021 14:04:54 +0800 -Subject: [PATCH 17/53] ignore error if get ip failed - -Signed-off-by: haozi007 ---- - .../entry/cri/cri_pod_sandbox_manager_service_impl.cc | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/src/daemon/entry/cri/cri_pod_sandbox_manager_service_impl.cc b/src/daemon/entry/cri/cri_pod_sandbox_manager_service_impl.cc -index 27768852..a668d60b 100644 ---- a/src/daemon/entry/cri/cri_pod_sandbox_manager_service_impl.cc -+++ b/src/daemon/entry/cri/cri_pod_sandbox_manager_service_impl.cc -@@ -989,12 +989,12 @@ void PodSandboxManagerServiceImpl::GetIPs(const std::string &podSandboxID, const - } - - if (inspect->network_settings != nullptr && inspect->network_settings->ip_address != nullptr) { -- WARN("Use container inspect ip info: %s", error.GetCMessage()); -- error.Clear(); -+ WARN("Use container inspect ip info"); - ips.push_back(inspect->network_settings->ip_address); - } - - WARN("Failed to read pod IP from plugin/docker: %s", error.GetCMessage()); -+ error.Clear(); - } - - void PodSandboxManagerServiceImpl::SetSandboxStatusNetwork(const container_inspect *inspect, -@@ -1214,4 +1214,4 @@ void PodSandboxManagerServiceImpl::PortForward(const runtime::v1alpha2::PortForw - // This feature is temporarily not supported - } - --} // namespace CRI -\ No newline at end of file -+} // namespace CRI --- -2.25.1 - diff --git a/0018-GC-add-log-container-info-when-add-into-gc.patch b/0018-GC-add-log-container-info-when-add-into-gc.patch deleted file mode 100644 index e808702..0000000 --- a/0018-GC-add-log-container-info-when-add-into-gc.patch +++ /dev/null @@ -1,35 +0,0 @@ -From 72e8e3163524455768986a7496ccfc5ce384fade Mon Sep 17 00:00:00 2001 -From: Li Feng -Date: Fri, 29 Jan 2021 15:33:56 +0800 -Subject: [PATCH 18/53] GC: add log container info when add into gc - -Signed-off-by: Li Feng ---- - src/daemon/modules/container/container_gc/containers_gc.c | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/src/daemon/modules/container/container_gc/containers_gc.c b/src/daemon/modules/container/container_gc/containers_gc.c -index 6b1c392c..5924aaa3 100644 ---- a/src/daemon/modules/container/container_gc/containers_gc.c -+++ b/src/daemon/modules/container/container_gc/containers_gc.c -@@ -203,6 +203,8 @@ int gc_add_container(const char *id, const char *runtime, const pid_ppid_info_t - return -1; - } - -+ EVENT("Event: {Object: GC, Type: Add container %s with pid %u into garbage collector}", id, pid_info->pid); -+ - newnode = util_common_calloc_s(sizeof(struct linked_list)); - if (newnode == NULL) { - CRIT("Memory allocation error."); -@@ -481,6 +483,8 @@ static void gc_container_process(struct linked_list *it) - - gc_containers_unlock(); - -+ EVENT("Event: {Object: GC, Type: Delete container %s with pid %u from garbage collector}", id, pid); -+ - /* apply restart policy for the container after gc */ - apply_restart_policy_after_gc(id); - --- -2.25.1 - diff --git a/0019-log-use-the-same-function-to-init-log-in-export-paus.patch b/0019-log-use-the-same-function-to-init-log-in-export-paus.patch deleted file mode 100644 index 7a2893f..0000000 --- a/0019-log-use-the-same-function-to-init-log-in-export-paus.patch +++ /dev/null @@ -1,146 +0,0 @@ -From 171cb932bbbbfc5816ceb65223f1d5e733c79d8e Mon Sep 17 00:00:00 2001 -From: Li Feng -Date: Sat, 30 Jan 2021 10:38:11 +0800 -Subject: [PATCH 19/53] log: use the same function to init log in - export/pause/resume - -Signed-off-by: Li Feng ---- - src/cmd/isula/extend/export.c | 19 +++++++++---------- - src/cmd/isula/extend/pause.c | 20 +++++++++----------- - src/cmd/isula/extend/resume.c | 17 +++++++---------- - 3 files changed, 25 insertions(+), 31 deletions(-) - -diff --git a/src/cmd/isula/extend/export.c b/src/cmd/isula/extend/export.c -index 476cf775..ea9b9c11 100644 ---- a/src/cmd/isula/extend/export.c -+++ b/src/cmd/isula/extend/export.c -@@ -76,15 +76,7 @@ int cmd_export_main(int argc, const char **argv) - char file[PATH_MAX] = { 0 }; - struct isula_libutils_log_config lconf = { 0 }; - -- lconf.name = argv[0]; -- lconf.quiet = true; -- lconf.driver = "stdout"; -- lconf.file = NULL; -- lconf.priority = "ERROR"; -- if (isula_libutils_log_enable(&lconf)) { -- COMMAND_ERROR("Export: log init failed"); -- exit(ECOMMON); -- } -+ isula_libutils_default_log_config(argv[0], &lconf); - - command_t cmd; - if (client_arguments_init(&g_cmd_export_args)) { -@@ -92,7 +84,9 @@ int cmd_export_main(int argc, const char **argv) - exit(ECOMMON); - } - g_cmd_export_args.progname = argv[0]; -- struct command_option options[] = { COMMON_OPTIONS(g_cmd_export_args) EXPORT_OPTIONS(g_cmd_export_args) }; -+ struct command_option options[] = { LOG_OPTIONS(lconf) COMMON_OPTIONS(g_cmd_export_args) -+ EXPORT_OPTIONS(g_cmd_export_args) -+ }; - - command_init(&cmd, options, sizeof(options) / sizeof(options[0]), argc, (const char **)argv, g_cmd_export_desc, - g_cmd_export_usage); -@@ -100,6 +94,11 @@ int cmd_export_main(int argc, const char **argv) - exit(EINVALIDARGS); - } - -+ if (isula_libutils_log_enable(&lconf)) { -+ COMMAND_ERROR("log init failed"); -+ exit(ECOMMON); -+ } -+ - if (g_cmd_export_args.argc != 1) { - COMMAND_ERROR("Export requires exactly 1 container name"); - exit(EINVALIDARGS); -diff --git a/src/cmd/isula/extend/pause.c b/src/cmd/isula/extend/pause.c -index 4d508e7b..c12eaa8c 100644 ---- a/src/cmd/isula/extend/pause.c -+++ b/src/cmd/isula/extend/pause.c -@@ -71,23 +71,16 @@ int cmd_pause_main(int argc, const char **argv) - int i = 0; - int status = 0; - struct isula_libutils_log_config lconf = { 0 }; -- -- lconf.name = argv[0]; -- lconf.quiet = true; -- lconf.file = NULL; -- lconf.priority = "ERROR"; -- lconf.driver = "stdout"; -- if (isula_libutils_log_enable(&lconf)) { -- COMMAND_ERROR("log init failed"); -- exit(ECOMMON); -- } - command_t cmd; -+ -+ isula_libutils_default_log_config(argv[0], &lconf); -+ - if (client_arguments_init(&g_cmd_pause_args)) { - COMMAND_ERROR("client arguments init failed"); - exit(ECOMMON); - } - g_cmd_pause_args.progname = argv[0]; -- struct command_option options[] = { COMMON_OPTIONS(g_cmd_pause_args) }; -+ struct command_option options[] = { LOG_OPTIONS(lconf) COMMON_OPTIONS(g_cmd_pause_args) }; - - command_init(&cmd, options, sizeof(options) / sizeof(options[0]), argc, (const char **)argv, g_cmd_pause_desc, - g_cmd_pause_usage); -@@ -95,6 +88,11 @@ int cmd_pause_main(int argc, const char **argv) - exit(EINVALIDARGS); - } - -+ if (isula_libutils_log_enable(&lconf)) { -+ COMMAND_ERROR("log init failed"); -+ exit(ECOMMON); -+ } -+ - if (g_cmd_pause_args.argc == 0) { - COMMAND_ERROR("Pause requires at least 1 container names"); - exit(EINVALIDARGS); -diff --git a/src/cmd/isula/extend/resume.c b/src/cmd/isula/extend/resume.c -index c3c43760..7a25ee68 100644 ---- a/src/cmd/isula/extend/resume.c -+++ b/src/cmd/isula/extend/resume.c -@@ -71,15 +71,7 @@ int cmd_resume_main(int argc, const char **argv) - int status = 0; - struct isula_libutils_log_config lconf = { 0 }; - -- lconf.name = argv[0]; -- lconf.quiet = true; -- lconf.driver = "stdout"; -- lconf.file = NULL; -- lconf.priority = "ERROR"; -- if (isula_libutils_log_enable(&lconf)) { -- COMMAND_ERROR("Resume: log init failed"); -- exit(ECOMMON); -- } -+ isula_libutils_default_log_config(argv[0], &lconf); - - command_t cmd; - if (client_arguments_init(&g_cmd_resume_args)) { -@@ -87,7 +79,7 @@ int cmd_resume_main(int argc, const char **argv) - exit(ECOMMON); - } - g_cmd_resume_args.progname = argv[0]; -- struct command_option options[] = { COMMON_OPTIONS(g_cmd_resume_args) }; -+ struct command_option options[] = { LOG_OPTIONS(lconf) COMMON_OPTIONS(g_cmd_resume_args) }; - - command_init(&cmd, options, sizeof(options) / sizeof(options[0]), argc, (const char **)argv, g_cmd_resume_desc, - g_cmd_resume_usage); -@@ -95,6 +87,11 @@ int cmd_resume_main(int argc, const char **argv) - exit(EINVALIDARGS); - } - -+ if (isula_libutils_log_enable(&lconf)) { -+ COMMAND_ERROR("log init failed"); -+ exit(ECOMMON); -+ } -+ - if (g_cmd_resume_args.argc == 0) { - COMMAND_ERROR("Pause requires at least 1 container names"); - exit(EINVALIDARGS); --- -2.25.1 - diff --git a/0020-init-log-config-should-before-command-parse.patch b/0020-init-log-config-should-before-command-parse.patch deleted file mode 100644 index 0056610..0000000 --- a/0020-init-log-config-should-before-command-parse.patch +++ /dev/null @@ -1,623 +0,0 @@ -From 20a6562ea0a6c50bdc6a863067eeaf7fa04909d0 Mon Sep 17 00:00:00 2001 -From: haozi007 -Date: Sat, 30 Jan 2021 14:46:13 +0800 -Subject: [PATCH 20/53] init log config should before command parse - -Signed-off-by: haozi007 ---- - src/cmd/isula/base/create.c | 2 +- - src/cmd/isula/base/kill.c | 2 +- - src/cmd/isula/base/rename.c | 2 +- - src/cmd/isula/base/restart.c | 2 +- - src/cmd/isula/base/rm.c | 2 +- - src/cmd/isula/base/run.c | 2 +- - src/cmd/isula/base/start.c | 2 +- - src/cmd/isula/base/stop.c | 2 +- - src/cmd/isula/extend/events.c | 2 +- - src/cmd/isula/extend/stats.c | 2 +- - src/cmd/isula/extend/update.c | 2 +- - src/cmd/isula/images/images.c | 2 +- - src/cmd/isula/images/import.c | 2 +- - src/cmd/isula/images/load.c | 2 +- - src/cmd/isula/images/login.c | 2 +- - src/cmd/isula/images/logout.c | 2 +- - src/cmd/isula/images/pull.c | 2 +- - src/cmd/isula/images/rmi.c | 2 +- - src/cmd/isula/images/tag.c | 2 +- - src/cmd/isula/information/info.c | 2 +- - src/cmd/isula/information/inspect.c | 2 +- - src/cmd/isula/information/logs.c | 2 +- - src/cmd/isula/information/ps.c | 2 +- - src/cmd/isula/information/top.c | 2 +- - src/cmd/isula/information/version.c | 2 +- - src/cmd/isula/information/wait.c | 2 +- - src/cmd/isula/stream/attach.c | 2 +- - src/cmd/isula/stream/cp.c | 2 +- - src/cmd/isula/stream/exec.c | 2 +- - src/cmd/isula/volume/list.c | 2 +- - src/cmd/isula/volume/prune.c | 2 +- - src/cmd/isula/volume/remove.c | 2 +- - 32 files changed, 32 insertions(+), 32 deletions(-) - -diff --git a/src/cmd/isula/base/create.c b/src/cmd/isula/base/create.c -index 12f0a8be..a531fc0e 100644 ---- a/src/cmd/isula/base/create.c -+++ b/src/cmd/isula/base/create.c -@@ -1538,6 +1538,7 @@ int cmd_create_main(int argc, const char **argv) - g_cmd_create_args) COMMON_OPTIONS(g_cmd_create_args) - }; - -+ isula_libutils_default_log_config(argv[0], &lconf); - command_init(&cmd, options, sizeof(options) / sizeof(options[0]), argc, (const char **)argv, g_cmd_create_desc, - g_cmd_create_usage); - if (command_parse_args(&cmd, &g_cmd_create_args.argc, &g_cmd_create_args.argv) || -@@ -1545,7 +1546,6 @@ int cmd_create_main(int argc, const char **argv) - nret = EINVALIDARGS; - goto out; - } -- isula_libutils_default_log_config(argv[0], &lconf); - if (isula_libutils_log_enable(&lconf)) { - COMMAND_ERROR("log init failed"); - exit(ECOMMON); -diff --git a/src/cmd/isula/base/kill.c b/src/cmd/isula/base/kill.c -index b8e85459..7c8bf95c 100644 ---- a/src/cmd/isula/base/kill.c -+++ b/src/cmd/isula/base/kill.c -@@ -92,12 +92,12 @@ int cmd_kill_main(int argc, const char **argv) - struct command_option options[] = { LOG_OPTIONS(lconf) COMMON_OPTIONS(g_cmd_kill_args) - KILL_OPTIONS(g_cmd_kill_args) - }; -+ isula_libutils_default_log_config(argv[0], &lconf); - command_init(&cmd, options, sizeof(options) / sizeof(options[0]), argc, (const char **)argv, g_cmd_kill_desc, - g_cmd_kill_usage); - if (command_parse_args(&cmd, &g_cmd_kill_args.argc, &g_cmd_kill_args.argv)) { - exit(ECOMMON); - } -- isula_libutils_default_log_config(argv[0], &lconf); - if (isula_libutils_log_enable(&lconf)) { - COMMAND_ERROR("log init failed\n"); - exit(ECOMMON); -diff --git a/src/cmd/isula/base/rename.c b/src/cmd/isula/base/rename.c -index aafc9bda..c5cf5bb6 100644 ---- a/src/cmd/isula/base/rename.c -+++ b/src/cmd/isula/base/rename.c -@@ -67,12 +67,12 @@ int cmd_rename_main(int argc, const char **argv) - command_t cmd; - struct command_option options[] = { LOG_OPTIONS(lconf) COMMON_OPTIONS(g_cmd_rename_args) }; - -- isula_libutils_default_log_config(argv[0], &lconf); - if (client_arguments_init(&g_cmd_rename_args)) { - COMMAND_ERROR("client arguments init failed\n"); - exit(ECOMMON); - } - g_cmd_rename_args.progname = argv[0]; -+ isula_libutils_default_log_config(argv[0], &lconf); - command_init(&cmd, options, sizeof(options) / sizeof(options[0]), argc, (const char **)argv, g_cmd_rename_desc, - g_cmd_rename_usage); - if (command_parse_args(&cmd, &g_cmd_rename_args.argc, &g_cmd_rename_args.argv)) { -diff --git a/src/cmd/isula/base/restart.c b/src/cmd/isula/base/restart.c -index cedfaec1..877b0ff3 100644 ---- a/src/cmd/isula/base/restart.c -+++ b/src/cmd/isula/base/restart.c -@@ -73,12 +73,12 @@ int cmd_restart_main(int argc, const char **argv) - RESTART_OPTIONS(g_cmd_restart_args) - }; - -- isula_libutils_default_log_config(argv[0], &lconf); - if (client_arguments_init(&g_cmd_restart_args)) { - COMMAND_ERROR("client arguments init failed"); - exit(ECOMMON); - } - g_cmd_restart_args.progname = argv[0]; -+ isula_libutils_default_log_config(argv[0], &lconf); - command_init(&cmd, options, sizeof(options) / sizeof(options[0]), argc, (const char **)argv, g_cmd_restart_desc, - g_cmd_restart_usage); - -diff --git a/src/cmd/isula/base/rm.c b/src/cmd/isula/base/rm.c -index 9cd0cbd0..13bd4644 100644 ---- a/src/cmd/isula/base/rm.c -+++ b/src/cmd/isula/base/rm.c -@@ -118,12 +118,12 @@ int cmd_delete_main(int argc, const char **argv) - DELETE_OPTIONS(g_cmd_delete_args) - }; - -- isula_libutils_default_log_config(argv[0], &lconf); - if (client_arguments_init(&g_cmd_delete_args)) { - COMMAND_ERROR("client arguments init failed"); - exit(ECOMMON); - } - g_cmd_delete_args.progname = argv[0]; -+ isula_libutils_default_log_config(argv[0], &lconf); - command_init(&cmd, options, sizeof(options) / sizeof(options[0]), argc, (const char **)argv, g_cmd_delete_desc, - g_cmd_delete_usage); - if (command_parse_args(&cmd, &g_cmd_delete_args.argc, &g_cmd_delete_args.argv)) { -diff --git a/src/cmd/isula/base/run.c b/src/cmd/isula/base/run.c -index 0c82af02..a6068709 100644 ---- a/src/cmd/isula/base/run.c -+++ b/src/cmd/isula/base/run.c -@@ -148,13 +148,13 @@ int cmd_run_main(int argc, const char **argv) - struct command_option options[] = { LOG_OPTIONS(lconf) COMMON_OPTIONS(g_cmd_run_args) CREATE_OPTIONS(g_cmd_run_args) - CREATE_EXTEND_OPTIONS(g_cmd_run_args) RUN_OPTIONS(g_cmd_run_args) - }; -+ isula_libutils_default_log_config(argv[0], &lconf); - command_init(&cmd, options, sizeof(options) / sizeof(options[0]), argc, (const char **)argv, g_cmd_run_desc, - g_cmd_run_usage); - if (command_parse_args(&cmd, &g_cmd_run_args.argc, &g_cmd_run_args.argv) || run_checker(&g_cmd_run_args)) { - exit(EINVALIDARGS); - } - -- isula_libutils_default_log_config(argv[0], &lconf); - if (isula_libutils_log_enable(&lconf)) { - COMMAND_ERROR("log init failed"); - exit(ECOMMON); -diff --git a/src/cmd/isula/base/start.c b/src/cmd/isula/base/start.c -index 104c24ae..5e55524f 100644 ---- a/src/cmd/isula/base/start.c -+++ b/src/cmd/isula/base/start.c -@@ -327,12 +327,12 @@ int cmd_start_main(int argc, const char **argv) - command_t cmd; - struct command_option options[] = { LOG_OPTIONS(lconf) COMMON_OPTIONS(g_cmd_start_args) START_OPTIONS(g_cmd_start_args)}; - -- isula_libutils_default_log_config(argv[0], &lconf); - if (client_arguments_init(&g_cmd_start_args)) { - COMMAND_ERROR("client arguments init failed"); - exit(ECOMMON); - } - g_cmd_start_args.progname = argv[0]; -+ isula_libutils_default_log_config(argv[0], &lconf); - command_init(&cmd, options, sizeof(options) / sizeof(options[0]), argc, (const char **)argv, g_cmd_start_desc, - g_cmd_start_usage); - if (command_parse_args(&cmd, &g_cmd_start_args.argc, &g_cmd_start_args.argv)) { -diff --git a/src/cmd/isula/base/stop.c b/src/cmd/isula/base/stop.c -index e52db79c..6a901c42 100644 ---- a/src/cmd/isula/base/stop.c -+++ b/src/cmd/isula/base/stop.c -@@ -78,12 +78,12 @@ int cmd_stop_main(int argc, const char **argv) - STOP_OPTIONS(g_cmd_stop_args) - }; - -- isula_libutils_default_log_config(argv[0], &lconf); - if (client_arguments_init(&g_cmd_stop_args)) { - COMMAND_ERROR("client arguments init failed"); - exit(ECOMMON); - } - g_cmd_stop_args.progname = argv[0]; -+ isula_libutils_default_log_config(argv[0], &lconf); - command_init(&cmd, options, sizeof(options) / sizeof(options[0]), argc, (const char **)argv, g_cmd_stop_desc, - g_cmd_stop_usage); - if (command_parse_args(&cmd, &g_cmd_stop_args.argc, &g_cmd_stop_args.argv)) { -diff --git a/src/cmd/isula/extend/events.c b/src/cmd/isula/extend/events.c -index 9dbd7774..7094ac0d 100644 ---- a/src/cmd/isula/extend/events.c -+++ b/src/cmd/isula/extend/events.c -@@ -214,12 +214,12 @@ int cmd_events_main(int argc, const char **argv) - COMMON_OPTIONS(g_cmd_events_args) - }; - -+ isula_libutils_default_log_config(argv[0], &lconf); - command_init(&cmd, options, sizeof(options) / sizeof(options[0]), argc, (const char **)argv, g_cmd_events_desc, - g_cmd_events_usage); - if (command_parse_args(&cmd, &g_cmd_events_args.argc, &g_cmd_events_args.argv)) { - exit(EINVALIDARGS); - } -- isula_libutils_default_log_config(argv[0], &lconf); - if (isula_libutils_log_enable(&lconf)) { - COMMAND_ERROR("Events: log init failed"); - exit(ECOMMON); -diff --git a/src/cmd/isula/extend/stats.c b/src/cmd/isula/extend/stats.c -index 655332b8..334f859e 100644 ---- a/src/cmd/isula/extend/stats.c -+++ b/src/cmd/isula/extend/stats.c -@@ -272,9 +272,9 @@ int cmd_stats_main(int argc, const char **argv) - exit(ECOMMON); - } - g_cmd_stats_args.progname = argv[0]; -+ isula_libutils_default_log_config(argv[0], &lconf); - command_init(&cmd, options, sizeof(options) / sizeof(options[0]), argc, (const char **)argv, g_cmd_stats_desc, - g_cmd_stats_usage); -- isula_libutils_default_log_config(argv[0], &lconf); - if (command_parse_args(&cmd, &g_cmd_stats_args.argc, &g_cmd_stats_args.argv)) { - exit(EINVALIDARGS); - } -diff --git a/src/cmd/isula/extend/update.c b/src/cmd/isula/extend/update.c -index da472b0b..42cb8f21 100644 ---- a/src/cmd/isula/extend/update.c -+++ b/src/cmd/isula/extend/update.c -@@ -149,12 +149,12 @@ int cmd_update_main(int argc, const char **argv) - COMMON_OPTIONS(g_cmd_update_args) - }; - -- isula_libutils_default_log_config(argv[0], &lconf); - if (client_arguments_init(&g_cmd_update_args)) { - COMMAND_ERROR("client arguments init failed\n"); - exit(ECOMMON); - } - g_cmd_update_args.progname = argv[0]; -+ isula_libutils_default_log_config(argv[0], &lconf); - command_init(&cmd, options, sizeof(options) / sizeof(options[0]), argc, (const char **)argv, g_cmd_update_desc, - g_cmd_update_usage); - if (command_parse_args(&cmd, &g_cmd_update_args.argc, &g_cmd_update_args.argv) || -diff --git a/src/cmd/isula/images/images.c b/src/cmd/isula/images/images.c -index f60e7500..3d538aa5 100644 ---- a/src/cmd/isula/images/images.c -+++ b/src/cmd/isula/images/images.c -@@ -324,12 +324,12 @@ int cmd_images_main(int argc, const char **argv) - COMMON_OPTIONS(g_cmd_images_args) - }; - -+ isula_libutils_default_log_config(argv[0], &lconf); - command_init(&cmd, options, sizeof(options) / sizeof(options[0]), argc, (const char **)argv, g_cmd_images_desc, - g_cmd_images_usage); - if (command_parse_args(&cmd, &g_cmd_images_args.argc, &g_cmd_images_args.argv)) { - exit(exit_code); - } -- isula_libutils_default_log_config(argv[0], &lconf); - if (isula_libutils_log_enable(&lconf)) { - COMMAND_ERROR("Images: log init failed"); - exit(exit_code); -diff --git a/src/cmd/isula/images/import.c b/src/cmd/isula/images/import.c -index 2dcc6486..dbacb604 100644 ---- a/src/cmd/isula/images/import.c -+++ b/src/cmd/isula/images/import.c -@@ -88,12 +88,12 @@ int cmd_import_main(int argc, const char **argv) - command_t cmd; - struct command_option options[] = { LOG_OPTIONS(lconf) COMMON_OPTIONS(g_cmd_import_args) }; - -- isula_libutils_default_log_config(argv[0], &lconf); - if (client_arguments_init(&g_cmd_import_args)) { - COMMAND_ERROR("client arguments init failed"); - exit(ECOMMON); - } - g_cmd_import_args.progname = argv[0]; -+ isula_libutils_default_log_config(argv[0], &lconf); - command_init(&cmd, options, sizeof(options) / sizeof(options[0]), argc, (const char **)argv, g_cmd_import_desc, - g_cmd_import_usage); - if (command_parse_args(&cmd, &g_cmd_import_args.argc, &g_cmd_import_args.argv)) { -diff --git a/src/cmd/isula/images/load.c b/src/cmd/isula/images/load.c -index 0fb8014e..688edd02 100644 ---- a/src/cmd/isula/images/load.c -+++ b/src/cmd/isula/images/load.c -@@ -124,12 +124,12 @@ int cmd_load_main(int argc, const char **argv) - #endif - }; - -- isula_libutils_default_log_config(argv[0], &lconf); - if (client_arguments_init(&g_cmd_load_args)) { - COMMAND_ERROR("client arguments init failed"); - exit(ECOMMON); - } - g_cmd_load_args.progname = argv[0]; -+ isula_libutils_default_log_config(argv[0], &lconf); - command_init(&cmd, options, sizeof(options) / sizeof(options[0]), argc, (const char **)argv, g_cmd_load_desc, - g_cmd_load_usage); - if (command_parse_args(&cmd, &g_cmd_load_args.argc, &g_cmd_load_args.argv)) { -diff --git a/src/cmd/isula/images/login.c b/src/cmd/isula/images/login.c -index 92550352..0c0c149b 100644 ---- a/src/cmd/isula/images/login.c -+++ b/src/cmd/isula/images/login.c -@@ -184,13 +184,13 @@ int cmd_login_main(int argc, const char **argv) - command_t cmd; - struct command_option options[] = { COMMON_OPTIONS(g_cmd_login_args) LOGIN_OPTIONS(g_cmd_login_args) }; - -- isula_libutils_default_log_config(argv[0], &lconf); - if (client_arguments_init(&g_cmd_login_args)) { - COMMAND_ERROR("client arguments init failed"); - exit(ECOMMON); - } - g_cmd_login_args.progname = argv[0]; - -+ isula_libutils_default_log_config(argv[0], &lconf); - command_init(&cmd, options, sizeof(options) / sizeof(options[0]), argc, (const char **)argv, g_cmd_login_desc, - g_cmd_login_usage); - if (command_parse_args(&cmd, &g_cmd_login_args.argc, &g_cmd_login_args.argv)) { -diff --git a/src/cmd/isula/images/logout.c b/src/cmd/isula/images/logout.c -index 8efec1e3..45f28509 100644 ---- a/src/cmd/isula/images/logout.c -+++ b/src/cmd/isula/images/logout.c -@@ -80,13 +80,13 @@ int cmd_logout_main(int argc, const char **argv) - command_t cmd; - struct command_option options[] = { COMMON_OPTIONS(g_cmd_logout_args) }; - -- isula_libutils_default_log_config(argv[0], &lconf); - if (client_arguments_init(&g_cmd_logout_args)) { - COMMAND_ERROR("client arguments init failed"); - exit(ECOMMON); - } - g_cmd_logout_args.progname = argv[0]; - -+ isula_libutils_default_log_config(argv[0], &lconf); - command_init(&cmd, options, sizeof(options) / sizeof(options[0]), argc, (const char **)argv, g_cmd_logout_desc, - g_cmd_logout_usage); - if (command_parse_args(&cmd, &g_cmd_logout_args.argc, &g_cmd_logout_args.argv)) { -diff --git a/src/cmd/isula/images/pull.c b/src/cmd/isula/images/pull.c -index b72b0302..3ba7a715 100644 ---- a/src/cmd/isula/images/pull.c -+++ b/src/cmd/isula/images/pull.c -@@ -79,13 +79,13 @@ int cmd_pull_main(int argc, const char **argv) - command_t cmd; - struct command_option options[] = { COMMON_OPTIONS(g_cmd_pull_args) }; - -- isula_libutils_default_log_config(argv[0], &lconf); - if (client_arguments_init(&g_cmd_pull_args)) { - COMMAND_ERROR("client arguments init failed"); - exit(ECOMMON); - } - g_cmd_pull_args.progname = argv[0]; - -+ isula_libutils_default_log_config(argv[0], &lconf); - command_init(&cmd, options, sizeof(options) / sizeof(options[0]), argc, (const char **)argv, g_cmd_pull_desc, - g_cmd_pull_usage); - if (command_parse_args(&cmd, &g_cmd_pull_args.argc, &g_cmd_pull_args.argv)) { -diff --git a/src/cmd/isula/images/rmi.c b/src/cmd/isula/images/rmi.c -index 53ea7343..5b07c866 100644 ---- a/src/cmd/isula/images/rmi.c -+++ b/src/cmd/isula/images/rmi.c -@@ -83,12 +83,12 @@ int cmd_rmi_main(int argc, const char **argv) - command_t cmd; - struct command_option options[] = { LOG_OPTIONS(lconf) COMMON_OPTIONS(g_cmd_rmi_args) RMI_OPTIONS(g_cmd_rmi_args) }; - -- isula_libutils_default_log_config(argv[0], &lconf); - if (client_arguments_init(&g_cmd_rmi_args)) { - COMMAND_ERROR("client arguments init failed"); - exit(ECOMMON); - } - g_cmd_rmi_args.progname = argv[0]; -+ isula_libutils_default_log_config(argv[0], &lconf); - command_init(&cmd, options, sizeof(options) / sizeof(options[0]), argc, (const char **)argv, g_cmd_rmi_desc, - g_cmd_rmi_usage); - if (command_parse_args(&cmd, &g_cmd_rmi_args.argc, &g_cmd_rmi_args.argv)) { -diff --git a/src/cmd/isula/images/tag.c b/src/cmd/isula/images/tag.c -index e5a86708..8f399520 100644 ---- a/src/cmd/isula/images/tag.c -+++ b/src/cmd/isula/images/tag.c -@@ -78,12 +78,12 @@ int cmd_tag_main(int argc, const char **argv) - command_t cmd; - struct command_option options[] = { LOG_OPTIONS(lconf) COMMON_OPTIONS(g_cmd_tag_args) }; - -- isula_libutils_default_log_config(argv[0], &lconf); - if (client_arguments_init(&g_cmd_tag_args)) { - COMMAND_ERROR("client arguments init failed"); - exit(ECOMMON); - } - g_cmd_tag_args.progname = argv[0]; -+ isula_libutils_default_log_config(argv[0], &lconf); - command_init(&cmd, options, sizeof(options) / sizeof(options[0]), argc, (const char **)argv, g_cmd_tag_desc, - g_cmd_tag_usage); - if (command_parse_args(&cmd, &g_cmd_tag_args.argc, &g_cmd_tag_args.argv)) { -diff --git a/src/cmd/isula/information/info.c b/src/cmd/isula/information/info.c -index d6f6f7be..d3dd194a 100644 ---- a/src/cmd/isula/information/info.c -+++ b/src/cmd/isula/information/info.c -@@ -160,12 +160,12 @@ int cmd_info_main(int argc, const char **argv) - g_cmd_info_args.progname = argv[0]; - struct command_option options[] = { LOG_OPTIONS(lconf) COMMON_OPTIONS(g_cmd_info_args) }; - -+ isula_libutils_default_log_config(argv[0], &lconf); - command_init(&cmd, options, sizeof(options) / sizeof(options[0]), argc, (const char **)argv, g_cmd_info_desc, - g_cmd_info_usage); - if (command_parse_args(&cmd, &g_cmd_info_args.argc, &g_cmd_info_args.argv) != 0) { - exit(EINVALIDARGS); - } -- isula_libutils_default_log_config(argv[0], &lconf); - if (isula_libutils_log_enable(&lconf) != 0) { - COMMAND_ERROR("Info: log init failed"); - exit(ECOMMON); -diff --git a/src/cmd/isula/information/inspect.c b/src/cmd/isula/information/inspect.c -index 8ddb032e..d575b3db 100644 ---- a/src/cmd/isula/information/inspect.c -+++ b/src/cmd/isula/information/inspect.c -@@ -967,12 +967,12 @@ int cmd_inspect_main(int argc, const char **argv) - COMMON_OPTIONS(g_cmd_inspect_args) - }; - -+ isula_libutils_default_log_config(argv[0], &lconf); - command_init(&cmd, options, sizeof(options) / sizeof(options[0]), argc, (const char **)argv, g_cmd_inspect_desc, - g_cmd_inspect_usage); - if (command_parse_args(&cmd, &g_cmd_inspect_args.argc, &g_cmd_inspect_args.argv)) { - exit(EINVALIDARGS); - } -- isula_libutils_default_log_config(argv[0], &lconf); - if (isula_libutils_log_enable(&lconf)) { - COMMAND_ERROR("log init failed"); - exit(ECOMMON); -diff --git a/src/cmd/isula/information/logs.c b/src/cmd/isula/information/logs.c -index 2ddd16e6..5f3951ed 100644 ---- a/src/cmd/isula/information/logs.c -+++ b/src/cmd/isula/information/logs.c -@@ -109,12 +109,12 @@ static int cmd_logs_init(int argc, const char **argv) - COMMON_OPTIONS(g_cmd_logs_args) - }; - -+ isula_libutils_default_log_config(argv[0], &lconf); - command_init(&cmd, options, sizeof(options) / sizeof(options[0]), argc, (const char **)argv, g_cmd_logs_desc, - g_cmd_logs_usage); - if (command_parse_args(&cmd, &g_cmd_logs_args.argc, &g_cmd_logs_args.argv)) { - return EINVALIDARGS; - } -- isula_libutils_default_log_config(argv[0], &lconf); - if (isula_libutils_log_enable(&lconf)) { - COMMAND_ERROR("log init failed\n"); - g_cmd_logs_args.name = g_cmd_logs_args.argv[0]; -diff --git a/src/cmd/isula/information/ps.c b/src/cmd/isula/information/ps.c -index 125353a6..e1f8f75a 100644 ---- a/src/cmd/isula/information/ps.c -+++ b/src/cmd/isula/information/ps.c -@@ -986,12 +986,12 @@ int cmd_list_main(int argc, const char **argv) - COMMON_OPTIONS(g_cmd_list_args) - }; - -+ isula_libutils_default_log_config(argv[0], &lconf); - command_init(&cmd, options, sizeof(options) / sizeof(options[0]), argc, (const char **)argv, g_cmd_list_desc, - g_cmd_list_usage); - if (command_parse_args(&cmd, &g_cmd_list_args.argc, &g_cmd_list_args.argv)) { - exit(EINVALIDARGS); - } -- isula_libutils_default_log_config(argv[0], &lconf); - if (isula_libutils_log_enable(&lconf)) { - COMMAND_ERROR("PS: log init failed"); - exit(ECOMMON); -diff --git a/src/cmd/isula/information/top.c b/src/cmd/isula/information/top.c -index 5d0e3f0f..eeb47892 100644 ---- a/src/cmd/isula/information/top.c -+++ b/src/cmd/isula/information/top.c -@@ -120,12 +120,12 @@ int cmd_top_main(int argc, const char **argv) - command_t cmd; - struct command_option options[] = { LOG_OPTIONS(lconf) COMMON_OPTIONS(g_cmd_top_args) }; - -- isula_libutils_default_log_config(argv[0], &lconf); - if (client_arguments_init(&g_cmd_top_args)) { - COMMAND_ERROR("client arguments init failed"); - exit(ECOMMON); - } - g_cmd_top_args.progname = argv[0]; -+ isula_libutils_default_log_config(argv[0], &lconf); - command_init(&cmd, options, sizeof(options) / sizeof(options[0]), argc, (const char **)argv, g_cmd_top_desc, - g_cmd_top_usage); - -diff --git a/src/cmd/isula/information/version.c b/src/cmd/isula/information/version.c -index 62ee5643..46f73cab 100644 ---- a/src/cmd/isula/information/version.c -+++ b/src/cmd/isula/information/version.c -@@ -98,12 +98,12 @@ int cmd_version_main(int argc, const char **argv) - command_t cmd; - struct command_option options[] = { LOG_OPTIONS(lconf) COMMON_OPTIONS(g_cmd_version_args) }; - -- isula_libutils_default_log_config(argv[0], &lconf); - if (client_arguments_init(&g_cmd_version_args)) { - COMMAND_ERROR("client arguments init failed\n"); - exit(ECOMMON); - } - g_cmd_version_args.progname = argv[0]; -+ isula_libutils_default_log_config(argv[0], &lconf); - command_init(&cmd, options, sizeof(options) / sizeof(options[0]), argc, (const char **)argv, g_cmd_version_desc, - g_cmd_version_usage); - if (command_parse_args(&cmd, &g_cmd_version_args.argc, &g_cmd_version_args.argv)) { -diff --git a/src/cmd/isula/information/wait.c b/src/cmd/isula/information/wait.c -index b39c4953..aaa8f20e 100644 ---- a/src/cmd/isula/information/wait.c -+++ b/src/cmd/isula/information/wait.c -@@ -91,12 +91,12 @@ int cmd_wait_main(int argc, const char **argv) - command_t cmd; - struct command_option options[] = { LOG_OPTIONS(lconf) COMMON_OPTIONS(g_cmd_wait_args) }; - -- isula_libutils_default_log_config(argv[0], &lconf); - if (client_arguments_init(&g_cmd_wait_args)) { - COMMAND_ERROR("client arguments init failed"); - exit(ECOMMON); - } - g_cmd_wait_args.progname = argv[0]; -+ isula_libutils_default_log_config(argv[0], &lconf); - command_init(&cmd, options, sizeof(options) / sizeof(options[0]), argc, (const char **)argv, g_cmd_wait_desc, - g_cmd_wait_usage); - if (command_parse_args(&cmd, &g_cmd_wait_args.argc, &g_cmd_wait_args.argv)) { -diff --git a/src/cmd/isula/stream/attach.c b/src/cmd/isula/stream/attach.c -index f0a77a16..6dac2a0c 100644 ---- a/src/cmd/isula/stream/attach.c -+++ b/src/cmd/isula/stream/attach.c -@@ -172,12 +172,12 @@ static int attach_cmd_init(int argc, const char **argv) - g_cmd_attach_args.progname = argv[0]; - struct command_option options[] = { LOG_OPTIONS(lconf) COMMON_OPTIONS(g_cmd_attach_args) }; - -+ isula_libutils_default_log_config(argv[0], &lconf); - command_init(&cmd, options, sizeof(options) / sizeof(options[0]), argc, (const char **)argv, g_cmd_attach_desc, - g_cmd_attach_usage); - if (command_parse_args(&cmd, &g_cmd_attach_args.argc, &g_cmd_attach_args.argv)) { - return EINVALIDARGS; - } -- isula_libutils_default_log_config(argv[0], &lconf); - if (isula_libutils_log_enable(&lconf)) { - COMMAND_ERROR("log init failed"); - return ECOMMON; -diff --git a/src/cmd/isula/stream/cp.c b/src/cmd/isula/stream/cp.c -index e954ed3d..b869741f 100644 ---- a/src/cmd/isula/stream/cp.c -+++ b/src/cmd/isula/stream/cp.c -@@ -327,12 +327,12 @@ int cmd_cp_main(int argc, const char **argv) - g_cmd_cp_args.progname = argv[0]; - struct command_option options[] = { LOG_OPTIONS(lconf) COMMON_OPTIONS(g_cmd_cp_args) }; - -+ isula_libutils_default_log_config(argv[0], &lconf); - command_init(&cmd, options, sizeof(options) / sizeof(options[0]), argc, (const char **)argv, g_cmd_cp_desc, - g_cmd_cp_usage); - if (command_parse_args(&cmd, &g_cmd_cp_args.argc, &g_cmd_cp_args.argv)) { - exit(EINVALIDARGS); - } -- isula_libutils_default_log_config(argv[0], &lconf); - if (isula_libutils_log_enable(&lconf)) { - COMMAND_ERROR("cp: log init failed"); - exit(ECOMMON); -diff --git a/src/cmd/isula/stream/exec.c b/src/cmd/isula/stream/exec.c -index 559a9d0f..d1d57268 100644 ---- a/src/cmd/isula/stream/exec.c -+++ b/src/cmd/isula/stream/exec.c -@@ -198,12 +198,12 @@ static int exec_cmd_init(int argc, const char **argv) - EXEC_OPTIONS(g_cmd_exec_args) - }; - -- isula_libutils_default_log_config(argv[0], &lconf); - if (client_arguments_init(&g_cmd_exec_args)) { - COMMAND_ERROR("client arguments init failed\n"); - exit(ECOMMON); - } - g_cmd_exec_args.progname = argv[0]; -+ isula_libutils_default_log_config(argv[0], &lconf); - command_init(&cmd, options, sizeof(options) / sizeof(options[0]), argc, (const char **)argv, g_cmd_exec_desc, - g_cmd_exec_usage); - -diff --git a/src/cmd/isula/volume/list.c b/src/cmd/isula/volume/list.c -index f58abc0f..23fe2027 100644 ---- a/src/cmd/isula/volume/list.c -+++ b/src/cmd/isula/volume/list.c -@@ -145,12 +145,12 @@ int cmd_volume_ls_main(int argc, const char **argv) - COMMON_OPTIONS(g_cmd_volume_ls_args) - }; - -+ isula_libutils_default_log_config(argv[0], &lconf); - subcommand_init(&cmd, options, sizeof(options) / sizeof(options[0]), argc, (const char **)argv, g_cmd_volume_ls_desc, - g_cmd_volume_ls_usage); - if (command_parse_args(&cmd, &g_cmd_volume_ls_args.argc, &g_cmd_volume_ls_args.argv)) { - exit(exit_code); - } -- isula_libutils_default_log_config(argv[0], &lconf); - if (isula_libutils_log_enable(&lconf)) { - COMMAND_ERROR("volume ls: log init failed"); - exit(exit_code); -diff --git a/src/cmd/isula/volume/prune.c b/src/cmd/isula/volume/prune.c -index e9d628d1..2a3bca3e 100644 ---- a/src/cmd/isula/volume/prune.c -+++ b/src/cmd/isula/volume/prune.c -@@ -90,12 +90,12 @@ int cmd_volume_prune_main(int argc, const char **argv) - PRUNE_OPTIONS(g_cmd_volume_prune_args) - }; - -- isula_libutils_default_log_config(argv[0], &lconf); - if (client_arguments_init(&g_cmd_volume_prune_args)) { - COMMAND_ERROR("client arguments init failed"); - exit(ECOMMON); - } - g_cmd_volume_prune_args.progname = util_string_join(" ", argv, 2); -+ isula_libutils_default_log_config(argv[0], &lconf); - subcommand_init(&cmd, options, sizeof(options) / sizeof(options[0]), argc, (const char **)argv, g_cmd_volume_prune_desc, - g_cmd_volume_prune_usage); - -diff --git a/src/cmd/isula/volume/remove.c b/src/cmd/isula/volume/remove.c -index 2d10a002..71194722 100644 ---- a/src/cmd/isula/volume/remove.c -+++ b/src/cmd/isula/volume/remove.c -@@ -80,12 +80,12 @@ int cmd_volume_rm_main(int argc, const char **argv) - command_t cmd; - struct command_option options[] = { LOG_OPTIONS(lconf) COMMON_OPTIONS(g_cmd_volume_rm_args) }; - -- isula_libutils_default_log_config(argv[0], &lconf); - if (client_arguments_init(&g_cmd_volume_rm_args)) { - COMMAND_ERROR("client arguments init failed"); - exit(ECOMMON); - } - g_cmd_volume_rm_args.progname = util_string_join(" ", argv, 2); -+ isula_libutils_default_log_config(argv[0], &lconf); - subcommand_init(&cmd, options, sizeof(options) / sizeof(options[0]), argc, (const char **)argv, g_cmd_volume_rm_desc, - g_cmd_volume_rm_usage); - if (command_parse_args(&cmd, &g_cmd_volume_rm_args.argc, &g_cmd_volume_rm_args.argv)) { --- -2.25.1 - diff --git a/0021-spec-add-verify-for-device-cgroup-access-mode.patch b/0021-spec-add-verify-for-device-cgroup-access-mode.patch deleted file mode 100644 index 2e833c4..0000000 --- a/0021-spec-add-verify-for-device-cgroup-access-mode.patch +++ /dev/null @@ -1,102 +0,0 @@ -From 82d59974b5fcb0abfa2f488801e7d9ed2f93a718 Mon Sep 17 00:00:00 2001 -From: Li Feng -Date: Sat, 30 Jan 2021 14:22:16 +0800 -Subject: [PATCH 21/53] spec: add verify for device cgroup access mode - -Signed-off-by: Li Feng ---- - src/daemon/modules/spec/verify.c | 27 +++++++++++++++++++++++++++ - src/utils/cutils/utils_verify.c | 26 ++++++++++++++++++++++++-- - 2 files changed, 51 insertions(+), 2 deletions(-) - -diff --git a/src/daemon/modules/spec/verify.c b/src/daemon/modules/spec/verify.c -index 053a57b3..a3156579 100644 ---- a/src/daemon/modules/spec/verify.c -+++ b/src/daemon/modules/spec/verify.c -@@ -1064,6 +1064,26 @@ static int adapt_resources_memory(const sysinfo_t *sysinfo, defs_resources_memor - return adapt_memory_swap(sysinfo, &(memory->limit), &(memory->swap)); - } - -+/* verify resources device */ -+static int verify_resources_device(defs_resources *resources) -+{ -+ int ret = 0; -+ size_t i = 0; -+ -+ for (i = 0; i < resources->devices_len; i++) { -+ if (!util_valid_device_mode(resources->devices[i]->access)) { -+ ERROR("Invalid device mode \"%s\" for device \"%ld %ld\"", resources->devices[i]->access, -+ resources->devices[i]->major, resources->devices[i]->minor); -+ isulad_set_error_message("Invalid device mode \"%s\" for device \"%ld %ld\"", resources->devices[i]->access, -+ resources->devices[i]->major, resources->devices[i]->minor); -+ ret = -1; -+ goto out; -+ } -+ } -+out: -+ return ret; -+} -+ - /* verify linux resources */ - static int verify_linux_resources(const sysinfo_t *sysinfo, defs_resources *resources) - { -@@ -1104,6 +1124,13 @@ static int verify_linux_resources(const sysinfo_t *sysinfo, defs_resources *reso - goto out; - } - } -+ // device -+ if (resources->devices != NULL) { -+ ret = verify_resources_device(resources); -+ if (ret != 0) { -+ goto out; -+ } -+ } - out: - return ret; - } -diff --git a/src/utils/cutils/utils_verify.c b/src/utils/cutils/utils_verify.c -index 5a18e664..58191685 100644 ---- a/src/utils/cutils/utils_verify.c -+++ b/src/utils/cutils/utils_verify.c -@@ -184,14 +184,36 @@ bool util_validate_socket(const char *socket) - bool util_valid_device_mode(const char *mode) - { - size_t i = 0; -+ int r_count = 0; -+ int w_count = 0; -+ int m_count = 0; - - if (mode == NULL || !strcmp(mode, "")) { - return false; - } - - for (i = 0; i < strlen(mode); i++) { -- if (mode[i] != 'r' && mode[i] != 'w' && mode[i] != 'm') { -- return false; -+ switch (mode[i]) { -+ case 'r': -+ if (r_count != 0) { -+ return false; -+ } -+ r_count++; -+ break; -+ case 'w': -+ if (w_count != 0) { -+ return false; -+ } -+ w_count++; -+ break; -+ case 'm': -+ if (m_count != 0) { -+ return false; -+ } -+ m_count++; -+ break; -+ default: -+ return false; - } - } - --- -2.25.1 - diff --git a/0022-log-change-log-level-from-warn-to-error.patch b/0022-log-change-log-level-from-warn-to-error.patch deleted file mode 100644 index 3b5f61a..0000000 --- a/0022-log-change-log-level-from-warn-to-error.patch +++ /dev/null @@ -1,26 +0,0 @@ -From 87e886b239a932f37679f12fe2920d1b36e92985 Mon Sep 17 00:00:00 2001 -From: Li Feng -Date: Sat, 30 Jan 2021 16:12:29 +0800 -Subject: [PATCH 22/53] log: change log level from warn to error - -Signed-off-by: Li Feng ---- - src/daemon/modules/service/service_container.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/daemon/modules/service/service_container.c b/src/daemon/modules/service/service_container.c -index a4a2414c..5eab8ccf 100644 ---- a/src/daemon/modules/service/service_container.c -+++ b/src/daemon/modules/service/service_container.c -@@ -1288,7 +1288,7 @@ static int force_kill(container_t *cont) - } - ret = container_wait_stop(cont, 90); - if (ret != 0) { -- WARN("Container(%s) stuck for 90 seconds, try to kill the monitor of container", id); -+ ERROR("Container(%s) stuck for 90 seconds, try to kill the monitor of container", id); - ret = send_signal_to_process(cont->state->state->p_pid, cont->state->state->p_start_time, stop_signal, SIGKILL); - if (ret != 0) { - ERROR("Container stuck for 90 seconds and failed to kill the monitor of container, " --- -2.25.1 - diff --git a/0023-Fix-create-env-path-dir-if-dir-exist.patch b/0023-Fix-create-env-path-dir-if-dir-exist.patch deleted file mode 100644 index de2bd74..0000000 --- a/0023-Fix-create-env-path-dir-if-dir-exist.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 2bd45202ef01260a2181270012c4781afd5cccba Mon Sep 17 00:00:00 2001 -From: zhangsong234 -Date: Mon, 1 Feb 2021 09:25:51 +0800 -Subject: [PATCH 23/53] Fix create env path dir if dir exist - ---- - src/daemon/modules/service/service_container.c | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - -diff --git a/src/daemon/modules/service/service_container.c b/src/daemon/modules/service/service_container.c -index 0c1f234e..5fbb06a2 100644 ---- a/src/daemon/modules/service/service_container.c -+++ b/src/daemon/modules/service/service_container.c -@@ -291,7 +291,9 @@ static int create_env_path_dir(const char *env_path) - free(dir); - return 0; - } -- ret = util_mkdir_p(dir, DEFAULT_SECURE_DIRECTORY_MODE); -+ if (!util_dir_exists(dir)) { -+ ret = util_mkdir_p(dir, DEFAULT_SECURE_DIRECTORY_MODE); -+ } - free(dir); - return ret; - } --- -2.25.1 - diff --git a/0024-iSulad-calculate-memusage-with-used-total_inactive_f.patch b/0024-iSulad-calculate-memusage-with-used-total_inactive_f.patch deleted file mode 100644 index 3deea91..0000000 --- a/0024-iSulad-calculate-memusage-with-used-total_inactive_f.patch +++ /dev/null @@ -1,287 +0,0 @@ -From c5aeb37655533ce84161f237ed6175153891d9e0 Mon Sep 17 00:00:00 2001 -From: Li Feng -Date: Thu, 28 Jan 2021 19:30:44 +0800 -Subject: [PATCH 24/53] iSulad: calculate memusage with used - - total_inactive_file - -On cgroup v1 host, the result is `mem.used - mem.["total_inactive_file"]` . - -This definition is consistent with cadvisor and containerd/CRI. -https://github.com/google/cadvisor/commit/307d1b1cb320fef66fab02db749f07a459245451 -https://github.com/containerd/cri/commit/6b8846cdf8b8c98c1d965313d66bc8489166059a - -Signed-off-by: Li Feng ---- - src/api/services/containers/container.proto | 1 + - .../connect/grpc/grpc_containers_client.cc | 4 +- - src/client/connect/protocol_type.h | 1 + - src/cmd/isula/extend/stats.c | 16 +++++- - .../grpc/grpc_containers_service_private.cc | 1 + - .../cri/cri_container_manager_service_impl.cc | 49 +++++++++---------- - .../executor/container_cb/execution_extend.c | 1 + - src/daemon/modules/api/runtime_api.h | 1 + - .../modules/runtime/engines/lcr/lcr_engine.c | 1 + - 9 files changed, 47 insertions(+), 28 deletions(-) - -diff --git a/src/api/services/containers/container.proto b/src/api/services/containers/container.proto -index 36010860..efd085a1 100644 ---- a/src/api/services/containers/container.proto -+++ b/src/api/services/containers/container.proto -@@ -85,6 +85,7 @@ message Container_info { - string status = 15; - uint64 cache = 16; - uint64 cache_total = 17; -+ uint64 inactive_file_total = 18; - } - - message Event { -diff --git a/src/client/connect/grpc/grpc_containers_client.cc b/src/client/connect/grpc/grpc_containers_client.cc -index 9bb66b4b..ccde59a4 100644 ---- a/src/client/connect/grpc/grpc_containers_client.cc -+++ b/src/client/connect/grpc/grpc_containers_client.cc -@@ -1688,6 +1688,7 @@ public: - } - response->container_stats[i].cache = gresponse->containers(i).cache(); - response->container_stats[i].cache_total = gresponse->containers(i).cache_total(); -+ response->container_stats[i].inactive_file_total = gresponse->containers(i).inactive_file_total(); - } - response->container_num = static_cast(size); - } -@@ -1981,7 +1982,8 @@ public: - explicit CopyToContainerWriteToServerTask( - const struct io_read_wrapper *reader, - std::shared_ptr> stream) -- : m_reader(reader), m_stream(std::move(std::move(stream))) -+ : m_reader(reader) -+ , m_stream(std::move(std::move(stream))) - { - } - ~CopyToContainerWriteToServerTask() = default; -diff --git a/src/client/connect/protocol_type.h b/src/client/connect/protocol_type.h -index 6cbecf66..32f55b51 100644 ---- a/src/client/connect/protocol_type.h -+++ b/src/client/connect/protocol_type.h -@@ -172,6 +172,7 @@ struct isula_container_info { - // Cache usage - uint64_t cache; - uint64_t cache_total; -+ uint64_t inactive_file_total; - }; - - struct isula_inspect_request { -diff --git a/src/cmd/isula/extend/stats.c b/src/cmd/isula/extend/stats.c -index 334f859e..03544325 100644 ---- a/src/cmd/isula/extend/stats.c -+++ b/src/cmd/isula/extend/stats.c -@@ -76,6 +76,18 @@ static void stats_print_header(void) - printf(TERMNORM); - } - -+// workingset = usage - total_inactive_file -+static uint64_t memory_get_working_set(const struct isula_container_info *stats) -+{ -+ uint64_t workingset = stats->mem_used; -+ -+ if (stats->inactive_file_total < stats->mem_used) { -+ workingset = stats->mem_used - stats->inactive_file_total; -+ } -+ -+ return workingset; -+} -+ - static void stats_print(const struct isula_container_info *stats) - { - #define SHORTIDLEN 12 -@@ -130,8 +142,10 @@ static void stats_print(const struct isula_container_info *stats) - if (strlen(short_id) > SHORTIDLEN) { - short_id[SHORTIDLEN] = '\0'; - } -+ // workingset = usage - total_inactive_file -+ uint64_t workingset = memory_get_working_set(stats); - printf("%-16s %-10.2f %-26s %-10.2f %-26s %-10llu", short_id, cpu_percent, mem_str, -- stats->mem_limit ? ((double)stats->mem_used / stats->mem_limit) * PERCENT : 0.00, iosb_str, -+ stats->mem_limit ? ((double)workingset / stats->mem_limit) * PERCENT : 0.00, iosb_str, - (unsigned long long)stats->pids_current); - free(short_id); - } -diff --git a/src/daemon/entry/connect/grpc/grpc_containers_service_private.cc b/src/daemon/entry/connect/grpc/grpc_containers_service_private.cc -index ac87a20b..8e19f978 100644 ---- a/src/daemon/entry/connect/grpc/grpc_containers_service_private.cc -+++ b/src/daemon/entry/connect/grpc/grpc_containers_service_private.cc -@@ -790,6 +790,7 @@ void ContainerServiceImpl::stats_response_to_grpc(const container_stats_response - } - stats->set_cache(response->container_stats[i]->cache); - stats->set_cache_total(response->container_stats[i]->cache_total); -+ stats->set_inactive_file_total(response->container_stats[i]->inactive_file_total); - } - } - gresponse->set_cc(response->cc); -diff --git a/src/daemon/entry/cri/cri_container_manager_service_impl.cc b/src/daemon/entry/cri/cri_container_manager_service_impl.cc -index 812469ee..6c6569a6 100644 ---- a/src/daemon/entry/cri/cri_container_manager_service_impl.cc -+++ b/src/daemon/entry/cri/cri_container_manager_service_impl.cc -@@ -126,9 +126,8 @@ auto ContainerManagerServiceImpl::PackCreateContainerHostConfigSecurityContext( - return 0; - } - --auto ContainerManagerServiceImpl::GenerateCreateContainerHostConfig(const runtime::v1alpha2::ContainerConfig -- &containerConfig, -- Errors &error) -> host_config * -+auto ContainerManagerServiceImpl::GenerateCreateContainerHostConfig( -+ const runtime::v1alpha2::ContainerConfig &containerConfig, Errors &error) -> host_config * - { - host_config *hostconfig = (host_config *)util_common_calloc_s(sizeof(host_config)); - if (hostconfig == nullptr) { -@@ -294,11 +293,11 @@ cleanup: - return nullptr; - } - --container_create_request *ContainerManagerServiceImpl::GenerateCreateContainerRequest( -- const std::string &realPodSandboxID, -- const runtime::v1alpha2::ContainerConfig &containerConfig, -- const runtime::v1alpha2::PodSandboxConfig &podSandboxConfig, -- const std::string &podSandboxRuntime, Errors &error) -+container_create_request * -+ContainerManagerServiceImpl::GenerateCreateContainerRequest(const std::string &realPodSandboxID, -+ const runtime::v1alpha2::ContainerConfig &containerConfig, -+ const runtime::v1alpha2::PodSandboxConfig &podSandboxConfig, -+ const std::string &podSandboxRuntime, Errors &error) - { - struct parser_context ctx { - OPT_GEN_SIMPLIFY, 0 -@@ -333,8 +332,7 @@ container_create_request *ContainerManagerServiceImpl::GenerateCreateContainerRe - hostconfig->cgroup_parent = util_strdup_s(podSandboxConfig.linux().cgroup_parent().c_str()); - } - -- custom_config = GenerateCreateContainerCustomConfig(realPodSandboxID, containerConfig, -- podSandboxConfig, error); -+ custom_config = GenerateCreateContainerCustomConfig(realPodSandboxID, containerConfig, podSandboxConfig, error); - if (error.NotEmpty()) { - goto cleanup; - } -@@ -611,7 +609,6 @@ void ContainerManagerServiceImpl::ListContainersToGRPC(container_list_response * - } - } - -- - void ContainerManagerServiceImpl::ListContainers(const runtime::v1alpha2::ContainerFilter *filter, - std::vector> *containers, - Errors &error) -@@ -681,9 +678,8 @@ auto ContainerManagerServiceImpl::PackContainerStatsFilter(const runtime::v1alph - return 0; - } - --void ContainerManagerServiceImpl::PackContainerStatsAttributes(const char *id, -- std::unique_ptr &container, -- Errors &error) -+void ContainerManagerServiceImpl::PackContainerStatsAttributes( -+ const char *id, std::unique_ptr &container, Errors &error) - { - if (id == nullptr) { - return; -@@ -779,7 +775,11 @@ void ContainerManagerServiceImpl::ContainerStatsToGRPC( - container); - - if (response->container_stats[i]->mem_used != 0u) { -- container->mutable_memory()->mutable_working_set_bytes()->set_value(response->container_stats[i]->mem_used); -+ uint64_t workingset = response->container_stats[i]->mem_used; -+ if (response->container_stats[i]->inactive_file_total < response->container_stats[i]->mem_used) { -+ workingset = response->container_stats[i]->mem_used - response->container_stats[i]->inactive_file_total; -+ } -+ container->mutable_memory()->mutable_working_set_bytes()->set_value(workingset); - } - - if (response->container_stats[i]->cpu_use_nanos != 0u) { -@@ -838,9 +838,8 @@ cleanup: - free_container_stats_response(response); - } - --void ContainerManagerServiceImpl::PackContainerImageToStatus(container_inspect *inspect, -- std::unique_ptr &contStatus, -- Errors &error) -+void ContainerManagerServiceImpl::PackContainerImageToStatus( -+ container_inspect *inspect, std::unique_ptr &contStatus, Errors &error) - { - if (inspect->config == nullptr) { - return; -@@ -854,9 +853,9 @@ void ContainerManagerServiceImpl::PackContainerImageToStatus(container_inspect * - return; - } - --void ContainerManagerServiceImpl::UpdateBaseStatusFromInspect(container_inspect *inspect, int64_t &createdAt, -- int64_t &startedAt, int64_t &finishedAt, -- std::unique_ptr &contStatus) -+void ContainerManagerServiceImpl::UpdateBaseStatusFromInspect( -+ container_inspect *inspect, int64_t &createdAt, int64_t &startedAt, int64_t &finishedAt, -+ std::unique_ptr &contStatus) - { - runtime::v1alpha2::ContainerState state { runtime::v1alpha2::CONTAINER_UNKNOWN }; - std::string reason; -@@ -1198,7 +1197,6 @@ auto ContainerManagerServiceImpl::InspectContainerState(const std::string &Id, E - return inspect_data; - } - -- - auto ContainerManagerServiceImpl::ValidateExecRequest(const runtime::v1alpha2::ExecRequest &req, Errors &error) -> int - { - if (req.container_id().empty()) { -@@ -1260,8 +1258,8 @@ void ContainerManagerServiceImpl::Exec(const runtime::v1alpha2::ExecRequest &req - resp->set_url(url); - } - --auto ContainerManagerServiceImpl::ValidateAttachRequest(const runtime::v1alpha2::AttachRequest &req, -- Errors &error) -> int -+auto ContainerManagerServiceImpl::ValidateAttachRequest(const runtime::v1alpha2::AttachRequest &req, Errors &error) -+-> int - { - if (req.container_id().empty()) { - error.SetError("missing required container id!"); -@@ -1286,8 +1284,7 @@ auto ContainerManagerServiceImpl::ValidateAttachRequest(const runtime::v1alpha2: - } - - void ContainerManagerServiceImpl::Attach(const runtime::v1alpha2::AttachRequest &req, -- runtime::v1alpha2::AttachResponse *resp, -- Errors &error) -+ runtime::v1alpha2::AttachResponse *resp, Errors &error) - { - if (ValidateAttachRequest(req, error) != 0) { - return; -diff --git a/src/daemon/executor/container_cb/execution_extend.c b/src/daemon/executor/container_cb/execution_extend.c -index 40f24d29..2d5c6bed 100644 ---- a/src/daemon/executor/container_cb/execution_extend.c -+++ b/src/daemon/executor/container_cb/execution_extend.c -@@ -268,6 +268,7 @@ static container_info *get_container_stats(const container_t *cont, - info->status = util_strdup_s(container_state_to_string(container_state_get_status(cont->state))); - info->cache = einfo->cache; - info->cache_total = einfo->cache_total; -+ info->inactive_file_total = einfo->inactive_file_total; - - if (copy_map_labels(cont->common_config->config, &map_labels) != 0) { - ret = -1; -diff --git a/src/daemon/modules/api/runtime_api.h b/src/daemon/modules/api/runtime_api.h -index f11228b6..dde21b91 100644 ---- a/src/daemon/modules/api/runtime_api.h -+++ b/src/daemon/modules/api/runtime_api.h -@@ -61,6 +61,7 @@ struct runtime_container_resources_stats_info { - /* Cache usage */ - uint64_t cache; - uint64_t cache_total; -+ uint64_t inactive_file_total; - }; - - typedef struct _rt_create_params_t { -diff --git a/src/daemon/modules/runtime/engines/lcr/lcr_engine.c b/src/daemon/modules/runtime/engines/lcr/lcr_engine.c -index 691bfaa8..350f6497 100644 ---- a/src/daemon/modules/runtime/engines/lcr/lcr_engine.c -+++ b/src/daemon/modules/runtime/engines/lcr/lcr_engine.c -@@ -164,6 +164,7 @@ static void copy_container_resources_stats(const struct lcr_container_state *lcs - rs_stats->kmem_limit = lcs->kmem_limit; - rs_stats->cache = lcs->cache; - rs_stats->cache_total = lcs->cache_total; -+ rs_stats->inactive_file_total = lcs->inactive_file_total; - } - - /* get container cgroup resources */ --- -2.25.1 - diff --git a/0025-fix-container-exit-health-check-residue-and-multiple.patch b/0025-fix-container-exit-health-check-residue-and-multiple.patch deleted file mode 100644 index 26d8b40..0000000 --- a/0025-fix-container-exit-health-check-residue-and-multiple.patch +++ /dev/null @@ -1,677 +0,0 @@ -From 012b3f94279b0c6d193d510aa211b977a38e7c24 Mon Sep 17 00:00:00 2001 -From: wujing -Date: Fri, 22 Jan 2021 17:13:16 +0800 -Subject: [PATCH 25/53] fix container exit health check residue and multiple - health checks - -Signed-off-by: wujing ---- - .../executor/container_cb/execution_extend.c | 7 +- - src/daemon/modules/api/container_api.h | 2 + - .../container/container_events_handler.c | 1 - - .../container/health_check/health_check.c | 274 +++++++++++++----- - .../modules/service/service_container.c | 3 +- - test/mocks/health_check_mock.cc | 8 + - test/mocks/health_check_mock.h | 1 + - .../execution_extend/execution_extend_ut.cc | 6 + - 8 files changed, 220 insertions(+), 82 deletions(-) - -diff --git a/src/daemon/executor/container_cb/execution_extend.c b/src/daemon/executor/container_cb/execution_extend.c -index 40f24d29..01a0466f 100644 ---- a/src/daemon/executor/container_cb/execution_extend.c -+++ b/src/daemon/executor/container_cb/execution_extend.c -@@ -532,6 +532,7 @@ static int do_resume_container(container_t *cont) - - params.rootpath = cont->root_path; - params.state = cont->state_path; -+ - if (runtime_resume(id, cont->runtime, ¶ms)) { - ERROR("Failed to resume container:%s", id); - ret = -1; -@@ -716,7 +717,11 @@ static int do_pause_container(container_t *cont) - - params.rootpath = cont->root_path; - params.state = cont->state_path; -+ -+ container_stop_health_checks(cont->common_config->id); -+ - if (runtime_pause(id, cont->runtime, ¶ms)) { -+ container_update_health_monitor(cont->common_config->id); - ERROR("Failed to pause container:%s", id); - ret = -1; - goto out; -@@ -724,8 +729,6 @@ static int do_pause_container(container_t *cont) - - container_state_set_paused(cont->state); - -- container_update_health_monitor(cont->common_config->id); -- - if (container_state_to_disk(cont)) { - ERROR("Failed to save container \"%s\" to disk", id); - ret = -1; -diff --git a/src/daemon/modules/api/container_api.h b/src/daemon/modules/api/container_api.h -index 83216cf3..3b7f2889 100644 ---- a/src/daemon/modules/api/container_api.h -+++ b/src/daemon/modules/api/container_api.h -@@ -49,6 +49,8 @@ typedef struct health_check_manager { - pthread_mutex_t mutex; - bool init_mutex; - health_check_monitor_status_t monitor_status; -+ // Used to wait for the health check minotor thread to close -+ bool monitor_exist; - } health_check_manager_t; - - typedef struct _container_state_t_ { -diff --git a/src/daemon/modules/container/container_events_handler.c b/src/daemon/modules/container/container_events_handler.c -index 1283f99c..994c11cc 100644 ---- a/src/daemon/modules/container/container_events_handler.c -+++ b/src/daemon/modules/container/container_events_handler.c -@@ -156,7 +156,6 @@ static int container_state_changed(container_t *cont, const struct isulad_events - container_state_set_stopped(cont->state, (int)events->exit_status); - container_wait_stop_cond_broadcast(cont); - plugin_event_container_post_stop(cont); -- container_stop_health_checks(cont->common_config->id); - } - - auto_remove = !should_restart && cont->hostconfig != NULL && cont->hostconfig->auto_remove; -diff --git a/src/daemon/modules/container/health_check/health_check.c b/src/daemon/modules/container/health_check/health_check.c -index 04467938..c6ccbbf2 100644 ---- a/src/daemon/modules/container/health_check/health_check.c -+++ b/src/daemon/modules/container/health_check/health_check.c -@@ -73,24 +73,47 @@ static char *get_health_status(container_state_t *s) - return status; - } - --static void set_health_status(container_state_t *s, const char *new) -+static void set_health_status(container_t *cont, const char *new) - { -- if (s == NULL || new == NULL) { -+ if (cont->state == NULL || new == NULL) { - return; - } -- container_state_lock(s); -- free(s->state->health->status); -- s->state->health->status = util_strdup_s(new); -- container_state_unlock(s); -+ -+ container_state_lock(cont->state); -+ free(cont->state->state->health->status); -+ cont->state->state->health->status = util_strdup_s(new); -+ container_state_unlock(cont->state); -+ -+ if (container_state_to_disk(cont)) { -+ WARN("Failed to save container \"%s\" to disk", cont->common_config->id); -+ } - } - --static void set_monitor_idle_status(health_check_manager_t *health) -+static void init_monitor_idle_status(health_check_manager_t *health) - { - container_health_check_lock(health); - health->monitor_status = MONITOR_IDLE; - container_health_check_unlock(health); - } - -+static int transfer_monitor_idle_status(health_check_manager_t *health) -+{ -+ int ret = 0; -+ -+ container_health_check_lock(health); -+ // When the minitor status is MONITOR_STOP, it cann't be set to minitor status -+ if (health->monitor_status == MONITOR_STOP) { -+ ret = -1; -+ goto out; -+ } -+ -+ health->monitor_status = MONITOR_IDLE; -+ -+out: -+ container_health_check_unlock(health); -+ return ret; -+} -+ - static void set_monitor_stop_status(health_check_manager_t *health) - { - container_health_check_lock(health); -@@ -98,11 +121,21 @@ static void set_monitor_stop_status(health_check_manager_t *health) - container_health_check_unlock(health); - } - --static void set_monitor_interval_timeout_status(health_check_manager_t *health) -+static int transfer_monitor_interval_timeout_status(health_check_manager_t *health) - { -+ int ret = 0; -+ - container_health_check_lock(health); -+ // When the minitor status is MONITOR_STOP, it cann't be set to minitor status -+ if (health->monitor_status == MONITOR_STOP) { -+ ret = -1; -+ goto out; -+ } - health->monitor_status = MONITOR_INTERVAL; -+ -+out: - container_health_check_unlock(health); -+ return ret; - } - - static health_check_monitor_status_t get_health_check_monitor_state(health_check_manager_t *health) -@@ -116,18 +149,35 @@ static health_check_monitor_status_t get_health_check_monitor_state(health_check - return ret; - } - --static void close_health_check_monitor(const container_t *cont) -+static void set_monitor_exist_flag(health_check_manager_t *health, bool closed) -+{ -+ container_health_check_lock(health); -+ health->monitor_exist = closed; -+ container_health_check_unlock(health); -+} -+ -+static bool get_monitor_exist_flag(health_check_manager_t *health) -+{ -+ bool ret; -+ -+ container_health_check_lock(health); -+ ret = health->monitor_exist; -+ container_health_check_unlock(health); -+ -+ return ret; -+} -+ -+static void close_health_check_monitor(container_t *cont) - { - if (cont == NULL || cont->health_check == NULL) { - return; - } -- set_monitor_stop_status(cont->health_check); -- set_health_status(cont->state, UNHEALTHY); --} - --static void open_health_check_monitor(health_check_manager_t *health) --{ -- set_monitor_interval_timeout_status(health); -+ set_monitor_stop_status(cont->health_check); -+ // ensure that the monitor process exits -+ while (get_monitor_exist_flag(cont->health_check)) { -+ util_usleep_nointerupt(500); -+ } - } - - // Called when the container is being stopped (whether because the health check is -@@ -160,6 +210,7 @@ void health_check_manager_free(health_check_manager_t *health_check) - if (health_check->init_mutex) { - pthread_mutex_destroy(&health_check->mutex); - } -+ - free(health_check); - } - -@@ -183,6 +234,8 @@ static health_check_manager_t *health_check_manager_new() - - health_check->monitor_status = MONITOR_IDLE; - -+ health_check->monitor_exist = false; -+ - return health_check; - cleanup: - health_check_manager_free(health_check); -@@ -320,6 +373,43 @@ out: - return ret; - } - -+static void *stop_container_on_unhealthy(void *arg) -+{ -+ int ret = 0; -+ char *container_id = NULL; -+ container_t *cont = NULL; -+ -+ if (arg == NULL) { -+ ERROR("Invalid input arguments"); -+ return NULL; -+ } -+ container_id = (char *)arg; -+ -+ ret = pthread_detach(pthread_self()); -+ if (ret != 0) { -+ CRIT("Set thread detach fail"); -+ } -+ -+ prctl(PR_SET_NAME, "ExitOnUnhealthy"); -+ -+ cont = containers_store_get(container_id); -+ if (cont == NULL) { -+ ERROR("Failed to get container info"); -+ goto out; -+ } -+ -+ // kill container when exit on unhealthy flag is set -+ ret = stop_container(cont, 3, true, false); -+ if (ret != 0) { -+ ERROR("Could not stop running container %s, cannot remove", cont->common_config->id); -+ } -+ -+out: -+ free(container_id); -+ container_unref(cont); -+ return NULL; -+} -+ - static int handle_increment_streak(container_t *cont, int retries) - { - int ret = 0; -@@ -328,18 +418,19 @@ static int handle_increment_streak(container_t *cont, int retries) - health = cont->state->state->health; - health->failing_streak++; - if (health->failing_streak >= retries) { -- set_health_status(cont->state, UNHEALTHY); -+ set_health_status(cont, UNHEALTHY); - if (cont->common_config->config->healthcheck->exit_on_unhealthy) { -- // kill container when exit on unhealthy flag is set -- ret = stop_container(cont, 3, true, false); -- if (ret != 0) { -- isulad_try_set_error_message("Could not stop running container %s, cannot remove", -- cont->common_config->id); -- ERROR("Could not stop running container %s, cannot remove", cont->common_config->id); -+ pthread_t stop_container_tid = { 0 }; -+ char *container_id = util_strdup_s(cont->common_config->id); -+ if (pthread_create(&stop_container_tid, NULL, stop_container_on_unhealthy, -+ (void *)container_id)) { -+ free(container_id); -+ ERROR("Failed to create thread to exec health check"); - ret = -1; - } - } - } -+ - return ret; - } - -@@ -442,7 +533,7 @@ static int handle_probe_result(const char *container_id, const defs_health_log_e - - if (result->exit_code == EXIT_STATUS_HEALTHY) { - health->failing_streak = 0; -- set_health_status(cont->state, HEALTHY); -+ set_health_status(cont, HEALTHY); - } else { - if (handle_unhealthy_case(cont, result, retries)) { - ERROR("failed to handle unhealthy case"); -@@ -457,10 +548,7 @@ static int handle_probe_result(const char *container_id, const defs_health_log_e - // note: event - EVENT("EVENT: {Object: %s, health_status: %s}", cont->common_config->id, current); - } -- if (container_state_to_disk(cont)) { -- ERROR("Failed to save container \"%s\" to disk", cont->common_config->id); -- ret = -1; -- } -+ - out: - free(old_state); - free(current); -@@ -499,10 +587,9 @@ static void health_check_exec_success_handle(const container_exec_response *cont - - // exec the healthcheck command in the container. - // Returns the exit code and probe output (if any) --void *health_check_run(void *arg) -+static void health_check_run(const char *container_id) - { - int ret = 0; -- char *container_id = NULL; - char **cmd_slice = NULL; - char output[REV_BUF_SIZE] = { 0 }; - char timebuffer[TIME_STR_SIZE] = { 0 }; -@@ -514,13 +601,6 @@ void *health_check_run(void *arg) - defs_health_log_element *result = NULL; - container_config *config = NULL; - -- if (arg == NULL) { -- ERROR("Invalid input arguments"); -- return NULL; -- } -- -- container_id = util_strdup_s((char *)arg); -- - cont = containers_store_get(container_id); - if (cont == NULL) { - ERROR("Failed to get container info"); -@@ -590,14 +670,10 @@ void *health_check_run(void *arg) - - out: - util_free_array(cmd_slice); -- free(container_id); -- container_id = NULL; - free_defs_health_log_element(result); - free_container_exec_request(container_req); - free_container_exec_response(container_res); - container_unref(cont); -- DAEMON_CLEAR_ERRMSG(); -- return NULL; - } - - // Get a suitable probe implementation for the container's healthcheck configuration. -@@ -623,41 +699,81 @@ static health_probe_t get_probe(const container_t *cont) - } - } - -+static bool valid_container_status_for_health_check(const char *container_id) -+{ -+ bool bret = true; -+ const char *id = NULL; -+ container_t *cont = NULL; -+ -+ cont = containers_store_get(container_id); -+ if (cont == NULL) { -+ ERROR("No such container:%s", container_id); -+ bret = false; -+ goto out; -+ } -+ -+ id = cont->common_config->id; -+ -+ if (!container_is_running(cont->state)) { -+ ERROR("Container %s is not running.", id); -+ bret = false; -+ goto out; -+ } -+ -+ if (container_is_paused(cont->state)) { -+ ERROR("Container %s is paused.", id); -+ bret = false; -+ goto out; -+ } -+ -+ if (container_is_restarting(cont->state)) { -+ ERROR("Container %s is restarting.", id); -+ bret = false; -+ goto out; -+ } -+ -+out: -+ container_unref(cont); -+ return bret; -+} -+ - static int do_monitor_interval(const char *container_id, health_check_manager_t *health_check, - types_timestamp_t *start_timestamp) - { - int ret = 0; -- pthread_t exec_tid = { 0 }; - -- if (pthread_create(&exec_tid, NULL, health_check_run, (void *)container_id)) { -- ERROR("Failed to create thread to exec health check"); -+ if (!valid_container_status_for_health_check(container_id)) { -+ ERROR("Invalid container status for health check"); - ret = -1; - goto out; - } -- if (pthread_join(exec_tid, NULL) != 0) { -- ERROR("Failed to run health check thread"); -+ -+ health_check_run(container_id); -+ -+ if (transfer_monitor_idle_status(health_check) != 0) { - ret = -1; - goto out; - } -- if (get_health_check_monitor_state(health_check) == MONITOR_STOP) { -- ret = 0; -- goto out; -- } -- set_monitor_idle_status(health_check); - if (util_get_now_time_stamp(start_timestamp) == false) { - ERROR("Failed to get time stamp"); - ret = -1; - goto out; - } -+ - out: - return ret; - } - --static int do_monitor_default(int64_t probe_interval, health_check_manager_t *health_check, -+static int do_monitor_default(const char *container_id, int64_t probe_interval, health_check_manager_t *health_check, - const types_timestamp_t *start_timestamp, types_timestamp_t *last_timestamp) - { - int64_t time_interval = 0; - -+ if (!valid_container_status_for_health_check(container_id)) { -+ ERROR("Invalid container status for health check"); -+ return -1; -+ } -+ - if (util_get_now_time_stamp(last_timestamp) == false) { - ERROR("Failed to get time stamp"); - return -1; -@@ -668,13 +784,14 @@ static int do_monitor_default(int64_t probe_interval, health_check_manager_t *he - return -1; - } - -- if (time_interval >= probe_interval) { -- set_monitor_interval_timeout_status(health_check); -+ if (time_interval >= probe_interval && transfer_monitor_interval_timeout_status(health_check) != 0) { -+ return -1; - } - util_usleep_nointerupt(500); - - return 0; - } -+ - // Run the container's monitoring thread until notified via "stop". - // There is never more than one monitor thread running per container at a time. - static void *health_check_monitor(void *arg) -@@ -689,14 +806,17 @@ static void *health_check_monitor(void *arg) - ERROR("Container id is empty"); - return NULL; - } -- container_id = util_strdup_s((char *)arg); -+ -+ container_id = (char *)arg; -+ -+ prctl(PR_SET_NAME, "HealthCheck"); - - cont = containers_store_get(container_id); - if (cont == NULL) { - ERROR("Failed to get container info"); - goto out; - } -- -+ set_monitor_exist_flag(cont->health_check, true); - if (util_get_now_time_stamp(&start_timestamp) == false) { - ERROR("Failed to monitor start time stamp"); - goto out; -@@ -704,7 +824,7 @@ static void *health_check_monitor(void *arg) - probe_interval = (cont->common_config->config->healthcheck->interval == 0) ? - DEFAULT_PROBE_INTERVAL : - cont->common_config->config->healthcheck->interval; -- set_monitor_idle_status(cont->health_check); -+ - while (true) { - switch (get_health_check_monitor_state(cont->health_check)) { - case MONITOR_STOP: -@@ -712,30 +832,35 @@ static void *health_check_monitor(void *arg) - goto out; - /* fall-through */ - case MONITOR_INTERVAL: -- if (do_monitor_interval(container_id, cont->health_check, &start_timestamp)) { -+ if (do_monitor_interval(container_id, cont->health_check, &start_timestamp) != 0) { - goto out; - } - break; - case MONITOR_IDLE: - /* fall-through */ - default: -- if (do_monitor_default(probe_interval, cont->health_check, &start_timestamp, &last_timestamp)) { -+ if (do_monitor_default(container_id, probe_interval, cont->health_check, -+ &start_timestamp, &last_timestamp) != 0) { - goto out; - } - break; - } - } -+ - out: - free(container_id); - container_id = NULL; -+ // unhealthy when the monitor has stopped for compatibility reasons -+ set_health_status(cont, UNHEALTHY); -+ // post semaphore, indicating that the minitor process has exited -+ set_monitor_exist_flag(cont->health_check, false); - container_unref(cont); - DAEMON_CLEAR_ERRMSG(); - return NULL; - } - - // Ensure the health-check monitor is running or not, depending on the current --// state of the container. --// Called from monitor.go, with c locked. -+// state of the container. Called from monitor, with c locked. - void container_update_health_monitor(const char *container_id) - { - bool want_running = false; -@@ -746,6 +871,7 @@ void container_update_health_monitor(const char *container_id) - if (container_id == NULL) { - return; - } -+ - cont = containers_store_get(container_id); - if (cont == NULL) { - ERROR("Failed to get container info"); -@@ -756,13 +882,18 @@ void container_update_health_monitor(const char *container_id) - if (health == NULL) { - goto out; - } -+ - probe = get_probe(cont); -- want_running = cont->state->state->running && !cont->state->state->paused && probe != HEALTH_NONE; - -+ want_running = container_is_running(cont->state) && !container_is_paused(cont->state) && probe != HEALTH_NONE; - if (want_running) { -- open_health_check_monitor(cont->health_check); - pthread_t monitor_tid = { 0 }; -- if (pthread_create(&monitor_tid, NULL, health_check_monitor, (void *)container_id)) { -+ char *cid = util_strdup_s(container_id); -+ // ensured that the health check monitor process is stopped -+ close_health_check_monitor(cont); -+ init_monitor_idle_status(cont->health_check); -+ if (pthread_create(&monitor_tid, NULL, health_check_monitor, (void *)cid)) { -+ free(cid); - ERROR("Failed to create thread to monitor health check..."); - goto out; - } -@@ -779,8 +910,7 @@ out: - } - - // Reset the health state for a newly-started, restarted or restored container. --// initHealthMonitor is called from monitor.go and we should never be running --// two instances at once. -+// initHealthMonitor is called from monitor and we should never be running two instances at once. - // Note: Called with container locked. - void container_init_health_monitor(const char *id) - { -@@ -809,14 +939,9 @@ void container_init_health_monitor(const char *id) - if (get_probe(cont) == HEALTH_NONE) { - goto out; - } -- // This is needed in case we're auto-restarting -- container_stop_health_checks(cont->common_config->id); -- if (cont->state == NULL || cont->state->state == NULL) { -- goto out; -- } - - if (cont->state->state->health != NULL) { -- set_health_status(cont->state, HEALTH_STARTING); -+ set_health_status(cont, HEALTH_STARTING); - cont->state->state->health->failing_streak = 0; - } else { - cont->state->state->health = util_common_calloc_s(sizeof(defs_health)); -@@ -824,12 +949,7 @@ void container_init_health_monitor(const char *id) - ERROR("out of memory"); - goto out; - } -- set_health_status(cont->state, HEALTH_STARTING); -- } -- -- if (container_state_to_disk(cont)) { -- ERROR("Failed to save container \"%s\" to disk", id); -- goto out; -+ set_health_status(cont, HEALTH_STARTING); - } - - container_update_health_monitor(id); -diff --git a/src/daemon/modules/service/service_container.c b/src/daemon/modules/service/service_container.c -index a4a2414c..e96a94d0 100644 ---- a/src/daemon/modules/service/service_container.c -+++ b/src/daemon/modules/service/service_container.c -@@ -1247,8 +1247,6 @@ static int kill_with_signal(container_t *cont, uint32_t signal) - goto out; - } - -- container_stop_health_checks(id); -- - ret = send_signal_to_process(cont->state->state->pid, cont->state->state->start_time, stop_signal, signal); - if (ret != 0) { - ERROR("Failed to send signal to container %s with signal %u", id, signal); -@@ -1353,6 +1351,7 @@ int stop_container(container_t *cont, int timeout, bool force, bool restart) - goto out; - } - } -+ - out: - if (restart) { - cont->hostconfig->auto_remove = cont->hostconfig->auto_remove_bak; -diff --git a/test/mocks/health_check_mock.cc b/test/mocks/health_check_mock.cc -index 879e4d9c..4347a04e 100644 ---- a/test/mocks/health_check_mock.cc -+++ b/test/mocks/health_check_mock.cc -@@ -31,3 +31,11 @@ void container_update_health_monitor(const char *container_id) - } - return; - } -+ -+void container_stop_health_checks(const char *container_id) -+{ -+ if (g_health_check_mock != nullptr) { -+ return g_health_check_mock->ContainerStopHealthCheck(container_id); -+ } -+ return; -+} -\ No newline at end of file -diff --git a/test/mocks/health_check_mock.h b/test/mocks/health_check_mock.h -index 7891f53c..ab8e20b0 100644 ---- a/test/mocks/health_check_mock.h -+++ b/test/mocks/health_check_mock.h -@@ -22,6 +22,7 @@ - class MockHealthCheck { - public: - MOCK_METHOD1(UpdateHealthMonitor, void(const char *container_id)); -+ MOCK_METHOD1(ContainerStopHealthCheck, void(const char *container_id)); - }; - - void MockHealthCheck_SetMock(MockHealthCheck* mock); -diff --git a/test/services/execution/execute/execution_extend/execution_extend_ut.cc b/test/services/execution/execute/execution_extend/execution_extend_ut.cc -index 2dc67814..03872340 100644 ---- a/test/services/execution/execute/execution_extend/execution_extend_ut.cc -+++ b/test/services/execution/execute/execution_extend/execution_extend_ut.cc -@@ -204,6 +204,11 @@ void invokeStateSetPaused(container_state_t *s) - return; - } - -+void invokeContainerStopHealthCheck(const char *container_id) -+{ -+ return; -+} -+ - TEST_F(ExecutionExtendUnitTest, test_container_extend_callback_init_pause) - { - service_container_callback_t cb; -@@ -220,6 +225,7 @@ TEST_F(ExecutionExtendUnitTest, test_container_extend_callback_init_pause) - EXPECT_CALL(m_containerState, IsRestarting(_)).WillRepeatedly(Invoke(invokeIsRestarting)); - EXPECT_CALL(m_containerUnix, ContainerToDisk(_)).WillRepeatedly(Invoke(invokeContainerToDisk)); - EXPECT_CALL(m_containerUnix, ContainerStateToDisk(_)).WillRepeatedly(Invoke(invokeContainerStateToDisk)); -+ EXPECT_CALL(m_healthCheck, ContainerStopHealthCheck(_)).WillRepeatedly(Invoke(invokeContainerStopHealthCheck)); - container_extend_callback_init(&cb); - ASSERT_EQ(cb.pause(request, &response), 0); - testing::Mock::VerifyAndClearExpectations(&m_runtime); --- -2.25.1 - diff --git a/0026-CI-supplementary-testcase-for-health-check-monitor.patch b/0026-CI-supplementary-testcase-for-health-check-monitor.patch deleted file mode 100644 index 683d20c..0000000 --- a/0026-CI-supplementary-testcase-for-health-check-monitor.patch +++ /dev/null @@ -1,63 +0,0 @@ -From 39e9ae73804880f523d83db6c8ad5d25d8bd79ed Mon Sep 17 00:00:00 2001 -From: wujing -Date: Mon, 1 Feb 2021 16:58:35 +0800 -Subject: [PATCH 26/53] CI: supplementary testcase for health check monitor - -Signed-off-by: wujing ---- - CI/test_cases/container_cases/health_check.sh | 33 +++++++++++++++++++ - 1 file changed, 33 insertions(+) - -diff --git a/CI/test_cases/container_cases/health_check.sh b/CI/test_cases/container_cases/health_check.sh -index eeb2749d..cc934fd8 100755 ---- a/CI/test_cases/container_cases/health_check.sh -+++ b/CI/test_cases/container_cases/health_check.sh -@@ -160,6 +160,37 @@ function test_health_check_timeout() - return ${ret} - } - -+function test_health_check_monitor() -+{ -+ local ret=0 -+ local image="busybox" -+ local test="health check monitor test => (${FUNCNAME[@]})" -+ -+ msg_info "${test} starting..." -+ -+ isula images | grep ${image} -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - missing list image: ${image}" && ((ret++)) -+ -+ isula rm -f $(isula ps -qa) -+ -+ container_name="health_check_monitor" -+ isula run -itd -n ${container_name} --health-cmd="sleep 3" --health-interval 3s busybox -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to run container with image: ${image}" && ((ret++)) -+ -+ isula stop -t 0 ${container_name} && isula start ${container_name} && \ -+ isula stop -t 0 ${container_name} && isula start ${container_name} -+ -+ health_check_monitor_count=$(ps -T -p $(cat /var/run/isulad.pid) | grep HealthCheck | wc -l) -+ [[ ${health_check_monitor_count} -ne 1 ]] && \ -+ msg_err "${FUNCNAME[0]}:${LINENO} - multiple health check monitor thread container: ${container_name}" && ((ret++)) -+ -+ isula rm -f ${container_name} -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to remove container: ${container_name}" && ((ret++)) -+ -+ msg_info "${test} finished with return ${ret}..." -+ return ${ret} -+} -+ - declare -i ans=0 - - test_health_check_paraments || ((ans++)) -@@ -168,5 +199,7 @@ test_health_check_normally || ((ans++)) - - test_health_check_timeout || ((ans++)) - -+test_health_check_monitor || ((ans++)) -+ - show_result ${ans} "${curr_path}/${0}" - --- -2.25.1 - diff --git a/0027-add-container-lock-when-clean-container-resource.patch b/0027-add-container-lock-when-clean-container-resource.patch deleted file mode 100644 index 772899b..0000000 --- a/0027-add-container-lock-when-clean-container-resource.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 002a546ec0ada609aebeccfc935d773968f89312 Mon Sep 17 00:00:00 2001 -From: zhangxiaoyu -Date: Thu, 4 Feb 2021 10:43:59 +0800 -Subject: [PATCH 27/53] add container lock when clean container resource - -Signed-off-by: zhangxiaoyu ---- - src/daemon/modules/service/service_container.c | 7 ++++++- - 1 file changed, 6 insertions(+), 1 deletion(-) - -diff --git a/src/daemon/modules/service/service_container.c b/src/daemon/modules/service/service_container.c -index c4b9dbd6..6551bfbf 100644 ---- a/src/daemon/modules/service/service_container.c -+++ b/src/daemon/modules/service/service_container.c -@@ -968,12 +968,17 @@ int clean_container_resource(const char *id, const char *runtime, pid_t pid) - goto out; - } - -+ container_lock(cont); - ret = do_clean_container(cont, pid); - if (ret != 0) { - ERROR("Runtime clean container resource failed"); - ret = -1; -- goto out; -+ goto unlock; - } -+ -+unlock: -+ container_unlock(cont); -+ - out: - container_unref(cont); - return ret; --- -2.25.1 - diff --git a/0028-sleep-some-time-before-calculate-to-make-sure-fd-clo.patch b/0028-sleep-some-time-before-calculate-to-make-sure-fd-clo.patch deleted file mode 100644 index 56d2f08..0000000 --- a/0028-sleep-some-time-before-calculate-to-make-sure-fd-clo.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 3b8075caac328d88018d4607ee8d18138440e8b8 Mon Sep 17 00:00:00 2001 -From: WangFengTu -Date: Thu, 4 Feb 2021 15:43:33 +0800 -Subject: [PATCH 28/53] sleep some time before calculate to make sure fd closed - -Signed-off-by: WangFengTu ---- - CI/test_cases/container_cases/cp.sh | 5 +++++ - 1 file changed, 5 insertions(+) - -diff --git a/CI/test_cases/container_cases/cp.sh b/CI/test_cases/container_cases/cp.sh -index 67a36909..09b6ddff 100644 ---- a/CI/test_cases/container_cases/cp.sh -+++ b/CI/test_cases/container_cases/cp.sh -@@ -329,6 +329,9 @@ function cp_test_t() - msg_info "${test} starting..." - - local isulad_pid=$(cat /var/run/isulad.pid) -+ -+ # wait some time to make sure fd closed -+ sleep 3 - local fd_num1=$(ls -l /proc/$isulad_pid/fd | wc -l) - [[ $fd_num1 -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - can not get fd number" && ((ret++)) - -@@ -362,6 +365,8 @@ function cp_test_t() - - rm -rf $cpfiles - -+ # wait some time to make sure fd closed -+ sleep 3 - local fd_num2=$(ls -l /proc/$isulad_pid/fd | wc -l) - [[ $fd_num2 -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - can not get fd number" && ((ret++)) - --- -2.25.1 - diff --git a/0029-stats-fix-wrong-memory-usage-info-in-stats.patch b/0029-stats-fix-wrong-memory-usage-info-in-stats.patch deleted file mode 100644 index 0c3aa76..0000000 --- a/0029-stats-fix-wrong-memory-usage-info-in-stats.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 3660db243160d45535c1d020844b694e495b4cd7 Mon Sep 17 00:00:00 2001 -From: Li Feng -Date: Mon, 8 Feb 2021 11:03:58 +0800 -Subject: [PATCH 29/53] stats: fix wrong memory usage info in stats - -Signed-off-by: Li Feng ---- - src/cmd/isula/extend/stats.c | 7 ++++--- - 1 file changed, 4 insertions(+), 3 deletions(-) - -diff --git a/src/cmd/isula/extend/stats.c b/src/cmd/isula/extend/stats.c -index 03544325..724cf381 100644 ---- a/src/cmd/isula/extend/stats.c -+++ b/src/cmd/isula/extend/stats.c -@@ -101,10 +101,12 @@ static void stats_print(const struct isula_container_info *stats) - int len; - double cpu_percent = 0.0; - char *short_id = NULL; -+ // workingset = usage - total_inactive_file -+ uint64_t workingset = memory_get_working_set(stats); - - isula_size_humanize(stats->blkio_read, iosb_read_str, sizeof(iosb_read_str)); - isula_size_humanize(stats->blkio_write, iosb_write_str, sizeof(iosb_write_str)); -- isula_size_humanize(stats->mem_used, mem_used_str, sizeof(mem_used_str)); -+ isula_size_humanize(workingset, mem_used_str, sizeof(mem_used_str)); - isula_size_humanize(stats->mem_limit, mem_limit_str, sizeof(mem_limit_str)); - - len = snprintf(iosb_str, sizeof(iosb_str), "%s / %s", iosb_read_str, iosb_write_str); -@@ -142,8 +144,7 @@ static void stats_print(const struct isula_container_info *stats) - if (strlen(short_id) > SHORTIDLEN) { - short_id[SHORTIDLEN] = '\0'; - } -- // workingset = usage - total_inactive_file -- uint64_t workingset = memory_get_working_set(stats); -+ - printf("%-16s %-10.2f %-26s %-10.2f %-26s %-10llu", short_id, cpu_percent, mem_str, - stats->mem_limit ? ((double)workingset / stats->mem_limit) * PERCENT : 0.00, iosb_str, - (unsigned long long)stats->pids_current); --- -2.25.1 - diff --git a/0030-save-health-check-log-to-disk-before-unhealthy.patch b/0030-save-health-check-log-to-disk-before-unhealthy.patch deleted file mode 100644 index ad3a819..0000000 --- a/0030-save-health-check-log-to-disk-before-unhealthy.patch +++ /dev/null @@ -1,36 +0,0 @@ -From cb82131f8b4b9a1d517b9e4da0d707008567a89e Mon Sep 17 00:00:00 2001 -From: wujing -Date: Mon, 8 Feb 2021 11:23:24 +0800 -Subject: [PATCH 30/53] save health check log to disk before unhealthy - -Signed-off-by: wujing ---- - src/daemon/modules/container/health_check/health_check.c | 5 +++++ - 1 file changed, 5 insertions(+) - -diff --git a/src/daemon/modules/container/health_check/health_check.c b/src/daemon/modules/container/health_check/health_check.c -index c6ccbbf2..a01679db 100644 ---- a/src/daemon/modules/container/health_check/health_check.c -+++ b/src/daemon/modules/container/health_check/health_check.c -@@ -429,6 +429,10 @@ static int handle_increment_streak(container_t *cont, int retries) - ret = -1; - } - } -+ } else { -+ if (container_state_to_disk(cont)) { -+ WARN("Failed to save container \"%s\" to disk", cont->common_config->id); -+ } - } - - return ret; -@@ -542,6 +546,7 @@ static int handle_probe_result(const char *container_id, const defs_health_log_e - } - // else we're starting or healthy. Stay in that state. - } -+ - // note: replicate Health status changes - current = get_health_status(cont->state); - if (strcmp(old_state, current) != 0) { --- -2.25.1 - diff --git a/0031-unpack-try-to-remove-and-replace-dst_path-while-unpa.patch b/0031-unpack-try-to-remove-and-replace-dst_path-while-unpa.patch deleted file mode 100644 index 88943f5..0000000 --- a/0031-unpack-try-to-remove-and-replace-dst_path-while-unpa.patch +++ /dev/null @@ -1,179 +0,0 @@ -From a3ee97e18060785b22529dca0ea771e7f3e94293 Mon Sep 17 00:00:00 2001 -From: Li Feng -Date: Mon, 8 Feb 2021 15:56:36 +0800 -Subject: [PATCH 31/53] unpack: try to remove and replace dst_path while unpack - -if dst path exits, we just want to remove and replace it. -exception: when the exited dstpath is directory and the file from the layer is also a directory. - -Signed-off-by: Li Feng ---- - src/utils/tar/util_archive.c | 61 +++++++++++++++++++++++++----------- - 1 file changed, 42 insertions(+), 19 deletions(-) - -diff --git a/src/utils/tar/util_archive.c b/src/utils/tar/util_archive.c -index 1b9553c9..a7522036 100644 ---- a/src/utils/tar/util_archive.c -+++ b/src/utils/tar/util_archive.c -@@ -394,6 +394,29 @@ static int rebase_hardlink(struct archive_entry *entry, const char *src_base, co - return 0; - } - -+// if dst path exits, we just want to remove and replace it. -+// exception: when the exited dstpath is directory and the file from the layer is also a directory. -+static void try_to_replace_exited_dst(const char *dst_path, struct archive_entry *entry) -+{ -+ struct stat s; -+ int nret; -+ -+ nret = lstat(dst_path, &s); -+ if (nret < 0) { -+ return; -+ } -+ -+ if (S_ISDIR(s.st_mode) && archive_entry_filetype(entry) == AE_IFDIR) { -+ return; -+ } -+ -+ if (util_recursive_remove_path(dst_path) != 0) { -+ ERROR("Failed to remove path %s while unpack", dst_path); -+ } -+ -+ return; -+} -+ - int archive_unpack_handler(const struct io_read_wrapper *content, const struct archive_options *options) - { - int ret = 0; -@@ -499,6 +522,8 @@ int archive_unpack_handler(const struct io_read_wrapper *content, const struct a - continue; - } - -+ try_to_replace_exited_dst(dst_path, entry); -+ - ret = archive_write_header(ext, entry); - if (ret != ARCHIVE_OK) { - ERROR("Fail to handle tar header: %s", archive_error_string(ext)); -@@ -874,8 +899,8 @@ static ssize_t stream_write_data(struct archive *a, void *client_data, const voi - return size; - } - --static int tar_all(const struct io_write_wrapper *writer, const char *tar_dir, -- const char *src_base, const char *dst_base) -+static int tar_all(const struct io_write_wrapper *writer, const char *tar_dir, const char *src_base, -+ const char *dst_base) - { - struct archive *r = NULL; - struct archive *w = NULL; -@@ -906,7 +931,7 @@ static int tar_all(const struct io_write_wrapper *writer, const char *tar_dir, - } - archive_write_set_format_pax(w); - archive_write_set_options(w, "xattrheader=SCHILY"); -- ret = archive_write_open(w, (void*)writer, NULL, stream_write_data, NULL); -+ ret = archive_write_open(w, (void *)writer, NULL, stream_write_data, NULL); - if (ret != ARCHIVE_OK) { - ERROR("open archive write failed: %s", archive_error_string(w)); - fprintf(stderr, "open archive write failed: %s\n", archive_error_string(w)); -@@ -924,7 +949,7 @@ out: - - static ssize_t fd_write(void *context, const void *data, size_t len) - { -- return util_write_nointr(*(int*)context, data, len); -+ return util_write_nointr(*(int *)context, data, len); - } - - int archive_chroot_tar(char *path, char *file, char **errmsg) -@@ -989,7 +1014,7 @@ int archive_chroot_tar(char *path, char *file, char **errmsg) - goto child_out; - } - -- pipe_context.context = (void*)&fd; -+ pipe_context.context = (void *)&fd; - pipe_context.write_func = fd_write; - ret = tar_all(&pipe_context, ".", ".", NULL); - -@@ -1024,7 +1049,7 @@ cleanup: - - static ssize_t pipe_read(void *context, void *buf, size_t len) - { -- return util_read_nointr(*(int*)context, buf, len); -+ return util_read_nointr(*(int *)context, buf, len); - } - - static ssize_t archive_context_write(const void *context, const void *buf, size_t len) -@@ -1041,7 +1066,7 @@ static ssize_t archive_context_write(const void *context, const void *buf, size_ - - static ssize_t pipe_write(void *context, const void *data, size_t len) - { -- return util_write_nointr(*(int*)context, data, len); -+ return util_write_nointr(*(int *)context, data, len); - } - - static ssize_t archive_context_read(void *context, void *buf, size_t len) -@@ -1128,9 +1153,8 @@ static int archive_context_close(void *context, char **err) - return ret; - } - --int archive_chroot_untar_stream(const struct io_read_wrapper *context, const char *chroot_dir, -- const char *untar_dir, const char *src_base, const char *dst_base, -- char **errmsg) -+int archive_chroot_untar_stream(const struct io_read_wrapper *context, const char *chroot_dir, const char *untar_dir, -+ const char *src_base, const char *dst_base, char **errmsg) - { - struct io_read_wrapper pipe_context = { 0 }; - int pipe_stream[2] = { -1, -1 }; -@@ -1143,10 +1167,9 @@ int archive_chroot_untar_stream(const struct io_read_wrapper *context, const cha - char *buf = NULL; - size_t buf_len = ARCHIVE_BLOCK_SIZE; - ssize_t read_len; -- struct archive_options options = { -- .whiteout_format = NONE_WHITEOUT_FORMATE, -- .src_base = src_base, -- .dst_base = dst_base -+ struct archive_options options = { .whiteout_format = NONE_WHITEOUT_FORMATE, -+ .src_base = src_base, -+ .dst_base = dst_base - }; - - buf = util_common_calloc_s(buf_len); -@@ -1201,7 +1224,7 @@ int archive_chroot_untar_stream(const struct io_read_wrapper *context, const cha - goto child_out; - } - -- pipe_context.context = (void*)&pipe_stream[0]; -+ pipe_context.context = (void *)&pipe_stream[0]; - pipe_context.read = pipe_read; - ret = archive_unpack_handler(&pipe_context, &options); - -@@ -1252,8 +1275,8 @@ cleanup: - return ret; - } - --int archive_chroot_tar_stream(const char *chroot_dir, const char *tar_path, const char *src_base, -- const char *dst_base, struct io_read_wrapper *reader) -+int archive_chroot_tar_stream(const char *chroot_dir, const char *tar_path, const char *src_base, const char *dst_base, -+ struct io_read_wrapper *reader) - { - struct io_write_wrapper pipe_context = { 0 }; - int keepfds[] = { -1, -1, -1 }; -@@ -1273,7 +1296,7 @@ int archive_chroot_tar_stream(const char *chroot_dir, const char *tar_path, cons - } - - pid = fork(); -- if (pid == (pid_t) - 1) { -+ if (pid == (pid_t) -1) { - ERROR("Failed to fork: %s", strerror(errno)); - goto free_out; - } -@@ -1320,7 +1343,7 @@ int archive_chroot_tar_stream(const char *chroot_dir, const char *tar_path, cons - goto child_out; - } - -- pipe_context.context = (void*)&pipe_stream[1]; -+ pipe_context.context = (void *)&pipe_stream[1]; - pipe_context.write_func = pipe_write; - ret = tar_all(&pipe_context, tar_base_name, src_base, dst_base); - --- -2.25.1 - diff --git a/0032-fd-leak-check-in-cp.sh-should-not-include-pull-fd-ch.patch b/0032-fd-leak-check-in-cp.sh-should-not-include-pull-fd-ch.patch deleted file mode 100644 index 8f9a0ea..0000000 --- a/0032-fd-leak-check-in-cp.sh-should-not-include-pull-fd-ch.patch +++ /dev/null @@ -1,93 +0,0 @@ -From 513530a98d627ae84b1415f93af5bc298b39ba9d Mon Sep 17 00:00:00 2001 -From: WangFengTu -Date: Mon, 8 Feb 2021 16:38:22 +0800 -Subject: [PATCH 32/53] fd leak check in cp.sh should not include pull fd check - -pull may increase fd, we can check pull fd leak in registry.sh - -Signed-off-by: WangFengTu ---- - CI/test_cases/container_cases/cp.sh | 14 ++++++++------ - CI/test_cases/image_cases/registry.sh | 21 +++++++++++++++++++++ - 2 files changed, 29 insertions(+), 6 deletions(-) - -diff --git a/CI/test_cases/container_cases/cp.sh b/CI/test_cases/container_cases/cp.sh -index 09b6ddff..fef637a5 100644 ---- a/CI/test_cases/container_cases/cp.sh -+++ b/CI/test_cases/container_cases/cp.sh -@@ -328,18 +328,19 @@ function cp_test_t() - - msg_info "${test} starting..." - -+ isula inspect ${image} -+ if [ x"$?" != x"0" ];then -+ isula pull ${image} -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to pull image: ${image}" && return ${FAILURE} -+ fi -+ - local isulad_pid=$(cat /var/run/isulad.pid) - - # wait some time to make sure fd closed - sleep 3 - local fd_num1=$(ls -l /proc/$isulad_pid/fd | wc -l) - [[ $fd_num1 -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - can not get fd number" && ((ret++)) -- -- isula inspect ${image} -- if [ x"$?" != x"0" ];then -- isula pull ${image} -- [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to pull image: ${image}" && return ${FAILURE} -- fi -+ ls -l /proc/$isulad_pid/fd - - isula images | grep busybox - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - missing list image: ${image}" && ((ret++)) -@@ -369,6 +370,7 @@ function cp_test_t() - sleep 3 - local fd_num2=$(ls -l /proc/$isulad_pid/fd | wc -l) - [[ $fd_num2 -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - can not get fd number" && ((ret++)) -+ ls -l /proc/$isulad_pid/fd - - # make sure fd not increase after test - [[ $fd_num1 -ne $fd_num2 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - fd number not right" && ((ret++)) -diff --git a/CI/test_cases/image_cases/registry.sh b/CI/test_cases/image_cases/registry.sh -index 042b1f4a..4e6adc28 100755 ---- a/CI/test_cases/image_cases/registry.sh -+++ b/CI/test_cases/image_cases/registry.sh -@@ -26,6 +26,18 @@ source ../helpers.sh - function isula_pull() - { - isula rm -f `isula ps -a -q` -+ -+ isula pull busybox -+ fn_check_eq "$?" "0" "isula pull busybox" -+ -+ local isulad_pid=$(cat /var/run/isulad.pid) -+ -+ # wait some time to make sure fd closed -+ sleep 3 -+ local fd_num1=$(ls -l /proc/$isulad_pid/fd | wc -l) -+ [[ $fd_num1 -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - can not get fd number" && ((ret++)) -+ ls -l /proc/$isulad_pid/fd -+ - isula rmi busybox - - for i in `seq 1 10` -@@ -36,6 +48,15 @@ function isula_pull() - fn_check_eq "$?" "0" "isula pull busybox" - wait - -+ # wait some time to make sure fd closed -+ sleep 3 -+ local fd_num2=$(ls -l /proc/$isulad_pid/fd | wc -l) -+ [[ $fd_num2 -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - can not get fd number" && ((ret++)) -+ ls -l /proc/$isulad_pid/fd -+ -+ # make sure fd not increase after remove and pull busybox -+ [[ $fd_num1 -ne $fd_num2 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - fd number not right" && ((ret++)) -+ - isula inspect busybox - fn_check_eq "$?" "0" "isula inspect busybox" - --- -2.25.1 - diff --git a/0033-devmapper-modify-log-msg.patch b/0033-devmapper-modify-log-msg.patch deleted file mode 100644 index ee626ff..0000000 --- a/0033-devmapper-modify-log-msg.patch +++ /dev/null @@ -1,116 +0,0 @@ -From 085f9c923fc7e833bcbf93ece33dda1c0e7e0a66 Mon Sep 17 00:00:00 2001 -From: gaohuatao -Date: Tue, 9 Feb 2021 14:34:54 +0800 -Subject: [PATCH 33/53] devmapper: modify log msg - -Signed-off-by: gaohuatao ---- - .../graphdriver/devmapper/deviceset.c | 17 ++++++++--------- - .../graphdriver/devmapper/metadata_store.c | 2 -- - 2 files changed, 8 insertions(+), 11 deletions(-) - -diff --git a/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/deviceset.c b/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/deviceset.c -index 67b1ba9c..2bd3b9c8 100644 ---- a/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/deviceset.c -+++ b/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/deviceset.c -@@ -176,7 +176,7 @@ out: - return 0; - } - --static char *metadata_dir(struct device_set *devset) -+static char *metadata_dir(const struct device_set *devset) - { - return util_path_join(devset->root, "metadata"); - } -@@ -411,7 +411,7 @@ out: - return exist; - } - --static image_devmapper_device_info *load_metadata(struct device_set *devset, const char *hash) -+static image_devmapper_device_info *load_metadata(const struct device_set *devset, const char *hash) - { - image_devmapper_device_info *info = NULL; - char metadata_file[PATH_MAX] = { 0 }; -@@ -420,7 +420,6 @@ static image_devmapper_device_info *load_metadata(struct device_set *devset, con - parser_error err = NULL; - - if (hash == NULL) { -- ERROR("Invalid input param"); - return NULL; - } - -@@ -432,13 +431,13 @@ static image_devmapper_device_info *load_metadata(struct device_set *devset, con - - nret = snprintf(metadata_file, sizeof(metadata_file), "%s/%s", metadata_path, util_valid_str(hash) ? hash : "base"); - if (nret < 0 || (size_t)nret >= sizeof(metadata_file)) { -- ERROR("Get metadata file with hash:%s path failed", hash); -+ ERROR("Failed to snprintf metadata file path with hash:%s, path is too long", hash); - goto out; - } - - info = image_devmapper_device_info_parse_file(metadata_file, NULL, &err); - if (info == NULL) { -- ERROR("load metadata file %s failed %s", metadata_file, err != NULL ? err : ""); -+ SYSERROR("Load metadata file:%s failed:%s", metadata_file, err); - goto out; - } - -@@ -448,7 +447,7 @@ static image_devmapper_device_info *load_metadata(struct device_set *devset, con - } - - if (info->device_id > MAX_DEVICE_ID) { -- ERROR("devmapper: Ignoring Invalid DeviceId=%d", info->device_id); -+ ERROR("devmapper: device id:%d out of limits, to be ignored", info->device_id); - free_image_devmapper_device_info(info); - info = NULL; - goto out; -@@ -878,7 +877,7 @@ static int load_transaction_metadata(struct device_set *devset) - - trans = image_devmapper_transaction_parse_file(fname, NULL, &err); - if (trans == NULL) { -- ERROR("devmapper: load transaction metadata file error %s", err); -+ SYSERROR("Load transaction metadata file:%s failed:%s", fname, err); - ret = -1; - goto out; - } -@@ -1061,7 +1060,7 @@ static int load_deviceset_metadata(struct device_set *devset) - - deviceset_meta = image_devmapper_deviceset_metadata_parse_file(meta_file, NULL, &err); - if (deviceset_meta == NULL) { -- ERROR("devmapper: load deviceset metadata file error %s", err); -+ SYSERROR("Load deviceset metadata file:%s failed:%s", meta_file, err); - ret = -1; - goto out; - } -@@ -2781,7 +2780,7 @@ int add_device(const char *hash, const char *base_hash, struct device_set *devse - - base_device_info = lookup_device(devset, util_valid_str(base_hash) ? base_hash : "base"); - if (base_device_info == NULL) { -- ERROR("Lookup device %s failed", util_valid_str(base_hash) ? base_hash : "base"); -+ ERROR("Lookup device %s failed, not found", util_valid_str(base_hash) ? base_hash : "base"); - ret = -1; - goto free_out; - } -diff --git a/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/metadata_store.c b/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/metadata_store.c -index 01858748..c8d10b7a 100644 ---- a/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/metadata_store.c -+++ b/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/metadata_store.c -@@ -34,7 +34,6 @@ void devmapper_device_info_ref_inc(devmapper_device_info_t *device_info) - static void free_devmapper_device_info_t(devmapper_device_info_t *ptr) - { - if (ptr == NULL) { -- ERROR("invalid argument"); - return; - } - -@@ -49,7 +48,6 @@ void devmapper_device_info_ref_dec(devmapper_device_info_t *device_info) - bool is_zero = false; - - if (device_info == NULL) { -- ERROR("invalid argument"); - return; - } - --- -2.25.1 - diff --git a/0034-name_id_index-fix-restore-fail-to-remove-name-index.patch b/0034-name_id_index-fix-restore-fail-to-remove-name-index.patch deleted file mode 100644 index 1ee2073..0000000 --- a/0034-name_id_index-fix-restore-fail-to-remove-name-index.patch +++ /dev/null @@ -1,111 +0,0 @@ -From a7f40f1e13f08f03ca369dc908a399dfc3f7fe17 Mon Sep 17 00:00:00 2001 -From: Li Feng -Date: Fri, 19 Feb 2021 19:06:43 +0800 -Subject: [PATCH 34/53] name_id_index: fix restore fail to remove name index - -Signed-off-by: Li Feng ---- - src/daemon/executor/container_cb/execution_create.c | 10 ++++++++-- - src/daemon/modules/container/containers_store.c | 12 ++++++++++-- - src/daemon/modules/container/restore/restore.c | 4 ++-- - 3 files changed, 20 insertions(+), 6 deletions(-) - -diff --git a/src/daemon/executor/container_cb/execution_create.c b/src/daemon/executor/container_cb/execution_create.c -index 7ad55fa1..acad7fe3 100644 ---- a/src/daemon/executor/container_cb/execution_create.c -+++ b/src/daemon/executor/container_cb/execution_create.c -@@ -440,6 +440,8 @@ static char *try_generate_id() - - value = container_name_index_get(id); - if (value != NULL) { -+ free(value); -+ value = NULL; - continue; - } else { - goto out; -@@ -631,10 +633,14 @@ static int maintain_container_id(const container_create_request *request, char * - EVENT("Event: {Object: %s, Type: Creating %s}", id, name); - - if (!container_name_index_add(name, id)) { -- ERROR("Name %s is in use", name); -+ char *used_id = NULL; -+ used_id = container_name_index_get(name); -+ ERROR("Name %s is in use by container %s", name, used_id); - isulad_set_error_message("Conflict. The name \"%s\" is already in use by container %s. " - "You have to remove (or rename) that container to be able to reuse that name.", -- name, name); -+ name, used_id); -+ free(used_id); -+ used_id = NULL; - ret = -1; - goto out; - } -diff --git a/src/daemon/modules/container/containers_store.c b/src/daemon/modules/container/containers_store.c -index bbfbda3a..42972392 100644 ---- a/src/daemon/modules/container/containers_store.c -+++ b/src/daemon/modules/container/containers_store.c -@@ -128,6 +128,7 @@ static container_t *containers_store_get_by_id(const char *id) - static container_t *containers_store_get_by_name(const char *name) - { - char *id = NULL; -+ container_t *cont = NULL; - - if (name == NULL) { - ERROR("No container name supplied"); -@@ -140,7 +141,10 @@ static container_t *containers_store_get_by_name(const char *name) - return NULL; - } - -- return containers_store_get_by_id(id); -+ cont = containers_store_get_by_id(id); -+ -+ free(id); -+ return cont; - } - - /* containers store get container by prefix */ -@@ -443,6 +447,7 @@ unlock_out: - char *container_name_index_get(const char *name) - { - char *id = NULL; -+ char *result = NULL; - - if (name == NULL) { - return id; -@@ -451,11 +456,14 @@ char *container_name_index_get(const char *name) - ERROR("lock name index failed"); - return id; - } -+ - id = map_search(g_indexs->map, (void *)name); -+ result = util_strdup_s(id); -+ - if (pthread_rwlock_unlock(&g_indexs->rwlock) != 0) { - ERROR("unlock name index failed"); - } -- return id; -+ return result; - } - - /* name index remove */ -diff --git a/src/daemon/modules/container/restore/restore.c b/src/daemon/modules/container/restore/restore.c -index 13cdcd24..a7ee11a2 100644 ---- a/src/daemon/modules/container/restore/restore.c -+++ b/src/daemon/modules/container/restore/restore.c -@@ -455,11 +455,11 @@ error_load: - if (remove_invalid_container(cont, runtime, rootpath, statepath, subdir[i])) { - ERROR("Failed to delete subdir:%s", subdir[i]); - } -- container_unref(cont); - - if (index_flag) { -- container_name_index_remove(subdir[i]); -+ container_name_index_remove(cont->common_config->name); - } -+ container_unref(cont); - continue; - } - } --- -2.25.1 - diff --git a/0035-thread-function-calls-DAEMON_CLEAR_ERRORMSG-to-preve.patch b/0035-thread-function-calls-DAEMON_CLEAR_ERRORMSG-to-preve.patch deleted file mode 100644 index 8db57eb..0000000 --- a/0035-thread-function-calls-DAEMON_CLEAR_ERRORMSG-to-preve.patch +++ /dev/null @@ -1,26 +0,0 @@ -From 2c08c9e9ce52afbe46753f44daec70270667f760 Mon Sep 17 00:00:00 2001 -From: wujing -Date: Sat, 20 Feb 2021 11:07:59 +0800 -Subject: [PATCH 35/53] thread function calls DAEMON_CLEAR_ERRORMSG to prevent - memory leak - -Signed-off-by: wujing ---- - src/daemon/modules/container/health_check/health_check.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/src/daemon/modules/container/health_check/health_check.c b/src/daemon/modules/container/health_check/health_check.c -index a01679db..dc00ae33 100644 ---- a/src/daemon/modules/container/health_check/health_check.c -+++ b/src/daemon/modules/container/health_check/health_check.c -@@ -407,6 +407,7 @@ static void *stop_container_on_unhealthy(void *arg) - out: - free(container_id); - container_unref(cont); -+ DAEMON_CLEAR_ERRMSG(); - return NULL; - } - --- -2.25.1 - diff --git a/0036-modify-resume-task-name.patch b/0036-modify-resume-task-name.patch deleted file mode 100644 index f3eeeb1..0000000 --- a/0036-modify-resume-task-name.patch +++ /dev/null @@ -1,359 +0,0 @@ -From 4726f2f980f42963a753350aa5306cbe6a4cc668 Mon Sep 17 00:00:00 2001 -From: gaohuatao -Date: Sat, 20 Feb 2021 09:44:19 +0800 -Subject: [PATCH 36/53] modify resume task name - -Signed-off-by: gaohuatao ---- - .../graphdriver/devmapper/deviceset.c | 68 +++++++++++++------ - .../graphdriver/devmapper/wrapper_devmapper.c | 57 +++++++++------- - .../graphdriver/devmapper/wrapper_devmapper.h | 2 +- - 3 files changed, 81 insertions(+), 46 deletions(-) - -diff --git a/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/deviceset.c b/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/deviceset.c -index 2bd3b9c8..0b0394c5 100644 ---- a/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/deviceset.c -+++ b/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/deviceset.c -@@ -125,7 +125,8 @@ static int devmapper_parse_options(struct device_set *devset, const char **optio - devset->min_free_space_percent = (uint32_t)converted; - } else if (strcasecmp(dup, "dm.basesize") == 0) { - int64_t converted = 0; -- if (util_parse_byte_size_string(val, &converted) != 0) { -+ ret = util_parse_byte_size_string(val, &converted); -+ if (ret != 0) { - ERROR("Invalid size: '%s': %s", val, strerror(-ret)); - isulad_set_error_message("Invalid size: '%s': %s", val, strerror(-ret)); - ret = -1; -@@ -435,6 +436,11 @@ static image_devmapper_device_info *load_metadata(const struct device_set *devse - goto out; - } - -+ if (!util_file_exists(metadata_file)) { -+ ERROR("No such file:%s, need not to load", metadata_file); -+ goto out; -+ } -+ - info = image_devmapper_device_info_parse_file(metadata_file, NULL, &err); - if (info == NULL) { - SYSERROR("Load metadata file:%s failed:%s", metadata_file, err); -@@ -594,6 +600,7 @@ static uint64_t get_base_device_size(struct device_set *devset) - - device_info = lookup_device(devset, "base"); - if (device_info == NULL) { -+ ERROR("No such device:\"base\""); - return 0; - } - -@@ -1688,10 +1695,10 @@ out: - (void)deactivate_device(devset, base_info); - } - -- if (resume_dev && dev_resume_device(dm_name) != 0) { -- ERROR("devmapper: resume dm with name:%s failed", dm_name); -- ret = -1; -+ if (resume_dev) { -+ dev_resume_device(dm_name); - } -+ - free(dm_name); - return ret; - } -@@ -2558,7 +2565,8 @@ static int determine_driver_capabilities(const char *version, struct device_set - goto out; - } - -- if (util_parse_byte_size_string(tmp_str[0], &major) != 0) { -+ ret = util_parse_byte_size_string(tmp_str[0], &major); -+ if (ret != 0) { - ERROR("devmapper: invalid size: '%s': %s", tmp_str[0], strerror(-ret)); - ret = -1; - goto out; -@@ -2577,7 +2585,8 @@ static int determine_driver_capabilities(const char *version, struct device_set - goto out; - } - -- if (util_parse_byte_size_string(tmp_str[1], &minor) != 0) { -+ ret = util_parse_byte_size_string(tmp_str[1], &minor); -+ if (ret != 0) { - ERROR("devmapper: invalid size: '%s': %s", tmp_str[1], strerror(-ret)); - ret = -1; - goto out; -@@ -2742,7 +2751,8 @@ static int parse_storage_opt(const json_map_string_string *opts, uint64_t *size) - if (strcasecmp("size", opts->keys[i]) == 0) { - int64_t converted = 0; - -- if (util_parse_byte_size_string(opts->values[i], &converted) != 0) { -+ ret = util_parse_byte_size_string(opts->values[i], &converted); -+ if (ret != 0) { - ERROR("Invalid size: '%s': %s", opts->values[i], strerror(-ret)); - ret = -1; - goto out; -@@ -2760,6 +2770,31 @@ out: - return ret; - } - -+static int grow_device_fs(struct device_set *devset, const char *hash, uint64_t size, uint64_t base_size) -+{ -+ int ret = 0; -+ devmapper_device_info_t *device_info = NULL; -+ -+ if (size <= base_size) { -+ return 0; -+ } else { -+ DEBUG("devmapper: new fs size is larger than old basesize, start to grow fs"); -+ device_info = lookup_device(devset, hash); -+ if (device_info == NULL) { -+ ERROR("devmapper: lookup device %s failed", hash); -+ ret = -1; -+ goto out; -+ } -+ -+ if (grow_fs(devset, device_info->info) != 0) { -+ ret = -1; -+ goto out; -+ } -+ } -+out: -+ return ret; -+} -+ - int add_device(const char *hash, const char *base_hash, struct device_set *devset, - const json_map_string_string *storage_opts) - { -@@ -2820,18 +2855,14 @@ int add_device(const char *hash, const char *base_hash, struct device_set *devse - goto free_out; - } - -- if (size > base_device_info->info->size) { -- DEBUG("devmapper: new fs size is larger than old basesize, start to grow fs"); -- device_info = lookup_device(devset, hash); -- if (device_info == NULL) { -- ERROR("devmapper: lookup device %s failed", hash); -- ret = -1; -- goto free_out; -- } -- if (grow_fs(devset, device_info->info) != 0) { -- ret = -1; -- goto free_out; -+ if (grow_device_fs(devset, hash, size, base_device_info->info->size) != 0) { -+ ERROR("Grow new deivce fs failed"); -+ // Here, we need to delete device directly instead of deferred deleting, so that we can retry to add device with the same hash successfully. -+ if (do_delete_device(devset, hash, true) != 0) { -+ ERROR("devmapper: remove new snapshot device failed"); - } -+ ret = -1; -+ goto free_out; - } - - free_out: -@@ -2839,7 +2870,6 @@ free_out: - devmapper_device_info_ref_dec(device_info); - if (pthread_rwlock_unlock(&devset->devmapper_driver_rwlock)) { - ERROR("unlock devmapper conf failed"); -- return -1; - } - return ret; - } -diff --git a/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/wrapper_devmapper.c b/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/wrapper_devmapper.c -index 5748ec54..38ed5615 100644 ---- a/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/wrapper_devmapper.c -+++ b/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/wrapper_devmapper.c -@@ -45,6 +45,9 @@ char *dev_strerror(int errnum) - case ERR_TASK_SET_COOKIE: - errmsg = "Task set cookie error"; - break; -+ case ERR_NIL_COOKIE: -+ errmsg = "cookie ptr can't be nil"; -+ break; - case ERR_TASK_SET_ADD_NODE: - errmsg = "Task add dm node failed"; - break; -@@ -443,6 +446,7 @@ free_out: - int dev_delete_device_force(const char *name) - { - int ret = 0; -+ int nret = 0; - struct dm_task *dmt = NULL; - uint32_t cookie = 0; - -@@ -459,8 +463,9 @@ int dev_delete_device_force(const char *name) - goto out; - } - -- if (set_cookie(dmt, &cookie, 0) != 0) { -- ERROR("devicemapper: set cookie failed"); -+ nret = set_cookie(dmt, &cookie, 0); -+ if (nret != 0) { -+ ERROR("set cookie failed:%s", dev_strerror(nret)); - ret = -1; - goto out; - } -@@ -468,7 +473,7 @@ int dev_delete_device_force(const char *name) - g_dm_saw_busy = false; - g_dm_saw_enxio = false; - if (dm_task_run(dmt) != 1) { -- ERROR("devicemapper: run task to delete device faild"); -+ ERROR("devicemapper: task run failed"); - if (g_dm_saw_busy) { - ERROR("devicemapper: delete task run err type is \"device is busy\""); - ret = ERR_BUSY; -@@ -498,6 +503,7 @@ out: - int dev_remove_device_deferred(const char *name) - { - int ret = 0; -+ int nret = 0; - struct dm_task *dmt = NULL; - uint32_t cookie = 0; - uint16_t flags = DM_UDEV_DISABLE_LIBRARY_FALLBACK; -@@ -521,15 +527,16 @@ int dev_remove_device_deferred(const char *name) - goto out; - } - -- if (set_cookie(dmt, &cookie, flags) != 0) { -- ERROR("devicemapper: set cookie failed"); -+ nret = set_cookie(dmt, &cookie, flags); -+ if (nret != 0) { -+ ERROR("set cookie failed:%s", dev_strerror(nret)); - ret = -1; - goto out; - } - - g_dm_saw_enxio = false; - if (dm_task_run(dmt) != 1) { -- ERROR("devicemapper: Error running RemoveDeviceDeferred %d", ret); -+ ERROR("devicemapper: task run failed"); - if (g_dm_saw_enxio) { - ERROR("devicemapper: delete deferred task run err type is \"No such device or address\""); - ret = ERR_ENXIO; -@@ -694,7 +701,7 @@ int dev_create_device(const char *pool_fname, int device_id) - } else { - ret = -1; - } -- ERROR("devicemapper: task run failed to create device"); -+ ERROR("devicemapper: task run failed"); - goto cleanup; - } - -@@ -754,7 +761,7 @@ int dev_delete_device(const char *pool_fname, int device_id) - DEBUG("devicemapper: device(id:%d) from pool(%s) does not exist", device_id, pool_fname); - goto cleanup; - } -- ERROR("devicemapper: Error running dev_delete_device"); -+ ERROR("devicemapper: task run failed"); - ret = -1; - goto cleanup; - } -@@ -786,7 +793,7 @@ int dev_suspend_device(const char *dm_name) - } - - if (dm_task_run(dmt) != 1) { -- ERROR("devicemapper: Error running deviceCreate (ActivateDevice)"); -+ ERROR("devicemapper: task run failed"); - ret = -1; - goto out; - } -@@ -800,34 +807,32 @@ out: - - // ResumeDevice is the programmatic example of "dmsetup resume". - // It un-suspends the specified device. --int dev_resume_device(const char *dm_name) -+void dev_resume_device(const char *dm_name) - { -- int ret = 0; -+ int nret = 0; - uint32_t cookie = 0; - uint16_t flags = 0; - struct dm_task *dmt = NULL; - - if (dm_name == NULL) { - ERROR("devicemapper: invalid input params to resume device"); -- return -1; -+ return; - } - -- dmt = task_create_named(DM_DEVICE_SUSPEND, dm_name); -+ dmt = task_create_named(DM_DEVICE_RESUME, dm_name); - if (dmt == NULL) { -- ERROR("devicemapper:create named task(DM_DEVICE_SUSPEND) failed"); -- ret = -1; -+ ERROR("devicemapper: create named task(DM_DEVICE_RESUME) failed"); - goto out; - } - -- if (set_cookie(dmt, &cookie, flags) != 0) { -- ERROR("devicemapper: Can't set cookie %d", ret); -- ret = -1; -+ nret = set_cookie(dmt, &cookie, flags); -+ if (nret != 0) { -+ ERROR("set cookie failed:%s", dev_strerror(nret)); - goto out; - } - - if (dm_task_run(dmt) != 1) { -- ERROR("devicemapper: Error running deviceResume %d", ret); -- ret = -1; -+ ERROR("devicemapper: run task of DM_DEVICE_RESUME failed"); - } - - DEBUG("Start udev wait on resume device"); -@@ -837,7 +842,6 @@ out: - if (dmt != NULL) { - dm_task_destroy(dmt); - } -- return ret; - } - - int dev_active_device(const char *pool_name, const char *name, int device_id, uint64_t size) -@@ -882,14 +886,15 @@ int dev_active_device(const char *pool_name, const char *name, int device_id, ui - goto out; - } - -- if (set_cookie(dmt, &cookie, flags) != 0) { -- ERROR("devicemapper: Can't set cookie"); -+ nret = set_cookie(dmt, &cookie, flags); -+ if (nret != 0) { -+ ERROR("set cookie failed:%s", dev_strerror(nret)); - ret = -1; - goto out; - } - - if (dm_task_run(dmt) != 1) { -- ERROR("devicemapper: error running deviceCreate (ActivateDevice) %d", ret); -+ ERROR("devicemapper: task run failed"); - ret = -1; - } - -@@ -944,7 +949,7 @@ int dev_cancel_deferred_remove(const char *dm_name) - ret = ERR_ENXIO; - goto cleanup; - } -- ERROR("devicemapper: Error running CancelDeferredRemove"); -+ ERROR("devicemapper: task run failed"); - ret = -1; - goto cleanup; - } -@@ -1070,7 +1075,7 @@ int dev_create_snap_device_raw(const char *pool_name, int device_id, int base_de - ret = ERR_DEVICE_ID_EXISTS; - goto cleanup; - } -- ERROR("devicemapper: Error running deviceCreate (CreateSnapDeviceRaw)"); -+ ERROR("devicemapper: task run failed"); - ret = -1; - goto cleanup; - } -diff --git a/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/wrapper_devmapper.h b/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/wrapper_devmapper.h -index 0f45a87d..6a45db58 100644 ---- a/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/wrapper_devmapper.h -+++ b/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/wrapper_devmapper.h -@@ -119,7 +119,7 @@ int dev_delete_device(const char *pool_fname, int device_id); - - int dev_suspend_device(const char *dm_name); - --int dev_resume_device(const char *dm_name); -+void dev_resume_device(const char *dm_name); - - int dev_active_device(const char *pool_name, const char *name, int device_id, uint64_t size); - --- -2.25.1 - diff --git a/0037-cleadcode-Remove-extra-semicolons.patch b/0037-cleadcode-Remove-extra-semicolons.patch deleted file mode 100644 index 4ba8b40..0000000 --- a/0037-cleadcode-Remove-extra-semicolons.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 3db92c961e93093d8520f4e46255c12e774b841b Mon Sep 17 00:00:00 2001 -From: wujing -Date: Mon, 22 Feb 2021 08:04:44 +0800 -Subject: [PATCH 37/53] cleadcode: Remove extra semicolons - -Signed-off-by: wujing ---- - src/client/connect/grpc/client_base.h | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) - -diff --git a/src/client/connect/grpc/client_base.h b/src/client/connect/grpc/client_base.h -index 496370a8..5d1e7f0c 100644 ---- a/src/client/connect/grpc/client_base.h -+++ b/src/client/connect/grpc/client_base.h -@@ -153,19 +153,19 @@ protected: - virtual auto request_to_grpc(const RQ * /*rq*/, gRQ * /*grq*/) -> int - { - return 0; -- }; -+ } - virtual auto response_from_grpc(gRP * /*reply*/, RP * /*response*/) -> int - { - return 0; -- }; -+ } - virtual auto check_parameter(const gRQ & /*grq*/) -> int - { - return 0; -- }; -+ } - virtual auto grpc_call(ClientContext * /*context*/, const gRQ & /*req*/, gRP * /*reply*/) -> Status - { - return Status::OK; -- }; -+ } - - auto ReadTextFile(const char *file) -> std::string - { --- -2.25.1 - diff --git a/0038-restart-policy-add-support-unless-stopped-policy.patch b/0038-restart-policy-add-support-unless-stopped-policy.patch deleted file mode 100644 index 336f376..0000000 --- a/0038-restart-policy-add-support-unless-stopped-policy.patch +++ /dev/null @@ -1,39 +0,0 @@ -From 86f34975a4e382a2967a27c589a72c857b0c1781 Mon Sep 17 00:00:00 2001 -From: Li Feng -Date: Tue, 23 Feb 2021 09:05:45 +0800 -Subject: [PATCH 38/53] restart policy: add support unless-stopped policy - -Signed-off-by: Li Feng ---- - src/daemon/modules/spec/verify.c | 8 +++++++- - 1 file changed, 7 insertions(+), 1 deletion(-) - -diff --git a/src/daemon/modules/spec/verify.c b/src/daemon/modules/spec/verify.c -index a3156579..cef95065 100644 ---- a/src/daemon/modules/spec/verify.c -+++ b/src/daemon/modules/spec/verify.c -@@ -1864,6 +1864,11 @@ static inline bool is_restart_policy_always(const char *policy) - return strcmp(policy, "always") == 0; - } - -+static inline bool is_restart_policy_unless_stopped(const char *policy) -+{ -+ return strcmp(policy, "unless-stopped") == 0; -+} -+ - static inline bool is_restart_policy_on_reboot(const char *policy) - { - return strcmp(policy, "on-reboot") == 0; -@@ -1881,7 +1886,8 @@ static inline bool is_restart_policy_on_failure(const char *policy) - - static int verify_restart_policy_name(const host_config_restart_policy *rp, const host_config *hostconfig) - { -- if (is_restart_policy_always(rp->name) || is_restart_policy_no(rp->name) || is_restart_policy_on_reboot(rp->name)) { -+ if (is_restart_policy_always(rp->name) || is_restart_policy_no(rp->name) || is_restart_policy_on_reboot(rp->name) || -+ is_restart_policy_unless_stopped(rp->name)) { - if (rp->maximum_retry_count != 0) { - ERROR("Maximum retry count cannot be used with restart policy '%s'", rp->name); - isulad_set_error_message("Maximum retry count cannot be used with restart policy '%s'", rp->name); --- -2.25.1 - diff --git a/0039-CI-add-testcase-for-unless-stopped-restart-policy.patch b/0039-CI-add-testcase-for-unless-stopped-restart-policy.patch deleted file mode 100644 index bc1011f..0000000 --- a/0039-CI-add-testcase-for-unless-stopped-restart-policy.patch +++ /dev/null @@ -1,79 +0,0 @@ -From 6d2ce70731b36c8e2942571dca71149c26474d25 Mon Sep 17 00:00:00 2001 -From: Li Feng -Date: Tue, 23 Feb 2021 09:13:28 +0800 -Subject: [PATCH 39/53] CI: add testcase for unless-stopped restart policy - -Signed-off-by: Li Feng ---- - .../container_cases/restartpolicy.sh | 48 +++++++++++++++++++ - 1 file changed, 48 insertions(+) - -diff --git a/CI/test_cases/container_cases/restartpolicy.sh b/CI/test_cases/container_cases/restartpolicy.sh -index be0140e7..bb7ada39 100755 ---- a/CI/test_cases/container_cases/restartpolicy.sh -+++ b/CI/test_cases/container_cases/restartpolicy.sh -@@ -41,6 +41,52 @@ function do_test_on_failure() - fn_check_eq "$?" "0" "rm failed" - } - -+function do_test_unless_stopped() -+{ -+ containername=test_rp_unless_stopped -+ isula run --name $containername -td --restart unless-stopped busybox /bin/sh -c "exit 2" -+ fn_check_eq "$?" "0" "run failed" -+ -+ sleep 8 -+ count=`isula inspect --format='{{json .RestartCount}}' $containername` -+ if [[ $count == "0" ]];then -+ echo "expect not 0 but get $count" -+ TC_RET_T=$(($TC_RET_T+1)) -+ fi -+ -+ isula stop $containername -+ testcontainer $containername exited -+ -+ isula rm $containername -+ fn_check_eq "$?" "0" "rm failed" -+} -+ -+function do_test_unless_stopped_kill() -+{ -+ containername=test_rp_unless_stopped -+ isula run --name $containername -td --restart unless-stopped busybox /bin/sh -+ fn_check_eq "$?" "0" "run failed" -+ -+ cpid=`isula inspect -f '{{json .State.Pid}}' $containername` -+ kill -9 $cpid -+ sleep 8 -+ testcontainer $containername running -+ -+ isula stop $containername -+ fn_check_eq "$?" "0" "stop failed" -+ testcontainer $containername exited -+ -+ isula restart $containername -+ testcontainer $containername running -+ -+ isula kill $containername -+ fn_check_eq "$?" "0" "stop failed" -+ testcontainer $containername exited -+ -+ isula rm $containername -+ fn_check_eq "$?" "0" "rm failed" -+} -+ - function do_test_always_cancel() - { - containername=test_rp_always_cancel -@@ -64,6 +110,8 @@ function do_test_t() - { - do_test_on_failure - do_test_always_cancel -+ do_test_unless_stopped -+ do_test_unless_stopped_kill - - return $TC_RET_T - } --- -2.25.1 - diff --git a/0040-bugfix-for-embedded-image.patch b/0040-bugfix-for-embedded-image.patch deleted file mode 100644 index 24c420e..0000000 --- a/0040-bugfix-for-embedded-image.patch +++ /dev/null @@ -1,162 +0,0 @@ -From 42a961197ce8d9c7e5bde3403b444d9e93c4c855 Mon Sep 17 00:00:00 2001 -From: WangFengTu -Date: Tue, 23 Feb 2021 09:43:05 +0800 -Subject: [PATCH 40/53] bugfix for embedded image - -1. do not create mtab when create container if it's embedded image -2. use mounts in config, they are embedded image's layers - -Signed-off-by: WangFengTu ---- - .../modules/service/service_container.c | 13 +++-- - src/daemon/modules/spec/specs_mount.c | 57 +++++++++++++++++++ - .../image/oci/oci_config_merge/CMakeLists.txt | 1 + - test/specs/specs/CMakeLists.txt | 1 + - test/specs/specs_extend/CMakeLists.txt | 1 + - 5 files changed, 68 insertions(+), 5 deletions(-) - -diff --git a/src/daemon/modules/service/service_container.c b/src/daemon/modules/service/service_container.c -index 6551bfbf..e1d698cd 100644 ---- a/src/daemon/modules/service/service_container.c -+++ b/src/daemon/modules/service/service_container.c -@@ -731,11 +731,14 @@ static int do_start_container(container_t *cont, const char *console_fifos[], bo - goto close_exit_fd; - } - -- nret = create_mtab_link(oci_spec); -- if (nret != 0) { -- ERROR("Failed to create link /etc/mtab for target /proc/mounts"); -- ret = -1; -- goto close_exit_fd; -+ // embedded conainter is readonly, create mtab link will fail -+ if (strcmp(IMAGE_TYPE_EMBEDDED, cont->common_config->image_type) != 0) { -+ nret = create_mtab_link(oci_spec); -+ if (nret != 0) { -+ ERROR("Failed to create link /etc/mtab for target /proc/mounts"); -+ ret = -1; -+ goto close_exit_fd; -+ } - } - - if (verify_mounts(cont)) { -diff --git a/src/daemon/modules/spec/specs_mount.c b/src/daemon/modules/spec/specs_mount.c -index 04ccd415..175a0fbe 100644 ---- a/src/daemon/modules/spec/specs_mount.c -+++ b/src/daemon/modules/spec/specs_mount.c -@@ -2799,6 +2799,9 @@ static int calc_mounts_len(host_config *host_spec, container_config *container_s - if (container_spec->volumes != NULL && container_spec->volumes->len != 0) { - (*len) += container_spec->volumes->len; - } -+ if (container_spec->mounts != NULL && container_spec->mounts_len != 0) { -+ (*len) += container_spec->mounts_len; -+ } - - return 0; - } -@@ -2809,6 +2812,54 @@ static void add_mount(defs_mount **merged_mounts, size_t *merged_mounts_len, def - *merged_mounts_len += 1; - } - -+static int add_embedded_layers(container_config *container_spec, defs_mount **merged_mounts, -+ size_t *merged_mounts_len) -+{ -+ int ret = 0; -+ size_t i = 0; -+ defs_mount *mnt = NULL; -+ defs_mount *conflict = NULL; -+ mount_spec *spec = NULL; -+ char *errmsg = NULL; -+ -+ for (i = 0; container_spec->mounts != 0 && i < container_spec->mounts_len; i++) { -+ ret = util_parse_mount_spec(container_spec->mounts[i], &spec, &errmsg); -+ if (ret != 0) { -+ ERROR("parse mount spec failed: %s", errmsg); -+ ret = -1; -+ goto out; -+ } -+ -+ mnt = parse_mount(spec); -+ if (mnt == NULL) { -+ ERROR("parse mount failed"); -+ ret = -1; -+ goto out; -+ } -+ -+ // do not use duplicate mount point -+ conflict = get_conflict_mount_point(merged_mounts, *merged_mounts_len, mnt); -+ if (conflict != NULL) { -+ ERROR("Duplicate mount point: %s", conflict->destination); -+ isulad_set_error_message("Duplicate mount point: %s", conflict->destination); -+ ret = -1; -+ goto out; -+ } -+ -+ add_mount(merged_mounts, merged_mounts_len, mnt); -+ mnt = NULL; -+ free_mount_spec(spec); -+ spec = NULL; -+ } -+ -+out: -+ free_defs_mount(mnt); -+ free_mount_spec(spec); -+ free(errmsg); -+ -+ return ret; -+} -+ - static int add_mounts(host_config *host_spec, defs_mount **merged_mounts, size_t *merged_mounts_len) - { - int ret = 0; -@@ -3086,6 +3137,12 @@ static int merge_all_fs_mounts(host_config *host_spec, container_config *contain - goto out; - } - -+ // add embedded layers -+ ret = add_embedded_layers(container_spec, merged_mounts, &merged_mounts_len); -+ if (ret != 0) { -+ goto out; -+ } -+ - // add --mounts - ret = add_mounts(host_spec, merged_mounts, &merged_mounts_len); - if (ret != 0) { -diff --git a/test/image/oci/oci_config_merge/CMakeLists.txt b/test/image/oci/oci_config_merge/CMakeLists.txt -index 48960ff7..36dc3ead 100644 ---- a/test/image/oci/oci_config_merge/CMakeLists.txt -+++ b/test/image/oci/oci_config_merge/CMakeLists.txt -@@ -18,6 +18,7 @@ add_executable(${EXE} - ${CMAKE_CURRENT_SOURCE_DIR}/../../../../src/utils/cutils/util_atomic.c - ${CMAKE_CURRENT_SOURCE_DIR}/../../../../src/utils/sha256/sha256.c - ${CMAKE_CURRENT_SOURCE_DIR}/../../../../src/utils/cutils/path.c -+ ${CMAKE_CURRENT_SOURCE_DIR}/../../../../src/utils/cutils/utils_mount_spec.c - ${CMAKE_CURRENT_SOURCE_DIR}/../../../../src/daemon/modules/spec//specs_extend.c - ${CMAKE_CURRENT_SOURCE_DIR}/../../../../src/daemon/common/err_msg.c - ${CMAKE_CURRENT_SOURCE_DIR}/../../../../src/daemon/config/isulad_config.c -diff --git a/test/specs/specs/CMakeLists.txt b/test/specs/specs/CMakeLists.txt -index e0f2b5b0..e0031e08 100644 ---- a/test/specs/specs/CMakeLists.txt -+++ b/test/specs/specs/CMakeLists.txt -@@ -12,6 +12,7 @@ add_executable(${EXE} - ${CMAKE_CURRENT_SOURCE_DIR}/../../../src/utils/cutils/utils_file.c - ${CMAKE_CURRENT_SOURCE_DIR}/../../../src/utils/cutils/utils_timestamp.c - ${CMAKE_CURRENT_SOURCE_DIR}/../../../src/utils/cutils/util_atomic.c -+ ${CMAKE_CURRENT_SOURCE_DIR}/../../../src/utils/cutils/utils_mount_spec.c - ${CMAKE_CURRENT_SOURCE_DIR}/../../../src/utils/sha256/sha256.c - ${CMAKE_CURRENT_SOURCE_DIR}/../../../src/utils/cutils/path.c - ${CMAKE_CURRENT_SOURCE_DIR}/../../../src/utils/cutils/map/map.c -diff --git a/test/specs/specs_extend/CMakeLists.txt b/test/specs/specs_extend/CMakeLists.txt -index 7d5c7dfb..45b21ecd 100644 ---- a/test/specs/specs_extend/CMakeLists.txt -+++ b/test/specs/specs_extend/CMakeLists.txt -@@ -12,6 +12,7 @@ add_executable(${EXE} - ${CMAKE_CURRENT_SOURCE_DIR}/../../../src/utils/cutils/utils_file.c - ${CMAKE_CURRENT_SOURCE_DIR}/../../../src/utils/cutils/utils_timestamp.c - ${CMAKE_CURRENT_SOURCE_DIR}/../../../src/utils/cutils/util_atomic.c -+ ${CMAKE_CURRENT_SOURCE_DIR}/../../../src/utils/cutils/utils_mount_spec.c - ${CMAKE_CURRENT_SOURCE_DIR}/../../../src/utils/sha256/sha256.c - ${CMAKE_CURRENT_SOURCE_DIR}/../../../src/utils/cutils/path.c - ${CMAKE_CURRENT_SOURCE_DIR}/../../../src/utils/cutils/map/map.c --- -2.25.1 - diff --git a/0041-console-client-ignore-stdin-close-event.patch b/0041-console-client-ignore-stdin-close-event.patch deleted file mode 100644 index 84d3d0d..0000000 --- a/0041-console-client-ignore-stdin-close-event.patch +++ /dev/null @@ -1,75 +0,0 @@ -From f5cd35cbfb594aad4b4448dd6550eb2faf9368c9 Mon Sep 17 00:00:00 2001 -From: Li Feng -Date: Tue, 23 Feb 2021 16:27:47 +0800 -Subject: [PATCH 41/53] console: client ignore stdin close event - -Signed-off-by: Li Feng ---- - src/utils/console/console.c | 17 +++++++++++++---- - src/utils/console/console.h | 1 + - 2 files changed, 14 insertions(+), 4 deletions(-) - -diff --git a/src/utils/console/console.c b/src/utils/console/console.c -index 7fda519c..1aedd0c9 100644 ---- a/src/utils/console/console.c -+++ b/src/utils/console/console.c -@@ -57,7 +57,11 @@ static int console_cb_tty_stdin_with_escape(int fd, uint32_t events, void *cbdat - - r_ret = util_read_nointr(ts->stdin_reader, &c, 1); - if (r_ret <= 0) { -- ret = EPOLL_LOOP_HANDLE_CLOSE; -+ if (r_ret == 0 && ts->ignore_stdin_close) { -+ ret = EPOLL_LOOP_HANDLE_CONTINUE; -+ } else { -+ ret = EPOLL_LOOP_HANDLE_CLOSE; -+ } - goto out; - } - -@@ -122,7 +126,11 @@ static int console_cb_stdio_copy(int fd, uint32_t events, void *cbdata, struct e - ret = EPOLL_LOOP_HANDLE_CONTINUE; - goto out; - } else { -- ret = EPOLL_LOOP_HANDLE_CLOSE; -+ if (r_ret == 0 && ts->ignore_stdin_close && fd == ts->stdin_reader) { -+ ret = EPOLL_LOOP_HANDLE_CONTINUE; -+ } else { -+ ret = EPOLL_LOOP_HANDLE_CLOSE; -+ } - goto out; - } - } -@@ -363,8 +371,8 @@ int console_loop_with_std_fd(int stdinfd, int stdoutfd, int stderrfd, int fifoin - int tty_exit, bool tty) - { - int ret; -- struct epoll_descr descr; -- struct tty_state ts; -+ struct epoll_descr descr = { 0 }; -+ struct tty_state ts = { 0 }; - - ret = epoll_loop_open(&descr); - if (ret) { -@@ -378,6 +386,7 @@ int console_loop_with_std_fd(int stdinfd, int stdoutfd, int stderrfd, int fifoin - ts.stdin_reader = -1; - ts.stdout_reader = -1; - ts.stderr_reader = -1; -+ ts.ignore_stdin_close = true; - - if (fifoinfd >= 0) { - ts.stdin_reader = stdinfd; -diff --git a/src/utils/console/console.h b/src/utils/console/console.h -index 406a2fe9..0dfe19d3 100644 ---- a/src/utils/console/console.h -+++ b/src/utils/console/console.h -@@ -40,6 +40,7 @@ struct tty_state { - int tty_exit; - /* Flag to mark whether detected escape sequence. */ - int saw_tty_exit; -+ bool ignore_stdin_close; - }; - - int console_fifo_name(const char *rundir, const char *subpath, const char *stdflag, char *fifo_name, --- -2.25.1 - diff --git a/0042-delete-lxc-from-runc-CI-test.patch b/0042-delete-lxc-from-runc-CI-test.patch deleted file mode 100644 index 02bc436..0000000 --- a/0042-delete-lxc-from-runc-CI-test.patch +++ /dev/null @@ -1,182 +0,0 @@ -From d0533ced0b9c4b721d1f7560b503070f07944e45 Mon Sep 17 00:00:00 2001 -From: gaohuatao -Date: Wed, 24 Feb 2021 10:19:44 +0800 -Subject: [PATCH 42/53] delete lxc from runc CI test - -Signed-off-by: gaohuatao ---- - .../container_cases/bigdata_stream_runc.sh | 128 ++---------------- - 1 file changed, 12 insertions(+), 116 deletions(-) - -diff --git a/CI/test_cases/container_cases/bigdata_stream_runc.sh b/CI/test_cases/container_cases/bigdata_stream_runc.sh -index f6c2ee94..1313774e 100755 ---- a/CI/test_cases/container_cases/bigdata_stream_runc.sh -+++ b/CI/test_cases/container_cases/bigdata_stream_runc.sh -@@ -55,9 +55,9 @@ function record_origin_status() - origin_isulad_cpu_usage=$(ps -o %cpu -p $(cat /var/run/isulad.pid) | sed -n '2p') - msg_info "origin isulad cpu usage: $origin_isulad_cpu_usage" - -- lxc_monitor_pid=$(ps aux | grep "lxc monitor" | grep $CID | awk '{print $2}') -- origin_lxc_monitor_cpu_usage=$(ps -o %cpu -p $lxc_monitor_pid | sed -n '2p') -- msg_info "origin lxc monitor cpu usage: $origin_lxc_monitor_cpu_usage" -+ isulad_shim_pid=$(ps aux | grep "isulad-shim" | grep $CID | awk '{print $2}') -+ origin_isulad_shim_cpu_usage=$(ps -o %cpu -p $isulad_shim_pid | sed -n '2p') -+ msg_info "origin isulad shim cpu usage: $origin_isulad_shim_cpu_usage" - - rm -rf /iocopy_stream_data_* - } -@@ -80,22 +80,16 @@ function check_last_status() - ps -o %cpu -p $(cat /var/run/isulad.pid) - fi - -- lxc_monintor_pid=$(ps aux | grep "lxc monitor" | grep $CID | awk '{print $2}') -- last_lxc_monitor_cpu_usage=$(ps -o %cpu -p $lxc_monintor_pid | sed -n '2p') -- allowable_lxc_monitor_cpu_usage=$(echo "$origin_lxc_monitor_cpu_usage*2" | bc) -- if [[ $(echo "$allowable_lxc_monitor_cpu_usage < 1.0" | bc) -eq 1 ]]; then -- allowable_lxc_monitor_cpu_usage=1.0 -+ isulad_shim_pid=$(ps aux | grep "isulad-shim" | grep $CID | awk '{print $2}') -+ last_isulad_shim_cpu_usage=$(ps -o %cpu -p $isulad_shim_pid | sed -n '2p') -+ allowable_isulad_shim_cpu_usage=$(echo "$origin_isulad_shim_cpu_usage*2" | bc) -+ if [[ $(echo "$allowable_isulad_shim_cpu_usage < 1.0" | bc) -eq 1 ]]; then -+ allowable_isulad_shim_cpu_usage=1.0 - fi -- msg_info "allowable lxc_monitor cpu usage: $allowable_lxc_monitor_cpu_usage" -- if [[ $(echo "$last_lxc_monitor_cpu_usage > $allowable_lxc_monitor_cpu_usage" | bc) -eq 1 ]]; then -+ msg_info "allowable isulad_shim cpu usage: $allowable_isulad_shim_cpu_usage" -+ if [[ $(echo "$last_isulad_shim_cpu_usage > $allowable_isulad_shim_cpu_usage" | bc) -eq 1 ]]; then - msg_err "${FUNCNAME[0]}:${LINENO} - Process exception: endless loop or residual thread" && ((ret++)) -- ps -o %cpu -p $lxc_monintor_pid -- fi -- -- lxc_attach_process_number=$(ps aux | grep lxc-attach | grep $CID | wc -l) -- if [[ $lxc_attach_process_number -ne 0 ]]; then -- msg_err "${FUNCNAME[0]}:${LINENO} - lxc_attach process residual" && ((ret++)) -- ps aux | grep lxc-attach | grep $CID -+ ps -o %cpu -p $isulad_shim_pid - fi - - client_pid=$(pidof isula) -@@ -209,100 +203,6 @@ function test_stream_with_kill_client() - return ${ret} - } - --function test_stream_with_stop_attach() --{ -- local ret=0 -- local test="test_stream_with_stop_attach => (${FUNCNAME[@]})" -- msg_info "${test} starting..." -- -- nohup isula exec $CID cat test_500M > /tmp/iocopy_stream_data_500M & -- exec_pid=$! -- sleep 2 -- pid=$(ps aux | grep lxc-attach | grep $CID |grep "cat test_500M" | awk '{print $2}') -- kill -19 $pid -- sleep 3 -- kill -18 $pid -- -- wait $exec_pid -- -- ls -l /tmp/iocopy_stream_data_500M -- total_size=$(stat -c"%s" /tmp/iocopy_stream_data_500M) -- [[ $total_size -ne 524288000 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - stream iocopy loss data" && ((ret++)) -- -- check_last_status -- [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - abnormal status" && ((ret++)) -- -- msg_info "${test} finished with return ${ret}..." -- return ${ret} --} -- --function test_stream_with_kill_attach() --{ -- local ret=0 -- local test="test_stream_with_kill_client => (${FUNCNAME[@]})" -- msg_info "${test} starting..." -- -- nohup isula exec $CID cat test_500M > /tmp/iocopy_stream_data_500M & -- sleep 3 -- pid=$(ps aux | grep lxc-attach | grep $CID |grep "cat test_500M" | awk '{print $2}') -- kill -9 $pid -- -- check_last_status -- [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - abnormal status" && ((ret++)) -- -- msg_info "${test} finished with return ${ret}..." -- return ${ret} --} -- --function test_stream_with_stop_lxc_monitor() --{ -- local ret=0 -- local test="test_stream_with_stop_lxc_monitor => (${FUNCNAME[@]})" -- msg_info "${test} starting..." -- -- nohup isula exec $CID cat test_500M > /tmp/iocopy_stream_data_500M & -- exec_pid=$! -- sleep 2 -- pid=$(ps aux | grep "lxc monitor" | grep $CID | awk '{print $2}') -- kill -19 $pid -- sleep 3 -- kill -18 $pid -- -- wait $exec_pid -- -- ls -l /tmp/iocopy_stream_data_500M -- total_size=$(stat -c"%s" /tmp/iocopy_stream_data_500M) -- [[ $total_size -ne 524288000 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - stream iocopy loss data" && ((ret++)) -- -- check_last_status -- [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - abnormal status" && ((ret++)) -- -- msg_info "${test} finished with return ${ret}..." -- return ${ret} --} -- --function test_stream_with_kill_lxc_monitor() --{ -- local ret=0 -- local test="test_stream_with_kill_lxc_monitor => (${FUNCNAME[@]})" -- msg_info "${test} starting..." -- -- nohup isula exec $CID cat test_500M > /tmp/iocopy_stream_data_500M & -- sleep 3 -- pid=$(ps aux | grep "lxc monitor" | grep $CID | awk '{print $2}') -- kill -9 $pid -- sleep 3 -- -- isula start $CID -- [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to start container: $CID" && ((ret++)) -- -- check_last_status -- [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - abnormal status" && ((ret++)) -- -- msg_info "${test} finished with return ${ret}..." -- return ${ret} --} -- - function test_stream_with_stop_isulad() - { - local ret=0 -@@ -375,7 +275,7 @@ function test_memory_leak_with_bigdata_stream() - - start_isulad_with_valgrind - -- CID=$(isula run -itd ${image} sh) -+ CID=$(isula run -itd --runtime runc ${image} sh) - - isula exec -it $CID dd if=/dev/zero of=test_100M bs=1M count=100 - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to create bigdata" && ((ret++)) -@@ -407,10 +307,6 @@ test_cat_bigdata || ((ans++)) - test_cat_bigdata_without_pty || ((ans++)) - test_stream_with_stop_client || ((ans++)) - test_stream_with_kill_client || ((ans++)) --test_stream_with_stop_attach || ((ans++)) --test_stream_with_kill_attach || ((ans++)) --test_stream_with_stop_lxc_monitor || ((ans++)) --test_stream_with_kill_lxc_monitor || ((ans++)) - test_stream_with_stop_isulad || ((ans++)) - test_stream_with_kill_isulad || ((ans++)) - tear_down || ((ans++)) --- -2.25.1 - diff --git a/0043-add-embedded-testcases.patch b/0043-add-embedded-testcases.patch deleted file mode 100644 index 19abea1..0000000 --- a/0043-add-embedded-testcases.patch +++ /dev/null @@ -1,635 +0,0 @@ -From f803b85eea63bbe2745678afcfcc57e5eed51c4b Mon Sep 17 00:00:00 2001 -From: WangFengTu -Date: Mon, 22 Feb 2021 10:26:55 +0800 -Subject: [PATCH 43/53] add embedded testcases - -Signed-off-by: WangFengTu ---- - CI/build.sh | 6 +- - CI/test_cases/image_cases/embedded.sh | 590 ++++++++++++++++++++++++++ - 2 files changed, 595 insertions(+), 1 deletion(-) - create mode 100755 CI/test_cases/image_cases/embedded.sh - -diff --git a/CI/build.sh b/CI/build.sh -index d21419eb..2c535c70 100755 ---- a/CI/build.sh -+++ b/CI/build.sh -@@ -37,6 +37,9 @@ BASE_IMAGE="" - devmapper_script="${TOPDIR}/CI/install_devmapper.sh" - disk=NULL - -+modprobe squashfs -+losetup -D -+losetup -l - rm -rf ${TESTCASE_ASSIGN}_* - - # #Run this file will generate default BASE_IMAGE and auto run isulad unit tests -@@ -370,7 +373,8 @@ if [[ "x$disk" != "xNULL" ]] && [[ "x${enable_gcov}" != "xON" ]] ; then - for index in $(seq 1 ${CONTAINER_INDEX}) - do - suffix=$(ls ${CIDIR} | grep testcase_assign_ | grep -E "*[S|P]${index}$" | awk -F '_' '{print $NF}') -- cat ${CIDIR}/testcase_assign_${suffix} >> ${CIDIR}/testcase_assign_devmapper -+ # only one embedded.sh shell is allowed at the same time and embedded image will not use in devicemapper enviorment -+ cat ${CIDIR}/testcase_assign_${suffix} | grep -v embedded.sh >> ${CIDIR}/testcase_assign_devmapper - done - docker cp ${CIDIR}/testcase_assign_devmapper ${devmappercontainer}:/root - echo_success "Run container ${devmappercontainer} success" -diff --git a/CI/test_cases/image_cases/embedded.sh b/CI/test_cases/image_cases/embedded.sh -new file mode 100755 -index 00000000..535077ce ---- /dev/null -+++ b/CI/test_cases/image_cases/embedded.sh -@@ -0,0 +1,590 @@ -+#!/bin/bash -+# -+# attributes: isulad embedded image -+# concurrent: YES -+# spend time: 15 -+ -+####################################################################### -+##- @Copyright (C) Huawei Technologies., Ltd. 2020. All rights reserved. -+# - iSulad licensed under the Mulan PSL v2. -+# - You can use this software according to the terms and conditions of the Mulan PSL v2. -+# - You may obtain a copy of Mulan PSL v2 at: -+# - http://license.coscl.org.cn/MulanPSL2 -+# - THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND, EITHER EXPRESS OR -+# - IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT, MERCHANTABILITY OR FIT FOR A PARTICULAR -+# - PURPOSE. -+# - See the Mulan PSL v2 for more details. -+##- @Description:CI -+##- @Author: wangfengtu -+##- @Create: 2021-02-20 -+####################################################################### -+ -+declare -r curr_path=$(dirname $(readlink -f "$0")) -+source ../helpers.sh -+test="embedded image test => test_embedded" -+ -+free_loop="" -+embedded_basedir="$(pwd)/embedded/img" -+embedded_basedir2="$(pwd)/embedded/img2" -+embedded_basedir3="$(pwd)/embedded/img3" -+embedded_basedir4="$(pwd)/embedded/img4" -+embedded_basedir5="$(pwd)/embedded/img5" -+embedded_manifest="$embedded_basedir/test.manifest" -+embedded_manifest2="$embedded_basedir2/test.manifest" -+embedded_manifest3="$embedded_basedir3/manifest" -+embedded_manifest_template="$embedded_basedir/template.manifest" -+embedded_manifest_invalid="$embedded_basedir/invalid.manifest" -+embedded_manifest_invalid_sgn="$embedded_basedir/invalid.sgn" -+embedded_manifest_not_file="$embedded_basedir/notfile" -+embedded_manifest_not_exist="$embedded_basedir/notexist.manifest" -+embedded_manifest_sgn2="$embedded_basedir2/test.sgn" -+embedded_manifest_sgn5="$embedded_basedir5/sgn" -+embedded_app="$embedded_basedir/app.img" -+embedded_app2="$embedded_basedir2/app.img" -+embedded_platform="$embedded_basedir/platform.img" -+embedded_platform2="$embedded_basedir2/platform.img" -+embedded_rootfs0="/tmp/embedded_rootfs0" -+embedded_manifest_ori="$embedded_basedir/test.manifest.ori" -+embedded_manifest_template_ori="$embedded_basedir/template.manifest.ori" -+ -+function test_load_image() -+{ -+ local ret=0 -+ -+ isula load -i "$embedded_manifest" -t abc -+ [[ $? -ne 1 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - load invalid type failed" && ((ret++)) -+ -+ # load embedded image -+ isula load -i "$embedded_manifest" -t embedded -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - load embedded image failed" && ((ret++)) -+ -+ # load embedded image again -+ isula load -i "$embedded_manifest" -t embedded -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - load embedded image again failed" && ((ret++)) -+ -+ # delete embedded image -+ isula rmi test:v1 -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - delete embedded image failed" && ((ret++)) -+ -+ # load embedded image again -+ isula load -i "$embedded_manifest" -t embedded -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - load embedded image again failed" && ((ret++)) -+ -+ # delete embedded image -+ isula rmi test:v1 -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - delete embedded image failed" && ((ret++)) -+ -+ return ${ret} -+} -+ -+function test_run_image() -+{ -+ local ret=0 -+ -+ isula run -t -n embedded_test1 nonexistentname1:v1 /bin/sh -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - run nonexistent image should failed" && ((ret++)) -+ -+ isula load -i "$embedded_manifest" -t embedded -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - load embedded image failed" && ((ret++)) -+ -+ # run container based on embedded image -+ isula run --name embedded_test1 test:v1 ls /home/home/home -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - run embedded image failed" && ((ret++)) -+ -+ # delete container based on embedded image -+ isula rm embedded_test1 -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - delete container based on embedded image failed" && ((ret++)) -+ -+ # test image's env -+ isula run --name embedded_test1 test:v1 /bin/sh -c "echo \$c | grep \"d e\"" -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - test image's env failed" && ((ret++)) -+ -+ # delete container based on embedded image -+ isula rm embedded_test1 -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - delete container based on embedded image failed" && ((ret++)) -+ -+ # delete embedded image -+ isula rmi test:v1 -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - delete embedded image failed" && ((ret++)) -+ -+ return ${ret} -+} -+ -+function test_mount() -+{ -+ local ret=0 -+ -+ # load embedded image -+ isula load -i "$embedded_manifest" -t embedded -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - load embedded imagefailed" && ((ret++)) -+ -+ # run --mount -+ isula run --mount type=bind,src="$embedded_basedir",dst=/usr,ro=true,bind-propagation=rprivate --name embedded_test2 test:v1 true -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - run --mount failed" && ((ret++)) -+ -+ testcontainer embedded_test2 exited -+ -+ isula rm embedded_test2 -+ -+ # test invalid mode -+ isula run --mount type=bind,src="$embedded_basedir",dst=/usr,ro=invalid --name embedded_test2 test:v1 true -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - invalid mode should failed" && ((ret++)) -+ -+ isula rm embedded_test2 -+ -+ # test invalid bind propagation mode -+ isula run --mount type=bind,src="$embedded_basedir",dst=/usr,bind-propagation=invalid --name embedded_test2 test:v1 true -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - invalid bind propagation mode should failed" && ((ret++)) -+ -+ isula rm embedded_test2 -+ -+ # test source not exist -+ isula run --mount type=bind,src=abcdefg/notexist,dst=/usr --name embedded_test2 test:v1 true -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - invalid source not exist should failed" && ((ret++)) -+ -+ isula rm embedded_test2 -+ -+ # test source not a regular file -+ isula run --mount type=squashfs,src=/tmp,dst=/usr --name embedded_test2 test:v1 true -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - source not a regular file should failed" && ((ret++)) -+ -+ isula rm embedded_test2 -+ -+ # test path //tmp/test -+ mkdir -p /tmp/test_mount -+ mkdir -p /tmp/test_mount1/test -+ isula run -v /tmp/test_mount:/tmp --mount type=bind,src=/tmp/test_mount1,dst=//tmp/test_mount1,ro=true,bind-propagation=rprivate --name embedded_test2 test:v1 ls /tmp/test_mount1/test -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - test path //tmp/test failed" && ((ret++)) -+ -+ isula rm embedded_test2 -+ -+ # delete embedded image -+ isula rmi test:v1 -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - delete embedded image failed" && ((ret++)) -+ -+ return ${ret} -+} -+ -+function test_query_image() -+{ -+ local ret=0 -+ -+ # load embedded image -+ isula load -i "$embedded_manifest" -t embedded -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - load embedded imagefailed" && ((ret++)) -+ -+ # inspect embedded image -+ isula inspect test:v1 -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - inspect embedded image failed" && ((ret++)) -+ -+ # test list embedded image -+ isula images | grep test | grep v1 -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - list embedded image failed" && ((ret++)) -+ -+ # inspect nonexist item -+ isula inspect -f '{{json .abc}}' test:v1 -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - inspect nonexist item should failed" && ((ret++)) -+ -+ # test inspect container, it should conatainer image info -+ isula run --name embedded_inspect test:v1 ls /home/home/home -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - run container for inspect failed" && ((ret++)) -+ -+ isula inspect -f '{{json .Image}}' embedded_inspect -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - image does not contain image info failed" && ((ret++)) -+ -+ # test list container based on embedded image -+ isula ps -a | grep embedded_inspect -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - ps does not contain embedded container failed" && ((ret++)) -+ -+ # delete container -+ isula rm embedded_inspect -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - delete container for inspect failed" && ((ret++)) -+ -+ # delete embedded image -+ isula rmi test:v1 -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - delete embedded image failed" && ((ret++)) -+ -+ # test inspect nonexist image -+ isula inspect test:v1 -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - inspect nonexist image should failed" && ((ret++)) -+ -+ # test list nonexist image -+ isula images | grep test | grep v1 -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - list nonexist image should failed" && ((ret++)) -+ -+ # test list nonexist container -+ isula ps -a | grep embedded_inspect -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - ps should not contain embedded container failed" && ((ret++)) -+ -+ return ${ret} -+} -+ -+function test_invalid_manifest_part1() -+{ -+ local ret=0 -+ -+ # test 'none' image name -+ cp -f "$embedded_manifest_template" "$embedded_manifest_invalid" -+ sed -i "s/test:v1/none/g" "$embedded_manifest_invalid" -+ echo -n sha256:$(sha256sum "$embedded_manifest_invalid" | awk '{print $1}') > "$embedded_manifest_invalid_sgn" -+ isula load -i "$embedded_manifest_invalid" -t embedded -+ [[ $? -ne 1 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - test 'none' image name failed" && ((ret++)) -+ -+ # test 'none:latest' image name -+ cp -f "$embedded_manifest_template" "$embedded_manifest_invalid" -+ sed -i "s/test:v1/none:latest/g" "$embedded_manifest_invalid" -+ echo -n sha256:$(sha256sum "$embedded_manifest_invalid" | awk '{print $1}') > "$embedded_manifest_invalid_sgn" -+ isula load -i "$embedded_manifest_invalid" -t embedded -+ [[ $? -ne 1 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - test 'none:latest' image name failed" && ((ret++)) -+ -+ # test invalid image name k~k -+ cp -f "$embedded_manifest_template" "$embedded_manifest_invalid" -+ sed -i "s/test:v1/k~k/g" "$embedded_manifest_invalid" -+ echo -n sha256:$(sha256sum "$embedded_manifest_invalid" | awk '{print $1}') > "$embedded_manifest_invalid_sgn" -+ isula load -i "$embedded_manifest_invalid" -t embedded -+ [[ $? -ne 1 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - test invalid image name k~k failed" && ((ret++)) -+ -+ # test invalid image name test -+ cp -f "$embedded_manifest_template" "$embedded_manifest_invalid" -+ sed -i "s/test:v1/test/g" "$embedded_manifest_invalid" -+ echo -n sha256:$(sha256sum "$embedded_manifest_invalid" | awk '{print $1}') > "$embedded_manifest_invalid_sgn" -+ isula load -i "$embedded_manifest_invalid" -t embedded -+ [[ $? -ne 1 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - test invalid image name test failed" && ((ret++)) -+ -+ # test invalid time -+ cp -f "$embedded_manifest_template" "$embedded_manifest_invalid" -+ sed -i "s/Z/Zabc#$@/g" "$embedded_manifest_invalid" -+ echo -n sha256:$(sha256sum "$embedded_manifest_invalid" | awk '{print $1}') > "$embedded_manifest_invalid_sgn" -+ isula load -i "$embedded_manifest_invalid" -t embedded -+ [[ $? -ne 1 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - test invalid image time failed" && ((ret++)) -+ -+ # test invalid layer number -+ cp -f "$embedded_manifest_template" "$embedded_manifest_invalid" -+ sed -i "16,36d" "$embedded_manifest_invalid" -+ echo -n sha256:$(sha256sum "$embedded_manifest_invalid" | awk '{print $1}') > "$embedded_manifest_invalid_sgn" -+ isula load -i "$embedded_manifest_invalid" -t embedded -+ [[ $? -ne 1 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - test invalid layer number failed" && ((ret++)) -+ -+ # test layer 0 not a device -+ cp -f "$embedded_manifest_template" "$embedded_manifest_invalid" -+ sed -i "s#$free_loop#/home#g" "$embedded_manifest_invalid" -+ echo -n sha256:$(sha256sum "$embedded_manifest_invalid" | awk '{print $1}') > "$embedded_manifest_invalid_sgn" -+ isula load -i "$embedded_manifest_invalid" -t embedded -+ [[ $? -ne 1 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - test layer 0 not a device failed" && ((ret++)) -+ -+ # test layer(not the first layer) not a regular file -+ cp -f "$embedded_manifest_template" "$embedded_manifest_invalid" -+ mkdir -p "$embedded_manifest_not_file" -+ sed -i "s#platform.img#notfile#g" "$embedded_manifest_invalid" -+ echo -n sha256:$(sha256sum "$embedded_manifest_invalid" | awk '{print $1}') > "$embedded_manifest_invalid_sgn" -+ isula load -i "$embedded_manifest_invalid" -t embedded -+ [[ $? -ne 1 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - test layer(not the first layer) not a regular file failed" && ((ret++)) -+ rm -rf "$embedded_manifest_not_file" -+ -+ # test invalid layer digest -+ cp -f "$embedded_manifest_template" "$embedded_manifest_invalid" -+ sed -i "s/4613a9d1e9016293f53833b0ac61ea072882d468fe2fce7701ecea6f201eebbe/7a7eb18fd0a7b9ac0cdae8c9754ff846d65a4831b9ad8786d943618b497bd886/g" "$embedded_manifest_invalid" -+ echo -n sha256:$(sha256sum "$embedded_manifest_invalid" | awk '{print $1}') > "$embedded_manifest_invalid_sgn" -+ isula load -i "$embedded_manifest_invalid" -t embedded -+ [[ $? -ne 1 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - test invalid layer digest failed" && ((ret++)) -+ -+ # test invalid layer not exist -+ cp -f "$embedded_manifest_template" "$embedded_manifest_invalid" -+ sed -i "s/app.img/kkk/g" "$embedded_manifest_invalid" -+ echo -n sha256:$(sha256sum "$embedded_manifest_invalid" | awk '{print $1}') > "$embedded_manifest_invalid_sgn" -+ isula load -i "$embedded_manifest_invalid" -t embedded -+ [[ $? -ne 1 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - test invalid layer not exist failed" && ((ret++)) -+ -+ # test invalid host path(not relative path) -+ cp -f "$embedded_manifest_template" "$embedded_manifest_invalid" -+ sed -i "s#platform.img#/platform.img#g" "$embedded_manifest_invalid" -+ echo -n sha256:$(sha256sum "$embedded_manifest_invalid" | awk '{print $1}') > "$embedded_manifest_invalid_sgn" -+ isula load -i "$embedded_manifest_invalid" -t embedded -+ [[ $? -ne 1 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - test invalid host path(not relative path) failed" && ((ret++)) -+ -+ # test invalid container path(not absolute path) -+ cp -f "$embedded_manifest_template" "$embedded_manifest_invalid" -+ sed -i "s#/home/home#home/home#g" "$embedded_manifest_invalid" -+ echo -n sha256:$(sha256sum "$embedded_manifest_invalid" | awk '{print $1}') > "$embedded_manifest_invalid_sgn" -+ isula load -i "$embedded_manifest_invalid" -t embedded -+ [[ $? -ne 1 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - test invalid container path(not absolute path) failed" && ((ret++)) -+ -+ # test invalid first layer(not absolute path) -+ cp -f "$embedded_manifest_template" "$embedded_manifest_invalid" -+ sed -i "s#$free_loop#${free_loop:1}#g" "$embedded_manifest_invalid" -+ echo -n sha256:$(sha256sum "$embedded_manifest_invalid" | awk '{print $1}') > "$embedded_manifest_invalid_sgn" -+ isula load -i "$embedded_manifest_invalid" -t embedded -+ [[ $? -ne 1 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - test invalid first layer(not absolute path) failed" && ((ret++)) -+ -+ # test invalid manifest digest -+ cp -f "$embedded_manifest_template" "$embedded_manifest_invalid" -+ echo -n "sha256:36c7c17757c24fa1e86018c8009f3b98690709236f05910937d59e401d87d6c5" > "$embedded_manifest_invalid_sgn" -+ isula load -i "$embedded_manifest_invalid" -t embedded -+ [[ $? -ne 1 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - test invalid manifest digest failed" && ((ret++)) -+ -+ # test invalid manifest not exist -+ isula load -i "$embedded_manifest_not_exist" -t embedded -+ [[ $? -ne 1 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - test invalid manifest not exist failed" && ((ret++)) -+ -+ # test invalid manifest not a regular file -+ isula load -i /dev/zero -t embedded -+ [[ $? -ne 1 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - test invalid manifest not a regular file failed" && ((ret++)) -+ -+ # test invalid manifest empty file -+ rm -f "$embedded_manifest_invalid" -+ touch "$embedded_manifest_invalid" -+ echo -n sha256:$(sha256sum "$embedded_manifest_invalid" | awk '{print $1}') > "$embedded_manifest_invalid_sgn" -+ isula load -i "$embedded_manifest_invalid" -t embedded -+ [[ $? -ne 1 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - test invalid manifest empty file failed" && ((ret++)) -+ -+ # test invalid manifest not a json file -+ rm -f "$embedded_manifest_invalid" -+ echo hello > "$embedded_manifest_invalid" -+ echo -n sha256:$(sha256sum "$embedded_manifest_invalid" | awk '{print $1}') > "$embedded_manifest_invalid_sgn" -+ isula load -i "$embedded_manifest_invalid" -t embedded -+ [[ $? -ne 1 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - test invalid manifest not a json file failed" && ((ret++)) -+ -+ # test image conflict when in different path -+ rm -rf "$embedded_basedir2" -+ cp -rf "$embedded_basedir" "$embedded_basedir2" -+ isula load -i "$embedded_manifest" -t embedded -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - test image conflict when in different path failed" && ((ret++)) -+ -+ echo -n sha256:$(sha256sum "$embedded_manifest2" | awk '{print $1}') > "$embedded_manifest_sgn2" -+ isula load -i "$embedded_manifest2" -t embedded -+ [[ $? -ne 1 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - load manifest in different path should failed" && ((ret++)) -+ -+ rm -rf "$embedded_basedir2" -+ isula rmi test:v1 -+ -+ return ${ret} -+} -+ -+function test_invalid_manifest_part2() -+{ -+ local ret=0 -+ -+ # test manifest's sgn file not exist -+ cp -f "$embedded_manifest_template" "$embedded_manifest_invalid" -+ rm -f "$embedded_manifest_invalid_sgn" -+ isula load -i "$embedded_manifest_invalid" -t embedded -+ [[ $? -ne 1 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - test manifest's sgn file not exist failed" && ((ret++)) -+ -+ # test content of manifest's sgn file not right -+ cp -f "$embedded_manifest_template" "$embedded_manifest_invalid" -+ # note: add '\n' at the end of the sgn file -+ echo sha256:$(sha256sum "$embedded_manifest_invalid" | awk '{print $1}') > "$embedded_manifest_invalid_sgn" -+ isula load -i "$embedded_manifest_invalid" -t embedded -+ [[ $? -ne 1 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - test content of manifest's sgn file not right failed" && ((ret++)) -+ -+ # test invalid schema version -+ cp -f "$embedded_manifest_template" "$embedded_manifest_invalid" -+ sed -i "2d" "$embedded_manifest_invalid" -+ echo -n sha256:$(sha256sum "$embedded_manifest_invalid" | awk '{print $1}') > "$embedded_manifest_invalid_sgn" -+ isula load -i "$embedded_manifest_invalid" -t embedded -+ [[ $? -ne 1 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - test invalid schema version failed" && ((ret++)) -+ -+ # test invalid manifest's media type -+ cp -f "$embedded_manifest_template" "$embedded_manifest_invalid" -+ sed -i "s/embedded/invalid/g" "$embedded_manifest_invalid" -+ echo -n sha256:$(sha256sum "$embedded_manifest_invalid" | awk '{print $1}') > "$embedded_manifest_invalid_sgn" -+ isula load -i "$embedded_manifest_invalid" -t embedded -+ [[ $? -ne 1 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - test invalid manifest's media type failed" && ((ret++)) -+ -+ # test invalid manifest's layer type -+ cp -f "$embedded_manifest_template" "$embedded_manifest_invalid" -+ sed -i "s/squashfs/invalid/g" "$embedded_manifest_invalid" -+ echo -n sha256:$(sha256sum "$embedded_manifest_invalid" | awk '{print $1}') > "$embedded_manifest_invalid_sgn" -+ isula load -i "$embedded_manifest_invalid" -t embedded -+ [[ $? -ne 1 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - test invalid manifest's layer type failed" && ((ret++)) -+ -+ # test size negative number -+ cp -f "$embedded_manifest_template" "$embedded_manifest_invalid" -+ sed -i "s/823/-823/g" "$embedded_manifest_invalid" -+ echo -n sha256:$(sha256sum "$embedded_manifest_invalid" | awk '{print $1}') > "$embedded_manifest_invalid_sgn" -+ isula load -i "$embedded_manifest_invalid" -t embedded -+ [[ $? -ne 1 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - test size negative number failed" && ((ret++)) -+ -+ # test first layer digest not empty -+ cp -f "$embedded_manifest_template" "$embedded_manifest_invalid" -+ sed -i "19d" "$embedded_manifest_invalid" -+ sed -i "19i\"digest\": \"a\"," "$embedded_manifest_invalid" -+ echo -n sha256:$(sha256sum "$embedded_manifest_invalid" | awk '{print $1}') > "$embedded_manifest_invalid_sgn" -+ isula load -i "$embedded_manifest_invalid" -t embedded -+ [[ $? -ne 1 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - test size negative number failed" && ((ret++)) -+ -+ # test first layer path in container not empty -+ cp -f "$embedded_manifest_template" "$embedded_manifest_invalid" -+ sed -i "21d" "$embedded_manifest_invalid" -+ sed -i "21i\"pathInContainer\": \"a\"" "$embedded_manifest_invalid" -+ echo -n sha256:$(sha256sum "$embedded_manifest_invalid" | awk '{print $1}') > "$embedded_manifest_invalid_sgn" -+ isula load -i "$embedded_manifest_invalid" -t embedded -+ [[ $? -ne 1 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - test first layer path in container not empty failed" && ((ret++)) -+ -+ return ${ret} -+} -+ -+function test_entrypoint() -+{ -+ local ret=0 -+ -+ # load embedded image -+ cp -f "$embedded_manifest_template" "$embedded_manifest_invalid" -+ sed -i "12i\"/bin/ls\"," "$embedded_manifest_invalid" -+ sed -i "13i\"/home\"" "$embedded_manifest_invalid" -+ echo -n sha256:$(sha256sum "$embedded_manifest_invalid" | awk '{print $1}') > "$embedded_manifest_invalid_sgn" -+ isula load -i "$embedded_manifest_invalid" -t embedded -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - load embedded image failed" && ((ret++)) -+ -+ # test image's entrypoint -+ isula run --name embedded_entrypoint1 test:v1 -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - test image's entrypoint failed" && ((ret++)) -+ -+ isula rm embedded_entrypoint1 -+ -+ # test image's entrypoint with cmds -+ isula run --name embedded_entrypoint1 test:v1 /bin -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - test image's entrypoint with cmds failed" && ((ret++)) -+ -+ isula rm embedded_entrypoint1 -+ -+ # test image's entrypoint override image's entrypoint -+ isula run --entrypoint=/bin/ls --name embedded_entrypoint1 test:v1 /bin -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - test image's entrypoint override image's entrypoint failed" && ((ret++)) -+ -+ isula rm embedded_entrypoint1 -+ isula rmi test:v1 -+ -+ # test entrypoint with variable -+ cp -f "$embedded_manifest_template" "$embedded_manifest_invalid" -+ sed -i "12i\"/bin/sh\"," "$embedded_manifest_invalid" -+ sed -i "13i\"-c\"," "$embedded_manifest_invalid" -+ sed -i "14i\"ls /ho\${env_id}\"" "$embedded_manifest_invalid" -+ echo -n sha256:$(sha256sum "$embedded_manifest_invalid" | awk '{print $1}') > "$embedded_manifest_invalid_sgn" -+ isula load -i "$embedded_manifest_invalid" -t embedded -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - test entrypoint with variable failed" && ((ret++)) -+ -+ isula run -e env_id=me --name embedded_entrypoint1 test:v1 -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - test run embedded image with env failed" && ((ret++)) -+ -+ isula rm embedded_entrypoint1 -+ isula rmi test:v1 -+ -+ return ${ret} -+} -+ -+function test_symbolic() -+{ -+ local ret=0 -+ -+ # test symbolic -+ # image layout -+ # . -+ # |__ img -+ # | |__ app.img -+ # | |__ platform.img -+ # | -+ # |__ img2 -+ # | |__ app.img -> ../img/app.img -+ # | |__ platform.img -> ../img/platform.img -+ # | |__ test.manifest -+ # | |__ test.sgn -> ../img5/sgn -+ # | -+ # |__ img3 -+ # | |__ manifest -> ../img2/test.manifest -+ # | -+ # |__ img4 -> img3 -+ # | -+ # |__ img5 -+ # |__ sgn -+ # -+ # /tmp/embedded_rootfs0 -> /dev/loopx -+ -+ rm -rf "$embedded_basedir2" -+ mkdir -p "$embedded_basedir2" -+ ln -sf "$embedded_app" "$embedded_app2" -+ ln -sf "$embedded_platform" "$embedded_platform2" -+ cp -f "$embedded_manifest_template" "$embedded_manifest2" -+ sed -i "s#$free_loop#$embedded_rootfs0#g" "$embedded_manifest2" -+ ln -sf $free_loop $embedded_rootfs0 -+ mkdir -p "$embedded_basedir5" -+ echo -n sha256:$(sha256sum "$embedded_manifest2" | awk '{print $1}') > "$embedded_manifest_sgn5" -+ ln -sf "$embedded_manifest_sgn5" "$embedded_manifest_sgn2" -+ mkdir -p "$embedded_basedir3" -+ ln -sf "$embedded_manifest2" "$embedded_manifest3" -+ ln -sf "$embedded_basedir3" "$embedded_basedir4" -+ -+ # load embedded image -+ isula load -i "$embedded_manifest2" -t embedded -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - load embedded image failed" && ((ret++)) -+ -+ # run container based on embedded image -+ isula run --name embedded_test_symbolic test:v1 ls /home/home/home -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - run container based on embedded image failed" && ((ret++)) -+ -+ isula rm embedded_test_symbolic -+ isula rmi test:v1 -+ -+ return ${ret} -+} -+ -+function prepare_test_embedded() -+{ -+ local ret=0 -+ -+ isula rm -f `isula ps -a -q` -+ isula rmi test:v1 -+ -+ free_loop=$(losetup -f) -+ losetup $free_loop $embedded_basedir/busybox.img -+ -+ cp -f $embedded_manifest_ori $embedded_manifest -+ cp -f $embedded_manifest_template_ori $embedded_manifest_template -+ sed -i "s#/dev/ram0#$free_loop#g" "$embedded_manifest" -+ sed -i "s#/dev/ram0#$free_loop#g" "$embedded_manifest_template" -+ checksum=$(sha256sum $embedded_basedir/test.manifest | awk '{print $1}') -+ echo -n "sha256:$checksum" > $embedded_basedir/test.sgn -+ -+ return ${ret} -+} -+ -+function post_test_embedded() -+{ -+ local ret=0 -+ -+ rm -rf "$embedded_manifest_not_file" -+ rm -rf "$embedded_basedir2" -+ rm -rf "$embedded_basedir3" -+ rm -rf "$embedded_basedir4" -+ rm -rf "$embedded_basedir5" -+ -+ isula rm -f `isula ps -a -q` -+ isula rmi test:v1 -+ -+ umount $(mount | grep busybox.img | awk '{print $3}') -+ losetup -d $free_loop -+ -+ return ${ret} -+} -+ -+declare -i ans=0 -+ -+msg_info "${test} starting..." -+[[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - start isulad failed" && ((ret++)) -+ -+prepare_test_embedded || ((ans++)) -+ -+test_load_image || ((ans++)) -+test_run_image || ((ans++)) -+test_mount || ((ans++)) -+test_query_image || ((ans++)) -+test_invalid_manifest_part1 || ((ans++)) -+test_invalid_manifest_part2 || ((ans++)) -+test_entrypoint || ((ans++)) -+test_symbolic || ((ans++)) -+ -+post_test_embedded -+ -+msg_info "${test} finished with return ${ans}..." -+ -+show_result ${ans} "${curr_path}/${0}" --- -2.25.1 - diff --git a/0044-fix-the-error-of-ContainerStats-interface-field-valu.patch b/0044-fix-the-error-of-ContainerStats-interface-field-valu.patch deleted file mode 100644 index 8218a58..0000000 --- a/0044-fix-the-error-of-ContainerStats-interface-field-valu.patch +++ /dev/null @@ -1,100 +0,0 @@ -From f5ebba3e76bdc39fc62b25202c9794ca2e773106 Mon Sep 17 00:00:00 2001 -From: wujing -Date: Wed, 24 Feb 2021 17:41:56 +0800 -Subject: [PATCH 44/53] fix the error of ContainerStats interface field value - -Signed-off-by: wujing ---- - .../cri/cri_container_manager_service_impl.cc | 22 ++++++++++++++----- - .../cri/cri_container_manager_service_impl.h | 5 +++-- - 2 files changed, 19 insertions(+), 8 deletions(-) - -diff --git a/src/daemon/entry/cri/cri_container_manager_service_impl.cc b/src/daemon/entry/cri/cri_container_manager_service_impl.cc -index 6c6569a6..af21e78a 100644 ---- a/src/daemon/entry/cri/cri_container_manager_service_impl.cc -+++ b/src/daemon/entry/cri/cri_container_manager_service_impl.cc -@@ -711,7 +711,7 @@ void ContainerManagerServiceImpl::PackContainerStatsAttributes( - } - } - --void ContainerManagerServiceImpl::SetFsUsage(const imagetool_fs_info *fs_usage, -+void ContainerManagerServiceImpl::SetFsUsage(const imagetool_fs_info *fs_usage, int64_t timestamp, - std::unique_ptr &container) - { - if (fs_usage == nullptr || fs_usage->image_filesystems_len == 0 || fs_usage->image_filesystems[0] == nullptr) { -@@ -733,10 +733,18 @@ void ContainerManagerServiceImpl::SetFsUsage(const imagetool_fs_info *fs_usage, - container->mutable_writable_layer()->mutable_inodes_used()->set_value( - fs_usage->image_filesystems[0]->inodes_used->value); - } -+ container->mutable_writable_layer()->set_timestamp(timestamp); -+ -+ if (fs_usage->image_filesystems[0]->fs_id != nullptr && -+ fs_usage->image_filesystems[0]->fs_id->mountpoint != nullptr) { -+ container->mutable_writable_layer()->mutable_fs_id()->set_mountpoint( -+ fs_usage->image_filesystems[0]->fs_id->mountpoint); -+ } - } - - void ContainerManagerServiceImpl::PackContainerStatsFilesystemUsage( -- const char *id, const char *image_type, std::unique_ptr &container) -+ const char *id, const char *image_type, int64_t timestamp, -+ std::unique_ptr &container) - { - if (id == nullptr || image_type == nullptr) { - return; -@@ -747,7 +755,7 @@ void ContainerManagerServiceImpl::PackContainerStatsFilesystemUsage( - ERROR("Failed to get container filesystem usage"); - } - -- SetFsUsage(fs_usage, container); -+ SetFsUsage(fs_usage, timestamp, container); - free_imagetool_fs_info(fs_usage); - } - -@@ -771,21 +779,23 @@ void ContainerManagerServiceImpl::ContainerStatsToGRPC( - if (error.NotEmpty()) { - return; - } -- PackContainerStatsFilesystemUsage(response->container_stats[i]->id, response->container_stats[i]->image_type, -- container); - -+ int64_t timestamp = util_get_now_time_nanos(); -+ PackContainerStatsFilesystemUsage(response->container_stats[i]->id, response->container_stats[i]->image_type, -+ timestamp, container); - if (response->container_stats[i]->mem_used != 0u) { - uint64_t workingset = response->container_stats[i]->mem_used; - if (response->container_stats[i]->inactive_file_total < response->container_stats[i]->mem_used) { - workingset = response->container_stats[i]->mem_used - response->container_stats[i]->inactive_file_total; - } - container->mutable_memory()->mutable_working_set_bytes()->set_value(workingset); -+ container->mutable_memory()->set_timestamp(timestamp); - } - - if (response->container_stats[i]->cpu_use_nanos != 0u) { - container->mutable_cpu()->mutable_usage_core_nano_seconds()->set_value( - response->container_stats[i]->cpu_use_nanos); -- container->mutable_cpu()->set_timestamp((int64_t)(response->container_stats[i]->cpu_system_use)); -+ container->mutable_cpu()->set_timestamp(timestamp); - } - - containerstats->push_back(move(container)); -diff --git a/src/daemon/entry/cri/cri_container_manager_service_impl.h b/src/daemon/entry/cri/cri_container_manager_service_impl.h -index 49551469..d08d9124 100644 ---- a/src/daemon/entry/cri/cri_container_manager_service_impl.h -+++ b/src/daemon/entry/cri/cri_container_manager_service_impl.h -@@ -103,9 +103,10 @@ private: - Errors &error); - void PackContainerStatsAttributes(const char *id, std::unique_ptr &container, - Errors &error); -- void PackContainerStatsFilesystemUsage(const char *id, const char *image_type, -+ void PackContainerStatsFilesystemUsage(const char *id, const char *image_type, int64_t timestamp, - std::unique_ptr &container); -- void SetFsUsage(const imagetool_fs_info *fs_usage, std::unique_ptr &container); -+ void SetFsUsage(const imagetool_fs_info *fs_usage, int64_t timestamp, -+ std::unique_ptr &container); - void ContainerStatusToGRPC(container_inspect *inspect, - std::unique_ptr &contStatus, Errors &error); - void PackContainerImageToStatus(container_inspect *inspect, --- -2.25.1 - diff --git a/0045-rollback-setuped-network-if-mult-network-failed.patch b/0045-rollback-setuped-network-if-mult-network-failed.patch deleted file mode 100644 index 83ac187..0000000 --- a/0045-rollback-setuped-network-if-mult-network-failed.patch +++ /dev/null @@ -1,275 +0,0 @@ -From e5304673ad2069b98256a942d13f959856578383 Mon Sep 17 00:00:00 2001 -From: haozi007 -Date: Tue, 23 Feb 2021 19:42:43 +0800 -Subject: [PATCH 45/53] rollback setuped network if mult-network failed - -Signed-off-by: haozi007 ---- - src/daemon/entry/cri/cni_network_plugin.cc | 121 ++++++++++----------- - src/daemon/entry/cri/cni_network_plugin.h | 2 +- - 2 files changed, 56 insertions(+), 67 deletions(-) - -diff --git a/src/daemon/entry/cri/cni_network_plugin.cc b/src/daemon/entry/cri/cni_network_plugin.cc -index b764b2a4..de599361 100644 ---- a/src/daemon/entry/cri/cni_network_plugin.cc -+++ b/src/daemon/entry/cri/cni_network_plugin.cc -@@ -382,32 +382,33 @@ void CniNetworkPlugin::Status(Errors &err) - CheckInitialized(err); - } - -- -+// return: represent need rollback - bool CniNetworkPlugin::SetupMultNetworks(const std::string &ns, const std::string &defaultInterface, - const std::string &name, - const std::string &netnsPath, const std::string &podSandboxID, - const std::map &annotations, - const std::map &options, Errors &err) - { -- bool ret = false; - int defaultIdx = -1; - size_t len = 0; -+ struct result *preResult = nullptr; -+ CNINetwork *useDefaultNet = nullptr; -+ bool ret = true; - cri_pod_network_element **networks = CRIHelpers::GetNetworkPlaneFromPodAnno(annotations, &len, err); - if (err.NotEmpty()) { - ERROR("Couldn't get network plane from pod annotations: %s", err.GetCMessage()); - err.Errorf("Couldn't get network plane from pod annotations: %s", err.GetCMessage()); -- goto cleanup; -+ return false; - } - - for (size_t i = 0; i < len; i++) { - if (networks[i] == nullptr || networks[i]->name == nullptr || networks[i]->interface == nullptr) { - continue; - } -- struct result *preResult = nullptr; - auto netIter = m_mutlNetworks.find(networks[i]->name); - if (netIter == m_mutlNetworks.end()) { - err.Errorf("Cannot found user defined net: %s", networks[i]->name); -- break; -+ goto cleanup; - } - if (defaultInterface == networks[i]->interface) { - defaultIdx = i; -@@ -416,32 +417,32 @@ bool CniNetworkPlugin::SetupMultNetworks(const std::string &ns, const std::strin - AddToNetwork((netIter->second).get(), name, ns, networks[i]->interface, podSandboxID, netnsPath, annotations, options, - &preResult, err); - free_result(preResult); -+ preResult = nullptr; - if (err.NotEmpty()) { - ERROR("Do setup user defined net: %s, failed: %s", networks[i]->name, err.GetCMessage()); -- break; -+ goto cleanup; - } -- INFO("Setup user defained net: %s success", networks[i]->name); -+ INFO("Setup user defined net: %s success", networks[i]->name); - } - -+ useDefaultNet = m_defaultNetwork.get(); - // mask default network pod, if user defined net use same interface - if (defaultIdx >= 0) { - auto netIter = m_mutlNetworks.find(networks[defaultIdx]->name); - if (netIter == m_mutlNetworks.end()) { -- err.Errorf("Cannot found user defined net: %s", networks[defaultIdx]->name); -+ err.Errorf("Cannot default net: %s", networks[defaultIdx]->name); - goto cleanup; - } -- -- struct result *preResult = nullptr; -- AddToNetwork((netIter->second).get(), name, ns, networks[defaultIdx]->interface, podSandboxID, netnsPath, annotations, -- options, &preResult, err); -- free_result(preResult); -- if (err.NotEmpty()) { -- ERROR("Do setup user defined net: %s, failed: %s", networks[defaultIdx]->name, err.GetCMessage()); -- goto cleanup; -- } -- INFO("Setup default net: %s success", networks[defaultIdx]->name); -- ret = true; -+ useDefaultNet = (netIter->second).get(); -+ } -+ AddToNetwork(useDefaultNet, name, ns, defaultInterface, podSandboxID, netnsPath, annotations, options, &preResult, err); -+ free_result(preResult); -+ if (err.NotEmpty()) { -+ ERROR("Setup default net failed: %s", err.GetCMessage()); -+ goto cleanup; - } -+ INFO("Setup default net: %s success", useDefaultNet->GetName().c_str()); -+ ret = false; - cleanup: - free_cri_pod_network(networks, len); - return ret; -@@ -489,8 +490,8 @@ void CniNetworkPlugin::SetUpPod(const std::string &ns, const std::string &name, - return; - } - -- struct result *preResult = nullptr; - if (m_loNetwork != nullptr) { -+ struct result *preResult = nullptr; - AddToNetwork(m_loNetwork.get(), name, ns, interfaceName, id, netnsPath, annotations, options, &preResult, err); - free_result(preResult); - preResult = nullptr; -@@ -506,38 +507,32 @@ void CniNetworkPlugin::SetUpPod(const std::string &ns, const std::string &name, - return; - } - -- bool setedDefaultNet = SetupMultNetworks(ns, interfaceName, name, netnsPath, id, annotations, options, err); -- if (err.NotEmpty()) { -- goto unlock; -- } -- -- if (setedDefaultNet) { -- goto unlock; -- } -- -- AddToNetwork(m_defaultNetwork.get(), name, ns, interfaceName, id, netnsPath, annotations, options, &preResult, err); -- free_result(preResult); -- if (err.NotEmpty()) { -- ERROR("Error while adding to cni network: %s", err.GetCMessage()); -+ bool needRollback = SetupMultNetworks(ns, interfaceName, name, netnsPath, id, annotations, options, err); -+ if (needRollback && err.NotEmpty()) { -+ Errors tmpErr; -+ TearDownMultNetworks(ns, interfaceName, name, netnsPath, id, annotations, tmpErr); -+ if (tmpErr.NotEmpty()) { -+ err.AppendError(tmpErr.GetMessage()); -+ } - } - --unlock: - UnlockNetworkMap(err); - } - --bool CniNetworkPlugin::TearDownMultNetworks(const std::string &ns, const std::string &defaultInterface, -+void CniNetworkPlugin::TearDownMultNetworks(const std::string &ns, const std::string &defaultInterface, - const std::string &name, - const std::string &netnsPath, const std::string &podSandboxID, const std::map &annotations, - Errors &err) - { -- bool ret = false; - int defaultIdx = -1; - size_t len = 0; -+ CNINetwork *useDefaultNet = nullptr; -+ Errors tmpErr; - cri_pod_network_element **networks = CRIHelpers::GetNetworkPlaneFromPodAnno(annotations, &len, err); - if (err.NotEmpty()) { - ERROR("Couldn't get network plane from pod annotations: %s", err.GetCMessage()); - err.Errorf("Couldn't get network plane from pod annotations: %s", err.GetCMessage()); -- goto cleanup; -+ return; - } - - for (size_t i = 0; i < len; i++) { -@@ -553,14 +548,18 @@ bool CniNetworkPlugin::TearDownMultNetworks(const std::string &ns, const std::st - defaultIdx = i; - continue; - } -- DeleteFromNetwork((netIter->second).get(), name, ns, networks[i]->interface, podSandboxID, netnsPath, annotations, err); -- if (err.NotEmpty()) { -- ERROR("Do teardown user defined net: %s, failed: %s", networks[i]->name, err.GetCMessage()); -- break; -+ DeleteFromNetwork((netIter->second).get(), name, ns, networks[i]->interface, podSandboxID, netnsPath, annotations, -+ tmpErr); -+ if (tmpErr.NotEmpty()) { -+ ERROR("Do teardown user defined net: %s, failed: %s", networks[i]->name, tmpErr.GetCMessage()); -+ err.AppendError(tmpErr.GetMessage()); -+ tmpErr.Clear(); -+ continue; - } - INFO("Teardown user defained net: %s success", networks[i]->name); - } - -+ useDefaultNet = m_defaultNetwork.get(); - // mask default network pod, if user defined net use same interface - if (defaultIdx >= 0) { - auto netIter = m_mutlNetworks.find(networks[defaultIdx]->name); -@@ -568,19 +567,18 @@ bool CniNetworkPlugin::TearDownMultNetworks(const std::string &ns, const std::st - err.Errorf("Cannot found user defined net: %s", networks[defaultIdx]->name); - goto cleanup; - } -- -- DeleteFromNetwork((netIter->second).get(), name, ns, networks[defaultIdx]->interface, podSandboxID, netnsPath, -- annotations, err); -- if (err.NotEmpty()) { -- ERROR("Do teardown user defined net: %s, failed: %s", networks[defaultIdx]->name, err.GetCMessage()); -- goto cleanup; -- } -- INFO("Teardown default net: %s success", networks[defaultIdx]->name); -- ret = true; -+ useDefaultNet = (netIter->second).get(); -+ } -+ DeleteFromNetwork(useDefaultNet, name, ns, defaultInterface, podSandboxID, netnsPath, annotations, tmpErr); -+ if (tmpErr.NotEmpty()) { -+ ERROR("Teardown default net: %s, failed: %s", useDefaultNet->GetName().c_str(), tmpErr.GetCMessage()); -+ err.AppendError(tmpErr.GetMessage()); -+ goto cleanup; - } -+ INFO("Teardown default net: %s success", useDefaultNet->GetName().c_str()); -+ - cleanup: - free_cri_pod_network(networks, len); -- return ret; - } - - void CniNetworkPlugin::TearDownPod(const std::string &ns, const std::string &name, const std::string &interfaceName, -@@ -605,21 +603,11 @@ void CniNetworkPlugin::TearDownPod(const std::string &ns, const std::string &nam - return; - } - -- bool defaultNetDone = TearDownMultNetworks(ns, interfaceName, name, netnsPath, id, annotations, err); -- if (defaultNetDone) { -- goto unlock; -- } -+ TearDownMultNetworks(ns, interfaceName, name, netnsPath, id, annotations, err); - if (err.NotEmpty()) { - WARN("Teardown user defined networks failed: %s", err.GetCMessage()); - } - -- DeleteFromNetwork(m_defaultNetwork.get(), name, ns, interfaceName, id, netnsPath, annotations, tmpErr); -- if (tmpErr.NotEmpty()) { -- WARN("Teardown default network failed: %s", tmpErr.GetCMessage()); -- err.AppendError(tmpErr.GetMessage()); -- } -- --unlock: - UnlockNetworkMap(err); - } - -@@ -801,7 +789,8 @@ static void GetExtensionCNIArgs(const std::map &annota - // get cni multinetwork extension - auto iter = annotations.find(CRIHelpers::Constants::CNI_MUTL_NET_EXTENSION_KEY); - if (iter != annotations.end()) { -- if (!CheckCNIArgValue(iter->second)) { -+ // args value must do not have ';' -+ if (iter->second.find(';') != std::string::npos) { - WARN("Ignore: invalid multinetwork cni args: %s", iter->second.c_str()); - } else { - args[CRIHelpers::Constants::CNI_MUTL_NET_EXTENSION_ARGS_KEY] = iter->second; -@@ -817,9 +806,9 @@ static void GetExtensionCNIArgs(const std::map &annota - continue; - } - auto strs = CXXUtils::Split(work.second, '='); -- iter = annotations.find(work.first); -- if (iter != annotations.end()) { -- WARN("Ignore: Same key cni args: %s", work.first.c_str()); -+ iter = args.find(strs[0]); -+ if (iter != args.end()) { -+ WARN("Ignore: Same key cni args: %s", work.second.c_str()); - continue; - } - args[strs[0]] = strs[1]; -diff --git a/src/daemon/entry/cri/cni_network_plugin.h b/src/daemon/entry/cri/cni_network_plugin.h -index f545930f..8d51a94d 100644 ---- a/src/daemon/entry/cri/cni_network_plugin.h -+++ b/src/daemon/entry/cri/cni_network_plugin.h -@@ -167,7 +167,7 @@ private: - const std::string &netnsPath, const std::string &podSandboxID, const std::map &annotations, - const std::map &options, Errors &err); - -- bool TearDownMultNetworks(const std::string &ns, const std::string &defaultInterface, const std::string &name, -+ void TearDownMultNetworks(const std::string &ns, const std::string &defaultInterface, const std::string &name, - const std::string &netnsPath, const std::string &podSandboxID, const std::map &annotations, - Errors &err); - --- -2.25.1 - diff --git a/0046-add-testcase-for-rollback-mutlnetworks.patch b/0046-add-testcase-for-rollback-mutlnetworks.patch deleted file mode 100644 index b1c4860..0000000 --- a/0046-add-testcase-for-rollback-mutlnetworks.patch +++ /dev/null @@ -1,242 +0,0 @@ -From 389be7c170c28b24bfe762027e235f6fa986ac07 Mon Sep 17 00:00:00 2001 -From: haozi007 -Date: Wed, 24 Feb 2021 17:11:28 +0800 -Subject: [PATCH 46/53] add testcase for rollback mutlnetworks - -Signed-off-by: haozi007 ---- - CI/test_cases/container_cases/cni_test.sh | 85 ++++++++++++++++++- - .../criconfigs/bins/isulad-cni | 4 +- - .../container_cases/criconfigs/bins/wrong-cni | 25 ++++++ - .../criconfigs/mock_wrong.json | 9 ++ - .../criconfigs/mutl_wrong_net_pod.json | 14 +++ - CI/test_cases/helpers.sh | 2 +- - 6 files changed, 132 insertions(+), 7 deletions(-) - create mode 100755 CI/test_cases/container_cases/criconfigs/bins/wrong-cni - create mode 100644 CI/test_cases/container_cases/criconfigs/mock_wrong.json - create mode 100644 CI/test_cases/container_cases/criconfigs/mutl_wrong_net_pod.json - -diff --git a/CI/test_cases/container_cases/cni_test.sh b/CI/test_cases/container_cases/cni_test.sh -index c9e1e1ac..093178d6 100644 ---- a/CI/test_cases/container_cases/cni_test.sh -+++ b/CI/test_cases/container_cases/cni_test.sh -@@ -177,6 +177,7 @@ function new_cni_config() - - function check_annotation() - { -+ rm -f /etc/cni/net.d/* - cp ${data_path}/mock.json /etc/cni/net.d/bridge.json - sync;sync; - tail $ISUALD_LOG -@@ -199,19 +200,82 @@ function check_annotation() - fi - - basepath=/tmp/cnilogs/ -- cat ${basepath}/${sid}.env | grep CNI_MUTLINET_EXTENSION -+ cat ${basepath}/${sid}_eth0.env | grep CNI_MUTLINET_EXTENSION - if [ $? -ne 0 ];then - msg_err "lost extension for mutl network args" - TC_RET_T=$(($TC_RET_T+1)) - fi -- cat ${basepath}/${sid}.env | grep "extension=first" -+ cat ${basepath}/${sid}_eth0.env | grep "extension=first" - if [ $? -ne 0 ];then - msg_err "lost extension for first cni args" - TC_RET_T=$(($TC_RET_T+1)) - fi -- cat ${basepath}/${sid}.env | grep "extension=second" -+ cat ${basepath}/${sid}_eth0.env | grep "extension=second" -+ if [ $? -eq 0 ];then -+ msg_err "same extension key write to cni args" -+ TC_RET_T=$(($TC_RET_T+1)) -+ fi -+ -+ crictl stopp $sid - if [ $? -ne 0 ];then -- msg_err "lost extension for second cni args" -+ msg_err "stop sandbox failed" -+ TC_RET_T=$(($TC_RET_T+1)) -+ fi -+ -+ crictl rmp $sid -+ if [ $? -ne 0 ];then -+ msg_err "rm sandbox failed" -+ TC_RET_T=$(($TC_RET_T+1)) -+ fi -+ -+ return $TC_RET_T -+} -+ -+function check_rollback() -+{ -+ rm -f /etc/cni/net.d/* -+ cp ${data_path}/mock.json /etc/cni/net.d/bridge.json -+ sed -i "s#mock#default#g" /etc/cni/net.d/bridge.json -+ cp ${data_path}/mock.json /etc/cni/net.d/ -+ cp ${data_path}/mock_wrong.json /etc/cni/net.d/ -+ sync;sync; -+ tail $ISUALD_LOG -+ # wait cni updated -+ s=`date "+%s"` -+ for ((i=0;i<30;i++)); do -+ sleep 1 -+ cur=`date "+%s"` -+ let "t=cur-s" -+ if [ $t -gt 6 ];then -+ break -+ fi -+ done -+ tail $ISUALD_LOG -+ -+ crictl runp ${data_path}/mutl_wrong_net_pod.json -+ if [ $? -eq 0 ]; then -+ msg_err "Run sandbox success with invalid cni configs" -+ TC_RET_T=$(($TC_RET_T+1)) -+ fi -+ sid=`crictl pods -q | head -1` -+ -+ basepath=/tmp/cnilogs/ -+ -+ cat ${basepath}/${sid}_eth0.env | grep "CNI_COMMAND=DEL" -+ if [ $? -ne 0 ];then -+ msg_err "do not rollback for eth0" -+ TC_RET_T=$(($TC_RET_T+1)) -+ fi -+ -+ cat ${basepath}/${sid}_eth1.env | grep "CNI_COMMAND=DEL" -+ if [ $? -ne 0 ];then -+ msg_err "do not rollback for eth1" -+ TC_RET_T=$(($TC_RET_T+1)) -+ fi -+ -+ cat ${basepath}/${sid}_eth2.env | grep "CNI_COMMAND=DEL" -+ if [ $? -ne 0 ];then -+ msg_err "do not rollback for eth2" - TC_RET_T=$(($TC_RET_T+1)) - fi - -@@ -227,6 +291,9 @@ function check_annotation() - TC_RET_T=$(($TC_RET_T+1)) - fi - -+ rm -f /etc/cni/net.d/* -+ cp ${data_path}/bridge.json /etc/cni/net.d/ -+ - return $TC_RET_T - } - -@@ -247,6 +314,16 @@ if [ $? -ne 0 ];then - let "ret=$ret + 1" - fi - -+check_annotation -+if [ $? -ne 0 ];then -+ let "ret=$ret + 1" -+fi -+ -+check_rollback -+if [ $? -ne 0 ];then -+ let "ret=$ret + 1" -+fi -+ - do_post - - show_result $ret "cni base test" -diff --git a/CI/test_cases/container_cases/criconfigs/bins/isulad-cni b/CI/test_cases/container_cases/criconfigs/bins/isulad-cni -index e4b7e598..be48b77a 100755 ---- a/CI/test_cases/container_cases/criconfigs/bins/isulad-cni -+++ b/CI/test_cases/container_cases/criconfigs/bins/isulad-cni -@@ -8,8 +8,8 @@ envpath=${basepath}/${secs}.env - - env | grep CNI_CONTAINERID >/dev/null 2>&1 - if [ $? -eq 0 ];then -- confpath=${basepath}/${CNI_CONTAINERID}.netconf -- envpath=${basepath}/${CNI_CONTAINERID}.env -+ confpath=${basepath}/${CNI_CONTAINERID}_${CNI_IFNAME}.netconf -+ envpath=${basepath}/${CNI_CONTAINERID}_${CNI_IFNAME}.env - fi - - read -r line -diff --git a/CI/test_cases/container_cases/criconfigs/bins/wrong-cni b/CI/test_cases/container_cases/criconfigs/bins/wrong-cni -new file mode 100755 -index 00000000..558c3401 ---- /dev/null -+++ b/CI/test_cases/container_cases/criconfigs/bins/wrong-cni -@@ -0,0 +1,25 @@ -+#!/bin/bash -+ -+basepath=/tmp/cnilogs/ -+mkdir -p $basepath -+secs=`date "+%s"` -+confpath=${basepath}/${secs}.netconf -+envpath=${basepath}/${secs}.env -+ -+env | grep CNI_CONTAINERID >/dev/null 2>&1 -+if [ $? -eq 0 ];then -+ confpath=${basepath}/${CNI_CONTAINERID}_${CNI_IFNAME}.netconf -+ envpath=${basepath}/${CNI_CONTAINERID}_${CNI_IFNAME}.env -+fi -+ -+read -r line -+echo $line > ${confpath} -+ -+env > ${envpath} -+ -+echo "{ -+ \"cniVersion\": \"0.3.1\", -+ \"dns\": {} -+}" -+ -+exit 1 -\ No newline at end of file -diff --git a/CI/test_cases/container_cases/criconfigs/mock_wrong.json b/CI/test_cases/container_cases/criconfigs/mock_wrong.json -new file mode 100644 -index 00000000..7b2a92e4 ---- /dev/null -+++ b/CI/test_cases/container_cases/criconfigs/mock_wrong.json -@@ -0,0 +1,9 @@ -+{ -+ "cniVersion": "0.3.1", -+ "name": "wrong", -+ "type": "wrong-cni", -+ "ipam": { -+ "type": "wrong-cni", -+ "subnet": "10.8.0.0/16" -+ } -+} -diff --git a/CI/test_cases/container_cases/criconfigs/mutl_wrong_net_pod.json b/CI/test_cases/container_cases/criconfigs/mutl_wrong_net_pod.json -new file mode 100644 -index 00000000..01a6096c ---- /dev/null -+++ b/CI/test_cases/container_cases/criconfigs/mutl_wrong_net_pod.json -@@ -0,0 +1,14 @@ -+{ -+ "port_mappings":[{"protocol": 1, "container_port": 80, "host_port": 8080}], -+ "metadata": { -+ "name": "test", -+ "namespace": "default", -+ "attempt": 1, -+ "uid": "hdishd83djaidwnduwk28bcsb" -+ }, -+ "linux": { -+ }, -+ "annotations": { -+ "network.alpha.kubernetes.io/network": "[{\"name\":\"mock\",\"interface\":\"eth1\"},{\"name\":\"wrong\",\"interface\":\"eth2\"}]" -+ } -+} -diff --git a/CI/test_cases/helpers.sh b/CI/test_cases/helpers.sh -index 5a782281..fe256e8c 100755 ---- a/CI/test_cases/helpers.sh -+++ b/CI/test_cases/helpers.sh -@@ -174,7 +174,7 @@ function init_cni_conf() - mkdir -p /etc/cni/net.d/ - rm -rf /etc/cni/net.d/* - mkdir -p /opt/cni/bin -- cp $dtpath/bins/isulad-cni /opt/cni/bin -+ cp $dtpath/bins/* /opt/cni/bin/ - cp $dtpath/good.conflist /etc/cni/net.d/ - - check_valgrind_log --- -2.25.1 - diff --git a/0047-log-adjust-log-level-from-EVENT-to-WARN-to-reduce-lo.patch b/0047-log-adjust-log-level-from-EVENT-to-WARN-to-reduce-lo.patch deleted file mode 100644 index e47b058..0000000 --- a/0047-log-adjust-log-level-from-EVENT-to-WARN-to-reduce-lo.patch +++ /dev/null @@ -1,328 +0,0 @@ -From 9a605646c7e20773c52799ee4abcff20e26071de Mon Sep 17 00:00:00 2001 -From: Li Feng -Date: Sat, 27 Feb 2021 14:19:24 +0800 -Subject: [PATCH 47/53] log: adjust log level from EVENT to WARN to reduce log - number - -Signed-off-by: Li Feng ---- - src/cmd/isulad/main.c | 2 +- - .../connect/grpc/runtime_image_service.cc | 13 ++++----- - .../connect/grpc/runtime_runtime_service.cc | 28 +++++++++---------- - src/daemon/executor/container_cb/list.c | 2 +- - src/daemon/modules/image/image.c | 12 ++++---- - .../modules/image/oci/oci_common_operators.c | 4 +-- - src/utils/cutils/utils_fs.c | 2 +- - 7 files changed, 31 insertions(+), 32 deletions(-) - -diff --git a/src/cmd/isulad/main.c b/src/cmd/isulad/main.c -index ce93eaa0..cb2b71a2 100644 ---- a/src/cmd/isulad/main.c -+++ b/src/cmd/isulad/main.c -@@ -1515,7 +1515,7 @@ int main(int argc, char **argv) - clock_gettime(CLOCK_MONOTONIC, &t_end); - use_time = (double)(t_end.tv_sec - t_start.tv_sec) * (double)1000000000 + (double)(t_end.tv_nsec - t_start.tv_nsec); - use_time /= 1000000000; -- INFO("iSulad successfully booted in %.3f s", use_time); -+ EVENT("iSulad successfully booted in %.3f s", use_time); - #ifdef GRPC_CONNECTOR - INFO("Starting grpc server..."); - #else -diff --git a/src/daemon/entry/connect/grpc/runtime_image_service.cc b/src/daemon/entry/connect/grpc/runtime_image_service.cc -index 8e740caf..23447baf 100644 ---- a/src/daemon/entry/connect/grpc/runtime_image_service.cc -+++ b/src/daemon/entry/connect/grpc/runtime_image_service.cc -@@ -21,7 +21,6 @@ - #include "cri_helpers.h" - #include "cri_image_manager_service_impl.h" - -- - RuntimeImageServiceImpl::RuntimeImageServiceImpl() - { - std::unique_ptr service(new ImageManagerServiceImpl); -@@ -55,7 +54,7 @@ grpc::Status RuntimeImageServiceImpl::ListImages(grpc::ServerContext *context, - std::vector> images; - Errors error; - -- EVENT("Event: {Object: CRI, Type: Listing all images}"); -+ WARN("Event: {Object: CRI, Type: Listing all images}"); - - rService->ListImages(request->filter(), &images, error); - if (!error.Empty()) { -@@ -71,7 +70,7 @@ grpc::Status RuntimeImageServiceImpl::ListImages(grpc::ServerContext *context, - *image = *(iter->get()); - } - -- EVENT("Event: {Object: CRI, Type: Listed all images}"); -+ WARN("Event: {Object: CRI, Type: Listed all images}"); - - return grpc::Status::OK; - } -@@ -83,7 +82,7 @@ grpc::Status RuntimeImageServiceImpl::ImageStatus(grpc::ServerContext *context, - std::unique_ptr image_info = nullptr; - Errors error; - -- EVENT("Event: {Object: CRI, Type: Statusing image %s}", request->image().image().c_str()); -+ WARN("Event: {Object: CRI, Type: Statusing image %s}", request->image().image().c_str()); - - image_info = rService->ImageStatus(request->image(), error); - if (!error.Empty() && !CRIHelpers::IsImageNotFoundError(error.GetMessage())) { -@@ -97,7 +96,7 @@ grpc::Status RuntimeImageServiceImpl::ImageStatus(grpc::ServerContext *context, - *image = *image_info; - } - -- EVENT("Event: {Object: CRI, Type: Statused image %s}", request->image().image().c_str()); -+ WARN("Event: {Object: CRI, Type: Statused image %s}", request->image().image().c_str()); - - return grpc::Status::OK; - } -@@ -109,7 +108,7 @@ grpc::Status RuntimeImageServiceImpl::ImageFsInfo(grpc::ServerContext *context, - std::vector> usages; - Errors error; - -- EVENT("Event: {Object: CRI, Type: Statusing image fs info}"); -+ WARN("Event: {Object: CRI, Type: Statusing image fs info}"); - - rService->ImageFsInfo(&usages, error); - if (!error.Empty()) { -@@ -126,7 +125,7 @@ grpc::Status RuntimeImageServiceImpl::ImageFsInfo(grpc::ServerContext *context, - *fs_info = *(iter->get()); - } - -- EVENT("Event: {Object: CRI, Type: Statused image fs info}"); -+ WARN("Event: {Object: CRI, Type: Statused image fs info}"); - return grpc::Status::OK; - } - -diff --git a/src/daemon/entry/connect/grpc/runtime_runtime_service.cc b/src/daemon/entry/connect/grpc/runtime_runtime_service.cc -index c09153eb..c9702401 100644 ---- a/src/daemon/entry/connect/grpc/runtime_runtime_service.cc -+++ b/src/daemon/entry/connect/grpc/runtime_runtime_service.cc -@@ -50,8 +50,8 @@ void RuntimeRuntimeServiceImpl::Init(Network::NetworkPluginConf mConf, isulad_da - Network::ProbeNetworkPlugins(mConf.GetPluginConfDir(), mConf.GetPluginBinDir(), &plugins); - - std::shared_ptr chosen { nullptr }; -- Network::InitNetworkPlugin(&plugins, mConf.GetPluginName(), mConf.GetHairpinMode(), -- mConf.GetNonMasqueradeCIDR(), mConf.GetMTU(), &chosen, err); -+ Network::InitNetworkPlugin(&plugins, mConf.GetPluginName(), mConf.GetHairpinMode(), mConf.GetNonMasqueradeCIDR(), -+ mConf.GetMTU(), &chosen, err); - if (err.NotEmpty()) { - ERROR("Init network plugin failed: %s", err.GetCMessage()); - return; -@@ -181,7 +181,7 @@ grpc::Status RuntimeRuntimeServiceImpl::ListContainers(grpc::ServerContext *cont - { - Errors error; - -- EVENT("Event: {Object: CRI, Type: Listing all Container}"); -+ WARN("Event: {Object: CRI, Type: Listing all Container}"); - - std::vector> containers; - rService->ListContainers(request->has_filter() ? &request->filter() : nullptr, &containers, error); -@@ -199,7 +199,7 @@ grpc::Status RuntimeRuntimeServiceImpl::ListContainers(grpc::ServerContext *cont - *container = *(iter->get()); - } - -- EVENT("Event: {Object: CRI, Type: Listed all Container}"); -+ WARN("Event: {Object: CRI, Type: Listed all Container}"); - - return grpc::Status::OK; - } -@@ -210,7 +210,7 @@ grpc::Status RuntimeRuntimeServiceImpl::ListContainerStats(grpc::ServerContext * - { - Errors error; - -- EVENT("Event: {Object: CRI, Type: Listing all Container stats}"); -+ WARN("Event: {Object: CRI, Type: Listing all Container stats}"); - - std::vector> containers; - rService->ListContainerStats(request->has_filter() ? &request->filter() : nullptr, &containers, error); -@@ -228,7 +228,7 @@ grpc::Status RuntimeRuntimeServiceImpl::ListContainerStats(grpc::ServerContext * - *container = *(iter->get()); - } - -- EVENT("Event: {Object: CRI, Type: Listed all Container stats}"); -+ WARN("Event: {Object: CRI, Type: Listed all Container stats}"); - - return grpc::Status::OK; - } -@@ -239,7 +239,7 @@ grpc::Status RuntimeRuntimeServiceImpl::ContainerStatus(grpc::ServerContext *con - { - Errors error; - -- EVENT("Event: {Object: CRI, Type: Statusing Container: %s}", request->container_id().c_str()); -+ WARN("Event: {Object: CRI, Type: Statusing Container: %s}", request->container_id().c_str()); - - std::unique_ptr contStatus = - rService->ContainerStatus(request->container_id(), error); -@@ -249,7 +249,7 @@ grpc::Status RuntimeRuntimeServiceImpl::ContainerStatus(grpc::ServerContext *con - } - *(reply->mutable_status()) = *contStatus; - -- EVENT("Event: {Object: CRI, Type: Statused Container: %s}", request->container_id().c_str()); -+ WARN("Event: {Object: CRI, Type: Statused Container: %s}", request->container_id().c_str()); - - return grpc::Status::OK; - } -@@ -339,7 +339,7 @@ grpc::Status RuntimeRuntimeServiceImpl::PodSandboxStatus(grpc::ServerContext *co - { - Errors error; - -- EVENT("Event: {Object: CRI, Type: Status Pod: %s}", request->pod_sandbox_id().c_str()); -+ WARN("Event: {Object: CRI, Type: Status Pod: %s}", request->pod_sandbox_id().c_str()); - - std::unique_ptr podStatus; - podStatus = rService->PodSandboxStatus(request->pod_sandbox_id(), error); -@@ -350,7 +350,7 @@ grpc::Status RuntimeRuntimeServiceImpl::PodSandboxStatus(grpc::ServerContext *co - } - *(reply->mutable_status()) = *podStatus; - -- EVENT("Event: {Object: CRI, Type: Statused Pod: %s}", request->pod_sandbox_id().c_str()); -+ WARN("Event: {Object: CRI, Type: Statused Pod: %s}", request->pod_sandbox_id().c_str()); - - return grpc::Status::OK; - } -@@ -361,7 +361,7 @@ grpc::Status RuntimeRuntimeServiceImpl::ListPodSandbox(grpc::ServerContext *cont - { - Errors error; - -- EVENT("Event: {Object: CRI, Type: Listing all Pods}"); -+ WARN("Event: {Object: CRI, Type: Listing all Pods}"); - - std::vector> pods; - rService->ListPodSandbox(request->has_filter() ? &request->filter() : nullptr, &pods, error); -@@ -378,7 +378,7 @@ grpc::Status RuntimeRuntimeServiceImpl::ListPodSandbox(grpc::ServerContext *cont - *pod = *(iter->get()); - } - -- EVENT("Event: {Object: CRI, Type: Listed all Pods}"); -+ WARN("Event: {Object: CRI, Type: Listed all Pods}"); - - return grpc::Status::OK; - } -@@ -470,7 +470,7 @@ grpc::Status RuntimeRuntimeServiceImpl::Status(grpc::ServerContext *context, - { - Errors error; - -- EVENT("Event: {Object: CRI, Type: Statusing daemon}"); -+ WARN("Event: {Object: CRI, Type: Statusing daemon}"); - - std::unique_ptr status = rService->Status(error); - if (status == nullptr || error.NotEmpty()) { -@@ -479,7 +479,7 @@ grpc::Status RuntimeRuntimeServiceImpl::Status(grpc::ServerContext *context, - } - *(reply->mutable_status()) = *status; - -- EVENT("Event: {Object: CRI, Type: Statused daemon}"); -+ WARN("Event: {Object: CRI, Type: Statused daemon}"); - - return grpc::Status::OK; - } -diff --git a/src/daemon/executor/container_cb/list.c b/src/daemon/executor/container_cb/list.c -index 34c1b956..d8f26328 100644 ---- a/src/daemon/executor/container_cb/list.c -+++ b/src/daemon/executor/container_cb/list.c -@@ -503,7 +503,7 @@ static container_container *get_container_info(const char *name, const struct li - - cont = containers_store_get(name); - if (cont == NULL) { -- ERROR("Container '%s' already removed", name); -+ ERROR("Container '%s' not exist", name); - return NULL; - } - cont_state = container_dup_state(cont->state); -diff --git a/src/daemon/modules/image/image.c b/src/daemon/modules/image/image.c -index 4563efea..8e663863 100644 ---- a/src/daemon/modules/image/image.c -+++ b/src/daemon/modules/image/image.c -@@ -392,7 +392,7 @@ int im_get_filesystem_info(const char *image_type, im_fs_info_response **respons - goto out; - } - -- EVENT("Event: {Object: get image filesystem info, Type: inspecting}"); -+ WARN("Event: {Object: get image filesystem info, Type: inspecting}"); - ret = q->ops->get_filesystem_info(response); - if (ret != 0) { - if (response != NULL && *response != NULL) { -@@ -402,7 +402,7 @@ int im_get_filesystem_info(const char *image_type, im_fs_info_response **respons - } - goto out; - } -- EVENT("Event: {Object: get image filesystem info, Type: inspected}"); -+ WARN("Event: {Object: get image filesystem info, Type: inspected}"); - - out: - return ret; -@@ -442,7 +442,7 @@ int im_get_container_filesystem_usage(const char *image_type, const char *id, im - request->name_id = util_strdup_s(id); - } - -- EVENT("Event: {Object: container \'%s\' filesystem info, Type: inspecting}", id != NULL ? id : ""); -+ WARN("Event: {Object: container \'%s\' filesystem info, Type: inspecting}", id != NULL ? id : ""); - ret = q->ops->container_fs_usage(request, &filesystemusage); - if (ret != 0) { - ERROR("Failed to get filesystem usage for container %s", id); -@@ -452,7 +452,7 @@ int im_get_container_filesystem_usage(const char *image_type, const char *id, im - - *fs_usage = filesystemusage; - filesystemusage = NULL; -- EVENT("Event: {Object: container \'%s\' filesystem info, Type: inspected}", id != NULL ? id : ""); -+ WARN("Event: {Object: container \'%s\' filesystem info, Type: inspected}", id != NULL ? id : ""); - - out: - free_im_container_fs_usage_request(request); -@@ -1597,7 +1597,7 @@ int im_inspect_image(const im_inspect_request *request, im_inspect_response **re - - image_ref = util_strdup_s(request->image.image); - -- EVENT("Event: {Object: %s, Type: image inspecting}", image_ref); -+ WARN("Event: {Object: %s, Type: image inspecting}", image_ref); - - bim_type = bim_query(image_ref); - if (bim_type == NULL) { -@@ -1619,7 +1619,7 @@ int im_inspect_image(const im_inspect_request *request, im_inspect_response **re - goto pack_response; - } - -- EVENT("Event: {Object: %s, Type: image inspected}", image_ref); -+ WARN("Event: {Object: %s, Type: image inspected}", image_ref); - - pack_response: - if (g_isulad_errmsg != NULL) { -diff --git a/src/daemon/modules/image/oci/oci_common_operators.c b/src/daemon/modules/image/oci/oci_common_operators.c -index aecb63d0..845e1fde 100644 ---- a/src/daemon/modules/image/oci/oci_common_operators.c -+++ b/src/daemon/modules/image/oci/oci_common_operators.c -@@ -431,7 +431,7 @@ int oci_summary_image(im_summary_request *request, im_summary_response *response - goto pack_response; - } - -- EVENT("Event: {Object: %s, Type: statusing image summary}", resolved_name); -+ WARN("Event: {Object: %s, Type: statusing image summary}", resolved_name); - - image_summary = storage_img_get_summary(resolved_name); - if (image_summary == NULL) { -@@ -444,7 +444,7 @@ int oci_summary_image(im_summary_request *request, im_summary_response *response - response->image_summary = image_summary; - image_summary = NULL; - -- EVENT("Event: {Object: %s, Type: statused image summary}", resolved_name); -+ WARN("Event: {Object: %s, Type: statused image summary}", resolved_name); - - pack_response: - free(resolved_name); -diff --git a/src/utils/cutils/utils_fs.c b/src/utils/cutils/utils_fs.c -index 788557f9..bbbf2d2d 100644 ---- a/src/utils/cutils/utils_fs.c -+++ b/src/utils/cutils/utils_fs.c -@@ -515,7 +515,7 @@ int util_mount(const char *src, const char *dst, const char *mtype, const char * - - if ((mntflags & MS_REMOUNT) != MS_REMOUNT) { - if (util_detect_mounted(dst)) { -- ERROR("mount dst %s had been mounted, skip mount", dst); -+ WARN("mount dst %s had been mounted, skip mount", dst); - ret = 0; - goto out; - } --- -2.25.1 - diff --git a/0048-isulad-shim-fix-shim-exit-bug.patch b/0048-isulad-shim-fix-shim-exit-bug.patch deleted file mode 100644 index f09455d..0000000 --- a/0048-isulad-shim-fix-shim-exit-bug.patch +++ /dev/null @@ -1,249 +0,0 @@ -From 358e79c5e21503348eae0f1b9e56206269060ec4 Mon Sep 17 00:00:00 2001 -From: gaohuatao -Date: Fri, 26 Feb 2021 04:37:03 -0500 -Subject: [PATCH 48/53] isulad-shim: fix shim exit bug - -Signed-off-by: gaohuatao ---- - src/cmd/isulad-shim/process.c | 3 +- - src/cmd/isulad-shim/process.h | 2 +- - src/cmd/isulad-shim/terminal.c | 109 ++++++++++++++++++++------------- - src/cmd/isulad-shim/terminal.h | 2 +- - 4 files changed, 70 insertions(+), 46 deletions(-) - -diff --git a/src/cmd/isulad-shim/process.c b/src/cmd/isulad-shim/process.c -index 3ac739b9..25e84fbd 100644 ---- a/src/cmd/isulad-shim/process.c -+++ b/src/cmd/isulad-shim/process.c -@@ -266,8 +266,7 @@ static void *do_io_copy(void *data) - fd_node_t *fn = ioc->fd_to; - for (; fn != NULL; fn = fn->next) { - if (fn->is_log) { -- shim_write_container_log_file(io_thd->terminal, ioc->id == stdid_out ? "stdout" : "stderr", buf, -- r_count); -+ shim_write_container_log_file(io_thd->terminal, ioc->id, buf, r_count); - } else { - int w_count = write_nointr_in_total(fn->fd, buf, r_count); - if (w_count < 0) { -diff --git a/src/cmd/isulad-shim/process.h b/src/cmd/isulad-shim/process.h -index c17a20b1..6e596551 100644 ---- a/src/cmd/isulad-shim/process.h -+++ b/src/cmd/isulad-shim/process.h -@@ -59,7 +59,7 @@ typedef struct { - io_copy_t *ioc; - bool shutdown; - bool is_stdin; -- log_terminal *terminal; -+ log_terminal *terminal;// just used by stdout and stderr - } io_thread_t; - - typedef struct process { -diff --git a/src/cmd/isulad-shim/terminal.c b/src/cmd/isulad-shim/terminal.c -index ac39539a..ed40ad5e 100644 ---- a/src/cmd/isulad-shim/terminal.c -+++ b/src/cmd/isulad-shim/terminal.c -@@ -30,19 +30,11 @@ - #include - - #include "common.h" -+#include "process.h" - --#define BUF_CACHE_SIZE (16 * 1024) -- --static ssize_t shim_write_nointr_lock(log_terminal *terminal, const void *buf, size_t count) --{ -- ssize_t ret; -- -- (void)pthread_rwlock_wrlock(&terminal->log_terminal_rwlock); -- ret = write_nointr_in_total(terminal->fd, buf, count); -- (void)pthread_rwlock_unlock(&terminal->log_terminal_rwlock); -- -- return ret; --} -+#define BUF_CACHE_SIZE (32 * 1024) -+#define STDOUT_STR "stdout" -+#define STDERR_STR "stderr" - - static int shim_rename_old_log_file(log_terminal *terminal) - { -@@ -137,23 +129,29 @@ static int64_t get_log_file_size(int fd) - - static int shim_json_data_write(log_terminal *terminal, const char *buf, int read_count) - { -- int ret; -+ int ret = 0; -+ int nret = 0; - int64_t available_space = -1; - int64_t file_size; - -+ (void)pthread_rwlock_wrlock(&terminal->log_terminal_rwlock); -+ -+ - file_size = get_log_file_size(terminal->fd); - if (file_size < 0) { -- return SHIM_ERR; -+ ret = -1; -+ goto out; - } - - available_space = terminal->log_maxsize - file_size; - if (read_count <= available_space) { -- return shim_write_nointr_lock(terminal, buf, read_count); -+ ret = write_nointr_in_total(terminal->fd, buf, read_count); -+ goto out; - } - -- ret = shim_dump_log_file(terminal); -- if (ret < 0) { -- return SHIM_ERR; -+ if (shim_dump_log_file(terminal) < 0) { -+ ret = -1; -+ goto out; - } - - /* -@@ -161,13 +159,18 @@ static int shim_json_data_write(log_terminal *terminal, const char *buf, int rea - * We have set the log file min size 16k, so the scenario of log_maxsize < read_count - * shouldn't happen, otherwise, discard some last bytes. - */ -- ret = shim_write_nointr_lock(terminal, buf, -+ nret = write_nointr_in_total(terminal->fd, buf, - terminal->log_maxsize < read_count ? terminal->log_maxsize : read_count); -- if (ret < 0) { -- return SHIM_ERR; -+ if (nret < 0) { -+ ret = -1; -+ goto out; - } - -- return (read_count - ret); -+ ret = read_count - nret; -+ -+out: -+ (void)pthread_rwlock_unlock(&terminal->log_terminal_rwlock); -+ return ret; - } - - static bool util_get_time_buffer(struct timespec *timestamp, char *timebuffer, size_t maxsize) -@@ -256,10 +259,18 @@ cleanup: - return ret; - } - --void shim_write_container_log_file(log_terminal *terminal, const char *type, char *buf, int read_count) -+// BUF_CACHE_SIZE must be larger than read_count of buf readed -+static char cache_out[BUF_CACHE_SIZE] = { 0 }; -+static char cache_err[BUF_CACHE_SIZE] = { 0 }; -+static int size_out = 0; -+static int size_err = 0; -+ -+// Just used by stdout stderr threads -+void shim_write_container_log_file(log_terminal *terminal, int type, char *buf, int read_count) - { -- static char cache[BUF_CACHE_SIZE]; -- static int size = 0; -+ char *cache = NULL; -+ int *size = NULL; -+ const char *type_str = NULL; - int upto, index; - int begin = 0; - int buf_readed = 0; -@@ -268,38 +279,52 @@ void shim_write_container_log_file(log_terminal *terminal, const char *type, cha - if (terminal == NULL) { - return; - } -+ switch (type) { -+ case stdid_out: -+ type_str = STDOUT_STR; -+ cache = cache_out; -+ size = &size_out; -+ break; -+ case stdid_err: -+ type_str = STDERR_STR; -+ cache = cache_err; -+ size = &size_err; -+ break; -+ default: -+ return; -+ } - - if (buf != NULL && read_count > 0) { -- if (read_count > (BUF_CACHE_SIZE - size)) { -+ if (read_count > (BUF_CACHE_SIZE - *size)) { - upto = BUF_CACHE_SIZE; - } else { -- upto = size + read_count; -+ upto = *size + read_count; - } - -- if (upto > size) { -- buf_readed = upto - size; -- memcpy(cache + size, buf, buf_readed); -+ if (upto > *size) { -+ buf_readed = upto - *size; -+ memcpy(cache + *size, buf, buf_readed); - buf_left = read_count - buf_readed; -- size += buf_readed; -+ *size += buf_readed; - } - } - -- if (size == 0) { -+ if (*size == 0) { - return; - } - -- for (index = 0; index < size; index++) { -+ for (index = 0; index < *size; index++) { - if (cache[index] == '\n') { -- (void)shim_logger_write(terminal, type, cache + begin, index - begin + 1); -+ (void)shim_logger_write(terminal, type_str, cache + begin, index - begin + 1); - begin = index + 1; - } - } - -- if (buf == NULL || (begin == 0 && size == BUF_CACHE_SIZE)) { -- if (begin < size) { -- (void)shim_logger_write(terminal, type, cache + begin, size - begin); -+ if (buf == NULL || (begin == 0 && *size == BUF_CACHE_SIZE)) { -+ if (begin < *size) { -+ (void)shim_logger_write(terminal, type_str, cache + begin, *size - begin); - begin = 0; -- size = 0; -+ *size = 0; - } - if (buf == NULL) { - return; -@@ -307,13 +332,13 @@ void shim_write_container_log_file(log_terminal *terminal, const char *type, cha - } - - if (begin > 0) { -- memcpy(cache, cache + begin, size - begin); -- size -= begin; -+ memcpy(cache, cache + begin, *size - begin); -+ *size -= begin; - } - - if (buf_left > 0) { -- memcpy(cache + size, buf + buf_readed, buf_left); -- size += buf_left; -+ memcpy(cache + *size, buf + buf_readed, buf_left); -+ *size += buf_left; - } - } - -diff --git a/src/cmd/isulad-shim/terminal.h b/src/cmd/isulad-shim/terminal.h -index d9ed8f1a..556117a0 100644 ---- a/src/cmd/isulad-shim/terminal.h -+++ b/src/cmd/isulad-shim/terminal.h -@@ -34,7 +34,7 @@ typedef struct { - pthread_rwlock_t log_terminal_rwlock; - } log_terminal; - --void shim_write_container_log_file(log_terminal *terminal, const char *type, char *buf, -+void shim_write_container_log_file(log_terminal *terminal, int type, char *buf, - int bytes_read); - - int shim_create_container_log_file(log_terminal *terminal); --- -2.25.1 - diff --git a/0049-support-pull-option-when-create-run-container.patch b/0049-support-pull-option-when-create-run-container.patch deleted file mode 100644 index be7d9ab..0000000 --- a/0049-support-pull-option-when-create-run-container.patch +++ /dev/null @@ -1,116 +0,0 @@ -From 4692715e4ef7e1ec5461b03940f85cac4af8b18e Mon Sep 17 00:00:00 2001 -From: WangFengTu -Date: Sat, 27 Feb 2021 10:44:26 +0800 -Subject: [PATCH 049/104] support --pull option when create/run container - -Signed-off-by: WangFengTu ---- - src/cmd/isula/base/create.c | 24 +++++++++++++++++++++++- - src/cmd/isula/base/create.h | 7 +++++++ - src/cmd/isula/base/run.c | 1 + - src/cmd/isula/client_arguments.h | 1 + - 4 files changed, 32 insertions(+), 1 deletion(-) - -diff --git a/src/cmd/isula/base/create.c b/src/cmd/isula/base/create.c -index a531fc0e..48dc29be 100644 ---- a/src/cmd/isula/base/create.c -+++ b/src/cmd/isula/base/create.c -@@ -59,6 +59,7 @@ struct client_arguments g_cmd_create_args = { - .custom_conf.health_timeout = 0, - .custom_conf.health_start_period = 0, - .custom_conf.health_retries = 0, -+ .pull = "missing" - }; - - static void request_pack_host_config_limit(const struct client_arguments *args, isula_host_config_t *hostconfig) -@@ -1268,9 +1269,17 @@ static int client_try_to_create(const struct client_arguments *args, const struc - goto out; - } - -+ if (strcmp(args->pull, "always") == 0) { -+ ret = client_pull(args); -+ if (ret != 0) { -+ goto out; -+ } -+ } -+ - ret = do_client_create(args, ops, request, response); - if (ret != 0) { -- if (response->errmsg == NULL || strstr(response->errmsg, IMAGE_NOT_FOUND_ERROR) == NULL) { -+ if (response->errmsg == NULL || strstr(response->errmsg, IMAGE_NOT_FOUND_ERROR) == NULL || -+ strcmp(args->pull, "missing") != 0) { - client_print_error(response->cc, response->server_errono, response->errmsg); - goto out; - } -@@ -1299,6 +1308,14 @@ out: - return ret; - } - -+static bool valid_pull_option(const char *pull) -+{ -+ if (strcmp(pull, "always") == 0 || strcmp(pull, "missing") == 0 || strcmp(pull, "never") == 0) { -+ return true; -+ } -+ return false; -+} -+ - /* - * Create a create request message and call RPC - */ -@@ -1551,6 +1568,11 @@ int cmd_create_main(int argc, const char **argv) - exit(ECOMMON); - } - -+ if (!valid_pull_option(g_cmd_create_args.pull)) { -+ COMMAND_ERROR("invalid --pull option, only \"always\"|\"missing\"|\"never\" is allowed"); -+ exit(ECOMMON); -+ } -+ - ret = client_create(&g_cmd_create_args); - if (ret != 0) { - ERROR("Container \"%s\" create failed", g_cmd_create_args.name); -diff --git a/src/cmd/isula/base/create.h b/src/cmd/isula/base/create.h -index 1c455d40..610a289f 100644 ---- a/src/cmd/isula/base/create.h -+++ b/src/cmd/isula/base/create.h -@@ -276,6 +276,13 @@ extern "C" { - &(cmdargs).custom_conf.privileged, \ - "Give extended privileges to this container", \ - NULL }, \ -+ { CMD_OPT_TYPE_STRING, \ -+ false, \ -+ "pull", \ -+ 0, \ -+ &(cmdargs).pull, \ -+ "Pull image before running (\"always\"|\"missing\"|\"never\") (default \"missing\")", \ -+ NULL }, \ - { CMD_OPT_TYPE_CALLBACK, false, "tmpfs", 0, &(cmdargs).custom_conf.tmpfs, "Mount a tmpfs directory", \ - command_append_array }, \ - { CMD_OPT_TYPE_BOOL, false, "tty", 't', &(cmdargs).custom_conf.tty, "Allocate a pseudo-TTY", NULL }, \ -diff --git a/src/cmd/isula/base/run.c b/src/cmd/isula/base/run.c -index a6068709..53e89c3d 100644 ---- a/src/cmd/isula/base/run.c -+++ b/src/cmd/isula/base/run.c -@@ -39,6 +39,7 @@ static int run_checker(struct client_arguments *args); - struct client_arguments g_cmd_run_args = { - .runtime = "", - .restart = "no", -+ .pull = "missing" - }; - - static int local_cmd_start(const struct client_arguments *args) -diff --git a/src/cmd/isula/client_arguments.h b/src/cmd/isula/client_arguments.h -index adb45104..a155b863 100644 ---- a/src/cmd/isula/client_arguments.h -+++ b/src/cmd/isula/client_arguments.h -@@ -307,6 +307,7 @@ struct client_arguments { - // pull/rmi - char *ref; - bool plain_http; -+ char *pull; - - // logs - bool follow; --- -2.25.1 - diff --git a/0050-add-testcase-for-pull-option.patch b/0050-add-testcase-for-pull-option.patch deleted file mode 100644 index 485f642..0000000 --- a/0050-add-testcase-for-pull-option.patch +++ /dev/null @@ -1,38 +0,0 @@ -From 55ffef15be755f2e5fbf78ec6b5b4a6e7be9b690 Mon Sep 17 00:00:00 2001 -From: WangFengTu -Date: Sat, 27 Feb 2021 11:23:53 +0800 -Subject: [PATCH 050/104] add testcase for --pull option - -Signed-off-by: WangFengTu ---- - CI/test_cases/image_cases/registry.sh | 14 ++++++++++++++ - 1 file changed, 14 insertions(+) - -diff --git a/CI/test_cases/image_cases/registry.sh b/CI/test_cases/image_cases/registry.sh -index 4e6adc28..c0a0db05 100755 ---- a/CI/test_cases/image_cases/registry.sh -+++ b/CI/test_cases/image_cases/registry.sh -@@ -60,6 +60,20 @@ function isula_pull() - isula inspect busybox - fn_check_eq "$?" "0" "isula inspect busybox" - -+ # test --pull always option -+ isula run --rm -ti --pull always busybox echo hello 2>&1 | grep pulling -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - --pull always failed" && ((ret++)) -+ -+ # test --pull never option -+ isula rm -f `isula ps -a -q` -+ isula rmi busybox -+ isula run --rm -ti --pull never busybox echo hello -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - --pull never failed" && ((ret++)) -+ -+ # test default --pull option (missing) -+ isula run --rm -ti busybox echo hello 2>&1 | grep pulling -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - --pull missing failed" && ((ret++)) -+ - isula pull 3laho3y3.mirror.aliyuncs.com/library/busybox - fn_check_eq "$?" "0" "isula pull 3laho3y3.mirror.aliyuncs.com/library/busybox" - --- -2.25.1 - diff --git a/0051-remove-redundant-code.patch b/0051-remove-redundant-code.patch deleted file mode 100644 index 08e8016..0000000 --- a/0051-remove-redundant-code.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 72ad417b26b17b0981cd163f42bc23d98e19b4e7 Mon Sep 17 00:00:00 2001 -From: wujing -Date: Mon, 1 Mar 2021 17:17:17 +0800 -Subject: [PATCH 051/104] remove redundant code - -Signed-off-by: wujing ---- - src/daemon/modules/runtime/isula/isula_rt_ops.c | 1 - - 1 file changed, 1 deletion(-) - -diff --git a/src/daemon/modules/runtime/isula/isula_rt_ops.c b/src/daemon/modules/runtime/isula/isula_rt_ops.c -index 540f1f67..ecea2b3d 100644 ---- a/src/daemon/modules/runtime/isula/isula_rt_ops.c -+++ b/src/daemon/modules/runtime/isula/isula_rt_ops.c -@@ -612,7 +612,6 @@ static int status_to_exit_code(int status) - exit_code = WEXITSTATUS(status); - } else { - exit_code = -1; -- exit_code = -1; - } - if (WIFSIGNALED(status)) { - int signal; --- -2.25.1 - diff --git a/0052-devicemapper-umount-when-resize2fs-command-failed.patch b/0052-devicemapper-umount-when-resize2fs-command-failed.patch deleted file mode 100644 index ee415ed..0000000 --- a/0052-devicemapper-umount-when-resize2fs-command-failed.patch +++ /dev/null @@ -1,35 +0,0 @@ -From adde17cdd844a51fa606c74a0f241c62dbf11a27 Mon Sep 17 00:00:00 2001 -From: gaohuatao -Date: Fri, 5 Mar 2021 23:13:31 -0500 -Subject: [PATCH 052/104] devicemapper: umount when resize2fs command failed - -Signed-off-by: gaohuatao ---- - .../storage/layer_store/graphdriver/devmapper/deviceset.c | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - -diff --git a/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/deviceset.c b/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/deviceset.c -index 0b0394c5..3a271c3a 100644 ---- a/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/deviceset.c -+++ b/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/deviceset.c -@@ -2158,14 +2158,15 @@ static int grow_fs(struct device_set *devset, image_devmapper_device_info *info) - if (exec_grow_fs_command("resize2fs", dev_fname) != 0) { - ERROR("Failed execute resize2fs to grow rootfs"); - ret = -1; -- goto out; -+ goto clean_mount; - } - } else { - ERROR("Unsupported filesystem type %s", devset->base_device_filesystem); - ret = -1; -- goto out; -+ goto clean_mount; - } - -+clean_mount: - if (umount2(FS_MOUNT_POINT, MNT_DETACH) < 0 && errno != EINVAL) { - WARN("Failed to umount directory %s:%s", FS_MOUNT_POINT, strerror(errno)); - } --- -2.25.1 - diff --git a/0053-support-isula-exec-workdir.patch b/0053-support-isula-exec-workdir.patch deleted file mode 100644 index 332da54..0000000 --- a/0053-support-isula-exec-workdir.patch +++ /dev/null @@ -1,174 +0,0 @@ -From 4794f7a73a40e612c49d7c9f78fabaab0f9ab696 Mon Sep 17 00:00:00 2001 -From: WangFengTu -Date: Thu, 11 Mar 2021 11:51:37 +0800 -Subject: [PATCH 053/104] support isula exec --workdir - -Signed-off-by: WangFengTu ---- - src/api/services/containers/container.proto | 1 + - src/client/connect/grpc/grpc_containers_client.cc | 3 +++ - src/client/connect/protocol_type.c | 3 +++ - src/client/connect/protocol_type.h | 1 + - src/cmd/isula/stream/exec.c | 2 ++ - src/cmd/isula/stream/exec.h | 4 +++- - .../entry/connect/grpc/grpc_containers_service_private.cc | 3 +++ - src/daemon/modules/api/runtime_api.h | 1 + - src/daemon/modules/runtime/engines/engine.h | 1 + - src/daemon/modules/runtime/engines/lcr/lcr_rt_ops.c | 3 +++ - src/daemon/modules/service/service_container.c | 1 + - 11 files changed, 22 insertions(+), 1 deletion(-) - -diff --git a/src/api/services/containers/container.proto b/src/api/services/containers/container.proto -index efd085a1..d7adc506 100644 ---- a/src/api/services/containers/container.proto -+++ b/src/api/services/containers/container.proto -@@ -316,6 +316,7 @@ message ExecRequest { - repeated string env = 11; - string user = 12; - string suffix = 13; -+ string workdir = 14; - } - message ExecResponse { - int32 pid = 1; -diff --git a/src/client/connect/grpc/grpc_containers_client.cc b/src/client/connect/grpc/grpc_containers_client.cc -index ccde59a4..6661970b 100644 ---- a/src/client/connect/grpc/grpc_containers_client.cc -+++ b/src/client/connect/grpc/grpc_containers_client.cc -@@ -807,6 +807,9 @@ public: - grequest->set_attach_stdin(request->attach_stdin); - grequest->set_attach_stdout(request->attach_stdout); - grequest->set_attach_stderr(request->attach_stderr); -+ if (request->workdir != nullptr) { -+ grequest->set_workdir(request->workdir); -+ } - if (request->stdin != nullptr) { - grequest->set_stdin(request->stdin); - } -diff --git a/src/client/connect/protocol_type.c b/src/client/connect/protocol_type.c -index 94f682a8..3e5dafb1 100644 ---- a/src/client/connect/protocol_type.c -+++ b/src/client/connect/protocol_type.c -@@ -525,6 +525,9 @@ void isula_exec_request_free(struct isula_exec_request *request) - free(request->user); - request->user = NULL; - -+ free(request->workdir); -+ request->workdir = NULL; -+ - util_free_array_by_len(request->argv, request->argc); - request->argv = NULL; - request->argc = 0; -diff --git a/src/client/connect/protocol_type.h b/src/client/connect/protocol_type.h -index 32f55b51..62208d98 100644 ---- a/src/client/connect/protocol_type.h -+++ b/src/client/connect/protocol_type.h -@@ -332,6 +332,7 @@ struct isula_exec_request { - char **env; - int64_t timeout; - char *user; -+ char *workdir; - }; - - struct isula_exec_response { -diff --git a/src/cmd/isula/stream/exec.c b/src/cmd/isula/stream/exec.c -index d1d57268..3c8601f2 100644 ---- a/src/cmd/isula/stream/exec.c -+++ b/src/cmd/isula/stream/exec.c -@@ -65,6 +65,7 @@ static int fill_exec_request(const struct client_arguments *args, const struct c - } - - request->user = util_strdup_s(args->custom_conf.user); -+ request->workdir = util_strdup_s(args->custom_conf.workdir); - - if (util_dup_array_of_strings((const char **)args->argv, args->argc, &(request->argv), - (size_t *)(&request->argc)) != 0) { -@@ -327,6 +328,7 @@ static int remote_cmd_exec(const struct client_arguments *args, uint32_t *exit_c - request.attach_stdin = args->custom_conf.attach_stdin; - request.attach_stdout = args->custom_conf.attach_stdout; - request.attach_stderr = args->custom_conf.attach_stderr; -+ request.workdir = args->custom_conf.workdir; - - request.argc = args->argc; - request.argv = (char **)args->argv; -diff --git a/src/cmd/isula/stream/exec.h b/src/cmd/isula/stream/exec.h -index 1e54ab82..cd94d91f 100644 ---- a/src/cmd/isula/stream/exec.h -+++ b/src/cmd/isula/stream/exec.h -@@ -42,7 +42,9 @@ - 'u', \ - &(cmdargs).custom_conf.user, \ - "Username or UID (format: [:])", \ -- NULL }, -+ NULL }, \ -+ { CMD_OPT_TYPE_STRING_DUP, false, "workdir", 0, &(cmdargs).custom_conf.workdir, \ -+ "Working directory inside the container", NULL } - - extern const char g_cmd_exec_desc[]; - extern const char g_cmd_exec_usage[]; -diff --git a/src/daemon/entry/connect/grpc/grpc_containers_service_private.cc b/src/daemon/entry/connect/grpc/grpc_containers_service_private.cc -index 8e19f978..56283c8d 100644 ---- a/src/daemon/entry/connect/grpc/grpc_containers_service_private.cc -+++ b/src/daemon/entry/connect/grpc/grpc_containers_service_private.cc -@@ -359,6 +359,9 @@ int ContainerServiceImpl::exec_request_from_grpc(const ExecRequest *grequest, co - tmpreq->attach_stdout = grequest->attach_stdout(); - tmpreq->attach_stderr = grequest->attach_stderr(); - -+ if (!grequest->workdir().empty()) { -+ tmpreq->workdir = util_strdup_s(grequest->workdir().c_str()); -+ } - if (!grequest->stdin().empty()) { - tmpreq->stdin = util_strdup_s(grequest->stdin().c_str()); - } -diff --git a/src/daemon/modules/api/runtime_api.h b/src/daemon/modules/api/runtime_api.h -index dde21b91..1203cde5 100644 ---- a/src/daemon/modules/api/runtime_api.h -+++ b/src/daemon/modules/api/runtime_api.h -@@ -127,6 +127,7 @@ typedef struct _rt_exec_params_t { - const char *logpath; - const char *loglevel; - const char **console_fifos; -+ const char *workdir; - int64_t timeout; - const char *suffix; - defs_process *spec; -diff --git a/src/daemon/modules/runtime/engines/engine.h b/src/daemon/modules/runtime/engines/engine.h -index ced3cf22..7dd96f1e 100644 ---- a/src/daemon/modules/runtime/engines/engine.h -+++ b/src/daemon/modules/runtime/engines/engine.h -@@ -82,6 +82,7 @@ typedef struct _engine_exec_request_t { - - bool tty; - bool open_stdin; -+ const char *workdir; - } engine_exec_request_t; - - typedef bool (*engine_create_t)(const char *, const char *, void *); -diff --git a/src/daemon/modules/runtime/engines/lcr/lcr_rt_ops.c b/src/daemon/modules/runtime/engines/lcr/lcr_rt_ops.c -index 27c6a631..2ed2f31e 100644 ---- a/src/daemon/modules/runtime/engines/lcr/lcr_rt_ops.c -+++ b/src/daemon/modules/runtime/engines/lcr/lcr_rt_ops.c -@@ -390,6 +390,9 @@ int rt_lcr_exec(const char *id, const char *runtime, const rt_exec_params_t *par - if (params->spec != NULL) { - request.tty = params->spec->terminal; - } -+ if (params->workdir != NULL) { -+ request.workdir = params->workdir; -+ } - - if (!engine_ops->engine_exec_op(&request, exit_code)) { - const char *tmpmsg = NULL; -diff --git a/src/daemon/modules/service/service_container.c b/src/daemon/modules/service/service_container.c -index e1d698cd..ecf35821 100644 ---- a/src/daemon/modules/service/service_container.c -+++ b/src/daemon/modules/service/service_container.c -@@ -1777,6 +1777,7 @@ static int do_exec_container(const container_t *cont, const char *runtime, char - params.state = cont->state_path; - params.spec = process_spec; - params.attach_stdin = request->attach_stdin; -+ params.workdir = request->workdir; - - if (runtime_exec(cont->common_config->id, runtime, ¶ms, exit_code)) { - ERROR("Runtime exec container failed"); --- -2.25.1 - diff --git a/0054-add-testcase-for-isula-exec-workdir.patch b/0054-add-testcase-for-isula-exec-workdir.patch deleted file mode 100644 index 6f3be62..0000000 --- a/0054-add-testcase-for-isula-exec-workdir.patch +++ /dev/null @@ -1,72 +0,0 @@ -From e6dfb82aaaee374f26538c11913233e4fb6037fe Mon Sep 17 00:00:00 2001 -From: WangFengTu -Date: Thu, 11 Mar 2021 15:05:46 +0800 -Subject: [PATCH 054/104] add testcase for isula exec --workdir - -Signed-off-by: WangFengTu ---- - CI/test_cases/container_cases/exec.sh | 52 +++++++++++++++++++++++++++ - 1 file changed, 52 insertions(+) - create mode 100755 CI/test_cases/container_cases/exec.sh - -diff --git a/CI/test_cases/container_cases/exec.sh b/CI/test_cases/container_cases/exec.sh -new file mode 100755 -index 00000000..28e27cfd ---- /dev/null -+++ b/CI/test_cases/container_cases/exec.sh -@@ -0,0 +1,52 @@ -+#!/bin/bash -+# -+# attributes: isulad exec -+# concurrent: YES -+# spend time: 1 -+ -+####################################################################### -+##- @Copyright (C) Huawei Technologies., Ltd. 2021. All rights reserved. -+# - iSulad licensed under the Mulan PSL v2. -+# - You can use this software according to the terms and conditions of the Mulan PSL v2. -+# - You may obtain a copy of Mulan PSL v2 at: -+# - http://license.coscl.org.cn/MulanPSL2 -+# - THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND, EITHER EXPRESS OR -+# - IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT, MERCHANTABILITY OR FIT FOR A PARTICULAR -+# - PURPOSE. -+# - See the Mulan PSL v2 for more details. -+##- @Description:CI -+##- @Author: wangfengtu -+##- @Create: 2021-03-09 -+####################################################################### -+ -+curr_path=$(dirname $(readlink -f "$0")) -+data_path=$(realpath $curr_path/../data) -+source ../helpers.sh -+test="exec test => test_exec" -+ -+function exec_workdir() -+{ -+ local ret=0 -+ -+ isula rm -f `isula ps -a -q` -+ -+ isula run -tid -n cont_workdir busybox sh -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to run container with --workdir" && ((ret++)) -+ -+ isula exec -ti --workdir /workdir cont_workdir pwd | grep "/workdir" -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - workdir is not /workdir failed" && ((ret++)) -+ -+ isula rm -f `isula ps -a -q` -+ -+ return ${ret} -+} -+ -+declare -i ans=0 -+ -+msg_info "${test} starting..." -+ -+exec_workdir || ((ans++)) -+ -+msg_info "${test} finished with return ${ret}..." -+ -+show_result ${ans} "${curr_path}/${0}" --- -2.25.1 - diff --git a/0055-ignore-to-create-mtab-when-runtime-is-kata-runtime.patch b/0055-ignore-to-create-mtab-when-runtime-is-kata-runtime.patch deleted file mode 100644 index 5df92fd..0000000 --- a/0055-ignore-to-create-mtab-when-runtime-is-kata-runtime.patch +++ /dev/null @@ -1,36 +0,0 @@ -From a24118b4382492e27415f25411fcaadef990b659 Mon Sep 17 00:00:00 2001 -From: gaohuatao -Date: Mon, 15 Mar 2021 09:49:10 -0400 -Subject: [PATCH 055/104] ignore to create mtab when runtime is kata-runtime - -Signed-off-by: gaohuatao ---- - src/daemon/modules/service/service_container.c | 5 ++++- - 1 file changed, 4 insertions(+), 1 deletion(-) - -diff --git a/src/daemon/modules/service/service_container.c b/src/daemon/modules/service/service_container.c -index e1d698cd..d6a82587 100644 ---- a/src/daemon/modules/service/service_container.c -+++ b/src/daemon/modules/service/service_container.c -@@ -60,6 +60,8 @@ - #include "utils_verify.h" - #include "volume_api.h" - -+#define KATA_RUNTIME "kata-runtime" -+ - int set_container_to_removal(const container_t *cont) - { - int ret = 0; -@@ -732,7 +734,8 @@ static int do_start_container(container_t *cont, const char *console_fifos[], bo - } - - // embedded conainter is readonly, create mtab link will fail -- if (strcmp(IMAGE_TYPE_EMBEDDED, cont->common_config->image_type) != 0) { -+ // kata-runtime container's qemu donot support to create mtab in host -+ if (strcmp(IMAGE_TYPE_EMBEDDED, cont->common_config->image_type) != 0 && strcmp(KATA_RUNTIME, cont->runtime) != 0) { - nret = create_mtab_link(oci_spec); - if (nret != 0) { - ERROR("Failed to create link /etc/mtab for target /proc/mounts"); --- -2.25.1 - diff --git a/0056-remove-unchecked-layer-ignore-rootfs-layer.patch b/0056-remove-unchecked-layer-ignore-rootfs-layer.patch deleted file mode 100644 index e7ecb68..0000000 --- a/0056-remove-unchecked-layer-ignore-rootfs-layer.patch +++ /dev/null @@ -1,91 +0,0 @@ -From 64b45885abf0c4b3563008d2be5d04b5ec8cd28d Mon Sep 17 00:00:00 2001 -From: haozi007 -Date: Thu, 18 Mar 2021 11:05:33 +0800 -Subject: [PATCH 056/104] remove unchecked layer ignore rootfs layer - -Signed-off-by: haozi007 ---- - .../modules/image/oci/storage/storage.c | 42 ++++++++++++++++++- - 1 file changed, 41 insertions(+), 1 deletion(-) - -diff --git a/src/daemon/modules/image/oci/storage/storage.c b/src/daemon/modules/image/oci/storage/storage.c -index 0e9708f5..40fc15a8 100644 ---- a/src/daemon/modules/image/oci/storage/storage.c -+++ b/src/daemon/modules/image/oci/storage/storage.c -@@ -1480,6 +1480,26 @@ out: - return ret; - } - -+static bool is_rootfs_layer(const char *layer_id, const struct rootfs_list *all_rootfs) -+{ -+ int j; -+ -+ if (all_rootfs == NULL || layer_id == NULL) { -+ return false; -+ } -+ -+ for (j = 0; j < all_rootfs->rootfs_len; j++) { -+ if (all_rootfs->rootfs[j]->layer == NULL) { -+ continue; -+ } -+ if (strcmp(layer_id, all_rootfs->rootfs[j]->layer) == 0) { -+ return true; -+ } -+ } -+ -+ return false; -+} -+ - static bool do_storage_integration_check(const char *path, map_t *checked_layers) - { - struct rootfs_list *all_rootfs = NULL; -@@ -1558,6 +1578,7 @@ static void delete_unchecked_layers(map_t *checked_layers) - { - struct layer_list *all_layers = NULL; - size_t i; -+ struct rootfs_list *all_rootfs = NULL; - - all_layers = util_common_calloc_s(sizeof(struct layer_list)); - if (all_layers == NULL) { -@@ -1570,11 +1591,29 @@ static void delete_unchecked_layers(map_t *checked_layers) - goto out; - } - -+ all_rootfs = util_common_calloc_s(sizeof(struct rootfs_list)); -+ if (all_rootfs == NULL) { -+ ERROR("Out of memory"); -+ goto out; -+ } -+ -+ if (rootfs_store_get_all_rootfs(all_rootfs) != 0) { -+ ERROR("Failed to get all container rootfs information"); -+ goto out; -+ } -+ - for (i = 0; i < all_layers->layers_len; i++) { - if (map_search(checked_layers, (void *)all_layers->layers[i]->id) != NULL) { -+ DEBUG("ignore checked layer: %s", all_layers->layers[i]->id); -+ continue; -+ } -+ -+ if (is_rootfs_layer(all_layers->layers[i]->id, all_rootfs)) { -+ DEBUG("ignore rootfs layer: %s", all_layers->layers[i]->id); - continue; - } -- WARN("Delete unchecked layer: %s due to no related image", all_layers->layers[i]->id); -+ -+ ERROR("Delete unchecked layer: %s due to no related image", all_layers->layers[i]->id); - if (layer_store_delete(all_layers->layers[i]->id) != 0) { - ERROR("Failed to delete unchecked layer %s", all_layers->layers[i]->id); - } -@@ -1582,6 +1621,7 @@ static void delete_unchecked_layers(map_t *checked_layers) - - out: - free_layer_list(all_layers); -+ free_rootfs_list(all_rootfs); - } - - static bool storage_integration_check() --- -2.25.1 - diff --git a/0057-add-test-to-check-running-container-with-image-integ.patch b/0057-add-test-to-check-running-container-with-image-integ.patch deleted file mode 100644 index b552b22..0000000 --- a/0057-add-test-to-check-running-container-with-image-integ.patch +++ /dev/null @@ -1,38 +0,0 @@ -From 19b3a0bfd08433d39a1115f2ad9ef3eaac006514 Mon Sep 17 00:00:00 2001 -From: haozi007 -Date: Thu, 18 Mar 2021 11:25:57 +0800 -Subject: [PATCH 057/104] add test to check running container with image - integration check - -Signed-off-by: haozi007 ---- - CI/test_cases/image_cases/integration_check.sh | 6 ++++++ - 1 file changed, 6 insertions(+) - -diff --git a/CI/test_cases/image_cases/integration_check.sh b/CI/test_cases/image_cases/integration_check.sh -index 2e6f962e..fe342cc2 100755 ---- a/CI/test_cases/image_cases/integration_check.sh -+++ b/CI/test_cases/image_cases/integration_check.sh -@@ -58,6 +58,9 @@ function test_image_info() - ucid=$(isula create ${uimage}) - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - create container failed" && ((ret++)) - -+ isula run -tid --name checker alpine -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - run container failed" && ((ret++)) -+ - tmp_fname=$(echo -n "/var/run/isulad/storage" | sha256sum | awk '{print $1}') - rm -f "${ISULAD_RUN_ROOT_PATH}/storage/${tmp_fname}.json" - -@@ -74,6 +77,9 @@ function test_image_info() - isula ps -a | grep ${ucid} - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - container: ${ucid} do not exist with valid image" && ((ret++)) - -+ isula exec -it checker date -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - container: checker exec failed with valid image" && ((ret++)) -+ - isula images | grep busybox - [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - invalid image: ${image} exist" && ((ret++)) - --- -2.25.1 - diff --git a/0058-fix-coredump-when-inspect-container-when-daemon-sets.patch b/0058-fix-coredump-when-inspect-container-when-daemon-sets.patch deleted file mode 100644 index e968506..0000000 --- a/0058-fix-coredump-when-inspect-container-when-daemon-sets.patch +++ /dev/null @@ -1,34 +0,0 @@ -From c720232af726a79d6c5527d8ca96f0acd9772730 Mon Sep 17 00:00:00 2001 -From: wujing -Date: Thu, 25 Mar 2021 16:44:45 +0800 -Subject: [PATCH 058/104] fix coredump when inspect container when daemon sets - the ulimit parameters - -Signed-off-by: wujing ---- - src/daemon/modules/service/inspect_container.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/src/daemon/modules/service/inspect_container.c b/src/daemon/modules/service/inspect_container.c -index abfb8517..d678f7bb 100644 ---- a/src/daemon/modules/service/inspect_container.c -+++ b/src/daemon/modules/service/inspect_container.c -@@ -517,7 +517,7 @@ static container_inspect *pack_inspect_data(const container_t *cont, bool with_h - ERROR("Failed to pack inspect host config data, continue to pack other information"); - } - -- if (merge_default_ulimit_with_ulimit(inspect) != 0) { -+ if (with_host_config && merge_default_ulimit_with_ulimit(inspect) != 0) { - ERROR("Failed to pack default ulimit data, continue to pack other information"); - } - -@@ -622,4 +622,4 @@ out: - inspect = NULL; - } - return inspect; --} -\ No newline at end of file -+} --- -2.25.1 - diff --git a/0059-Readme-add-related-resouces-in-readme.patch b/0059-Readme-add-related-resouces-in-readme.patch deleted file mode 100644 index 101bd32..0000000 --- a/0059-Readme-add-related-resouces-in-readme.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 19b67eeb87d8c8ef2add632c6f9c3041272b67c2 Mon Sep 17 00:00:00 2001 -From: Li Feng -Date: Sat, 27 Mar 2021 10:00:03 +0800 -Subject: [PATCH 059/104] Readme: add related resouces in readme - -Signed-off-by: Li Feng ---- - README.md | 8 +++++++- - 1 file changed, 7 insertions(+), 1 deletion(-) - -diff --git a/README.md b/README.md -index 1dd3cf1a..68f35f34 100644 ---- a/README.md -+++ b/README.md -@@ -249,7 +249,13 @@ You can get more information about iSulad from our wikis, including roadmap, fea - - iSulad is licensed under the Mulan PSL v2. - -+## Related Resouces -+ -+- [bilibili videos](https://space.bilibili.com/527064077/video?keyword=iSulad) -+- [如何在openEuler树莓派镜像上部署k8s+iSula集群](https://my.oschina.net/openeuler/blog/4774838) -+- [基于openEuler搭建部署k8s](https://bbs.huaweicloud.com/forum/forum.php?mod=viewthread&tid=94271) -+ - ## Join us - You can join us on any of the following channels: - * Join our [mailing list](https://mailweb.openeuler.org/postorius/lists/isulad.openeuler.org/) --* Join our Biweekly meeting at 16:30 pm on Tuesday (meeting link will be mailed at mailing list) -+* Join our Biweekly meeting at 16:30 pm on Tuesday (meeting link will be mailed at mailing list) -\ No newline at end of file --- -2.25.1 - diff --git a/0060-update-docs-build_guide_zh.md.patch b/0060-update-docs-build_guide_zh.md.patch deleted file mode 100644 index 907223f..0000000 --- a/0060-update-docs-build_guide_zh.md.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 2d47bb3796bf3ff6b2cd66416fd1ae43a248b75f Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?=E8=AE=B8=E6=8C=AF=E6=B6=9B?= <970391472@qq.com> -Date: Tue, 30 Mar 2021 15:34:43 +0800 -Subject: [PATCH 060/104] update docs/build_guide_zh.md. - ---- - docs/build_guide_zh.md | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/docs/build_guide_zh.md b/docs/build_guide_zh.md -index 748701a3..d6621fcf 100644 ---- a/docs/build_guide_zh.md -+++ b/docs/build_guide_zh.md -@@ -24,7 +24,7 @@ $ sudo yum --enablerepo='*' install -y automake autoconf libtool cmake make libc - - ### Ubuntu的安装命令 - ```bash --$ sudo apt install -y g++ libprotobuf-dev protobuf-compiler protobuf-compiler-grpc libgrpc++-dev libgrpc-dev libtool automake autoconf cmake make pkg-config libyajl-dev zlib1g-dev libselinux-dev libseccomp-dev libcap-dev libsystemd-dev git libcurl4-gnutls-dev openssl libdevmapper-dev python3 libtar libtar-dev -+$ sudo apt install -y g++ libprotobuf-dev protobuf-compiler protobuf-compiler-grpc libgrpc++-dev libgrpc-dev libtool automake autoconf cmake make pkg-config libyajl-dev zlib1g-dev libselinux-dev libseccomp-dev libcap-dev libsystemd-dev git libarchive libarchive-dev libcurl4-gnutls-dev openssl libdevmapper-dev python3 libtar libtar-dev - ``` - - ## 从源码构建和安装关键依赖 --- -2.25.1 - diff --git a/0061-fix-health_check.sh-execute-failure.patch b/0061-fix-health_check.sh-execute-failure.patch deleted file mode 100644 index 4559d38..0000000 --- a/0061-fix-health_check.sh-execute-failure.patch +++ /dev/null @@ -1,88 +0,0 @@ -From 66c2bfda515a3e176cc9e65e3ef393acf1eb1502 Mon Sep 17 00:00:00 2001 -From: WangFengTu -Date: Thu, 1 Apr 2021 10:37:00 +0800 -Subject: [PATCH 061/104] fix health_check.sh execute failure - -Signed-off-by: WangFengTu ---- - CI/test_cases/container_cases/health_check.sh | 18 +++++++++--------- - 1 file changed, 9 insertions(+), 9 deletions(-) - -diff --git a/CI/test_cases/container_cases/health_check.sh b/CI/test_cases/container_cases/health_check.sh -index cc934fd8..c466b6f2 100755 ---- a/CI/test_cases/container_cases/health_check.sh -+++ b/CI/test_cases/container_cases/health_check.sh -@@ -38,20 +38,20 @@ function test_health_check_paraments() - - container_name="health_check_para" - isula run -itd -n ${container_name} --health-cmd 'echo "iSulad" ; exit 1' \ -- --health-interval 2s --health-retries 2 --health-start-period 2s --health-exit-on-unhealthy ${image} /bin/sh -+ --health-interval 5s --health-retries 2 --health-start-period 8s --health-exit-on-unhealthy ${image} /bin/sh - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to run container with image: ${image}" && ((ret++)) - - # start period : 2s => do health check => interval: 2s => do health check => exit on unhealthy - [[ $(isula inspect -f '{{.State.Status}}' ${container_name}) == "running" ]] - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - incorrent container status: not running" && ((ret++)) - -- sleep 3 # finish first health check -+ sleep 13 # finish first health check - - # keep starting status with health check return non-zero at always until status change to unhealthy - [[ $(isula inspect -f '{{.State.Health.Status}}' ${container_name}) == "starting" ]] - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - incorrent container health check status: not starting" && ((ret++)) - -- sleep 2 # finish second health check -+ sleep 6 # finish second health check - - [[ $(isula inspect -f '{{.State.Health.Status}}' ${container_name}) == "unhealthy" ]] - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - incorrent container health check status: not unhealthy" && ((ret++)) -@@ -85,20 +85,20 @@ function test_health_check_normally() - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - missing list image: ${image}" && ((ret++)) - - container_name="health_check_normally" -- isula run -itd -n ${container_name} --health-cmd 'date' --health-interval 2s ${image} /bin/sh -+ isula run -itd -n ${container_name} --health-cmd 'date' --health-interval 5s ${image} /bin/sh - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to run container with image: ${image}" && ((ret++)) - - # start period : 0s => interval: 2s => do health check => interval: 2s => do health check => ... - [[ $(isula inspect -f '{{.State.Status}}' ${container_name}) == "running" ]] - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - incorrent container status: not running" && ((ret++)) - -- sleep 1 # Health check has been performed yet -+ sleep 2 # Health check has been performed yet - - # Initial status when the container is still starting - [[ $(isula inspect -f '{{.State.Health.Status}}' ${container_name}) == "starting" ]] - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - incorrent container health check status: not starting" && ((ret++)) - -- sleep 2 # finish first health check -+ sleep 8 # finish first health check - # When the health check returns successfully, status immediately becomes healthy - [[ $(isula inspect -f '{{.State.Health.Status}}' ${container_name}) == "healthy" ]] - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - incorrent container health check status: not healthy" && ((ret++)) -@@ -131,11 +131,11 @@ function test_health_check_timeout() - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - missing list image: ${image}" && ((ret++)) - - container_name="health_check_timeout" -- isula run -itd -n ${container_name} --health-cmd 'sleep 5' --health-interval 2s --health-timeout 1s \ -+ isula run -itd -n ${container_name} --health-cmd 'sleep 5' --health-interval 5s --health-timeout 1s \ - --health-retries 1 --health-exit-on-unhealthy ${image} /bin/sh - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to run container with image: ${image}" && ((ret++)) - -- # start period : 0s => interval: 2s => do health check(1s timeout) => unhealthy(exited) -+ # start period : 0s => interval: 5s => do health check(1s timeout) => unhealthy(exited) - [[ $(isula inspect -f '{{.State.Status}}' ${container_name}) == "running" ]] - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - incorrent container status: not running" && ((ret++)) - -@@ -145,7 +145,7 @@ function test_health_check_timeout() - [[ $(isula inspect -f '{{.State.Health.Status}}' ${container_name}) == "starting" ]] - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - incorrent container health check status: not starting" && ((ret++)) - -- sleep 3 # finish first health check -+ sleep 7 # finish first health check - # The container process exits and the health check status becomes unhealthy - [[ $(isula inspect -f '{{.State.Health.Status}}' ${container_name}) == "unhealthy" ]] - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - incorrent container health check status: not unhealthy" && ((ret++)) --- -2.25.1 - diff --git a/0062-support-cgroup-v2.patch b/0062-support-cgroup-v2.patch deleted file mode 100644 index e32bc4e..0000000 --- a/0062-support-cgroup-v2.patch +++ /dev/null @@ -1,488 +0,0 @@ -From c00ee6acf534371c65455424d3e40d9394e96ec2 Mon Sep 17 00:00:00 2001 -From: WangFengTu -Date: Mon, 25 Jan 2021 10:14:56 +0800 -Subject: [PATCH 062/104] support cgroup v2 - -Signed-off-by: WangFengTu ---- - src/cmd/isula/extend/update.c | 4 + - src/cmd/isulad/main.c | 2 + - src/daemon/common/sysinfo.c | 312 ++++++++++++++++-- - .../executor/container_cb/execution_create.c | 2 - - src/daemon/modules/spec/verify.c | 16 +- - 5 files changed, 308 insertions(+), 28 deletions(-) - -diff --git a/src/cmd/isula/extend/update.c b/src/cmd/isula/extend/update.c -index 42cb8f21..a9b0fccf 100644 ---- a/src/cmd/isula/extend/update.c -+++ b/src/cmd/isula/extend/update.c -@@ -75,6 +75,10 @@ static isula_host_config_t *pack_update_request(const struct client_arguments *a - - host_config->cr->kernel_memory = args->cr.kernel_memory_limit; - -+ // make sure swappiness have default value -1 if not configed, so it -+ // will not fail even if kernel does not support swappiness. -+ host_config->cr->swappiness = args->cr.swappiness; -+ - return host_config; - - error_out: -diff --git a/src/cmd/isulad/main.c b/src/cmd/isulad/main.c -index cb2b71a2..47bd6e2c 100644 ---- a/src/cmd/isulad/main.c -+++ b/src/cmd/isulad/main.c -@@ -1483,6 +1483,8 @@ int main(int argc, char **argv) - - update_isulad_rlimits(); - -+ (void)get_sys_info(true); -+ - clock_gettime(CLOCK_MONOTONIC, &t_start); - - if (pre_init_daemon(argc, argv, &msg) != 0) { -diff --git a/src/daemon/common/sysinfo.c b/src/daemon/common/sysinfo.c -index 87ea47f4..bdd0dbad 100644 ---- a/src/daemon/common/sysinfo.c -+++ b/src/daemon/common/sysinfo.c -@@ -20,6 +20,9 @@ - #include - #include - #include -+#include -+#include -+#include - - #include "err_msg.h" - #include "isula_libutils/log.h" -@@ -28,7 +31,7 @@ - #include "utils_file.h" - #include "utils_string.h" - --// Cgroup Item Definition -+// Cgroup V1 Item Definition - #define CGROUP_BLKIO_WEIGHT "blkio.weight" - #define CGROUP_BLKIO_WEIGHT_DEVICE "blkio.weight_device" - #define CGROUP_BLKIO_READ_BPS_DEVICE "blkio.throttle.read_bps_device" -@@ -49,6 +52,45 @@ - #define CGROUP_KENEL_MEMORY_LIMIT "memory.kmem.limit_in_bytes" - #define CGROUP_MEMORY_OOM_CONTROL "memory.oom_control" - -+// Cgroup V2 Item Definition -+#define CGROUP2_CPU_WEIGHT "cpu.weight" -+#define CGROUP2_CPU_MAX "cpu.max" -+#define CGROUP2_CPUSET_CPUS_EFFECTIVE "cpuset.cpus.effective" -+#define CGROUP2_CPUSET_MEMS_EFFECTIVE "cpuset.mems.effective" -+#define CGROUP2_CPUSET_CPUS "cpuset.cpus" -+#define CGROUP2_CPUSET_MEMS "cpuset.mems" -+#define CGROUP2_IO_WEIGHT "io.weight" -+#define CGROUP2_IO_BFQ_WEIGHT "io.bfq.weight" -+#define CGROUP2_IO_MAX "io.max" -+#define CGROUP2_MEMORY_MAX "memory.max" -+#define CGROUP2_MEMORY_LOW "memory.low" -+#define CGROUP2_MEMORY_SWAP_MAX "memory.swap.max" -+#define CGROUP2_HUGETLB_MAX "hugetlb.%s.max" -+#define CGROUP2_PIDS_MAX "pids.max" -+#define CGROUP2_FILES_LIMIT "files.limit" -+ -+#define CGROUP_MOUNTPOINT "/sys/fs/cgroup" -+#define CGROUP_ISULAD_PATH CGROUP_MOUNTPOINT"/isulad" -+#define DEFAULT_CGROUP_DIR_MODE 0755 -+#define DEFAULT_CGROUP_FILE_MODE 0644 -+#define CGROUP2_CONTROLLERS_PATH CGROUP_MOUNTPOINT"/cgroup.controllers" -+#define CGROUP2_SUBTREE_CONTROLLER_PATH CGROUP_MOUNTPOINT"/cgroup.subtree_control" -+#define CGROUP2_CPUSET_CPUS_EFFECTIVE_PATH CGROUP_MOUNTPOINT"/cpuset.cpus.effective" -+#define CGROUP2_CPUSET_MEMS_EFFECTIVE_PATH CGROUP_MOUNTPOINT"/cpuset.mems.effective" -+ -+#ifndef CGROUP2_SUPER_MAGIC -+#define CGROUP2_SUPER_MAGIC 0x63677270 -+#endif -+ -+#ifndef CGROUP_SUPER_MAGIC -+#define CGROUP_SUPER_MAGIC 0x27e0eb -+#endif -+ -+#define CGROUP_VERSION_1 1 -+#define CGROUP_VERSION_2 2 -+ -+static sysinfo_t *g_sysinfo = NULL; -+ - struct layer { - char **controllers; - char *mountpoint; -@@ -966,6 +1008,27 @@ free_out: - free(defaultpagesize); - } - -+static int get_cgroup_version() -+{ -+ struct statfs fs = {0}; -+ -+ if (statfs(CGROUP_MOUNTPOINT, &fs) != 0) { -+ ERROR("failed to statfs %s: %s", CGROUP_MOUNTPOINT, strerror(errno)); -+ return -1; -+ } -+ -+ if (fs.f_type == CGROUP2_SUPER_MAGIC) { -+ return CGROUP_VERSION_2; -+ } else { -+ return CGROUP_VERSION_1; -+ } -+} -+ -+static bool is_hugetlb_max(const char *name) -+{ -+ return util_has_prefix(name, "hugetlb.") && util_has_suffix(name, ".max"); -+} -+ - /* get huge page sizes */ - static char **get_huge_page_sizes() - { -@@ -975,11 +1038,17 @@ static char **get_huge_page_sizes() - char **hps = NULL; - DIR *dir = NULL; - struct dirent *info_archivo = NULL; -+ int cgroup_version = 0; - -- ret = find_cgroup_mountpoint_and_root("hugetlb", &hugetlbmp, NULL); -- if (ret != 0 || hugetlbmp == NULL) { -- ERROR("Hugetlb cgroup not supported"); -- return NULL; -+ cgroup_version = get_cgroup_version(); -+ if (cgroup_version == CGROUP_VERSION_2) { -+ hugetlbmp = util_strdup_s(CGROUP_ISULAD_PATH); -+ } else { -+ ret = find_cgroup_mountpoint_and_root("hugetlb", &hugetlbmp, NULL); -+ if (ret != 0 || hugetlbmp == NULL) { -+ ERROR("Hugetlb cgroup not supported"); -+ return NULL; -+ } - } - - dir = opendir(hugetlbmp); -@@ -994,9 +1063,15 @@ static char **get_huge_page_sizes() - char *pos = NULL; - char *dot2 = NULL; - -- contain = strstr(info_archivo->d_name, "limit_in_bytes"); -- if (contain == NULL) { -- continue; -+ if (cgroup_version == CGROUP_VERSION_2) { -+ if (!is_hugetlb_max(info_archivo->d_name)) { -+ continue; -+ } -+ } else { -+ contain = strstr(info_archivo->d_name, "limit_in_bytes"); -+ if (contain == NULL) { -+ continue; -+ } - } - - dup = util_strdup_s(info_archivo->d_name); -@@ -1151,28 +1226,16 @@ void free_sysinfo(sysinfo_t *sysinfo) - free(sysinfo); - } - --/* get sys info */ --sysinfo_t *get_sys_info(bool quiet) -+static int get_cgroup_info_v1(sysinfo_t *sysinfo, bool quiet) - { - struct layer **layers = NULL; -- sysinfo_t *sysinfo = NULL; -- bool ret = true; -- -- sysinfo = util_common_calloc_s(sizeof(sysinfo_t)); -- if (sysinfo == NULL) { -- ERROR("Out of memory"); -- return NULL; -- } - - layers = cgroup_layers_find(); - if (layers == NULL) { - ERROR("Failed to parse cgroup information"); -- ret = false; -- goto out; -+ return -1; - } - -- sysinfo->ncpus = get_nprocs(); -- - check_cgroup_mem(layers, quiet, &sysinfo->cgmeminfo); - check_cgroup_cpu(layers, quiet, &sysinfo->cgcpuinfo); - check_cgroup_hugetlb(layers, quiet, &sysinfo->hugetlbinfo); -@@ -1180,9 +1243,210 @@ sysinfo_t *get_sys_info(bool quiet) - check_cgroup_cpuset_info(layers, quiet, &sysinfo->cpusetinfo); - check_cgroup_pids(quiet, &sysinfo->pidsinfo); - check_cgroup_files(quiet, &sysinfo->filesinfo); --out: -+ - free_layer(layers); -- if (!ret) { -+ -+ return 0; -+} -+ -+static int cgroup2_enable_all() -+{ -+ int ret = 0; -+ int nret = 0; -+ int n = 0; -+ size_t i = 0; -+ const char *space = ""; -+ char *controllers_str = NULL; -+ char *subtree_controller_str = NULL; -+ char **controllers = NULL; -+ char enable_controllers[PATH_MAX] = {0}; -+ -+ controllers_str = util_read_content_from_file(CGROUP2_CONTROLLERS_PATH); -+ if (controllers_str == NULL || strlen(controllers_str) == 0 || -+ strcmp(controllers_str, "\n") == 0) { -+ ERROR("read cgroup controllers failed"); -+ ret = -1; -+ goto out; -+ } -+ -+ subtree_controller_str = util_read_content_from_file(CGROUP2_SUBTREE_CONTROLLER_PATH); -+ if (subtree_controller_str != NULL && strcmp(controllers_str, subtree_controller_str) == 0) { -+ goto out; -+ } -+ -+ controllers = util_string_split(controllers_str, ' '); -+ if (controllers == NULL) { -+ ERROR("split %s failed", controllers_str); -+ ret = -1; -+ goto out; -+ } -+ -+ for (i = 0; i < util_array_len((const char **)controllers); i++) { -+ nret = snprintf(enable_controllers + n, PATH_MAX - n, "%s+%s", space, controllers[i]); -+ if (nret < 0 || (size_t)nret >= PATH_MAX - n) { -+ ERROR("Path is too long"); -+ goto out; -+ } -+ n += nret; -+ space = " "; -+ } -+ ret = util_write_file(CGROUP2_SUBTREE_CONTROLLER_PATH, enable_controllers, strlen(enable_controllers), -+ DEFAULT_CGROUP_FILE_MODE); -+ if (ret != 0) { -+ ERROR("write %s to %s failed: %s", enable_controllers, CGROUP2_SUBTREE_CONTROLLER_PATH, strerror(errno)); -+ goto out; -+ } -+ -+out: -+ util_free_array(controllers); -+ free(controllers_str); -+ free(subtree_controller_str); -+ -+ return ret; -+} -+ -+static int make_sure_cgroup2_isulad_path_exist() -+{ -+ int ret = 0; -+ -+ if (util_dir_exists(CGROUP_ISULAD_PATH)) { -+ return 0; -+ } -+ -+ if (cgroup2_enable_all() != 0) { -+ return -1; -+ } -+ -+ ret = mkdir(CGROUP_ISULAD_PATH, DEFAULT_CGROUP_DIR_MODE); -+ if (ret != 0 && (errno != EEXIST || !util_dir_exists(CGROUP_ISULAD_PATH))) { -+ return -1; -+ } -+ -+ return ret; -+} -+ -+static int get_cgroup_info_v2(sysinfo_t *sysinfo, bool quiet) -+{ -+ int ret = 0; -+ int nret = 0; -+ char *size = NULL; -+ char path[PATH_MAX] = {0}; -+ -+ if (make_sure_cgroup2_isulad_path_exist() != 0) { -+ return -1; -+ } -+ -+ // cpu cgroup -+ sysinfo->cgcpuinfo.cpu_shares = cgroup_enabled(CGROUP_ISULAD_PATH, CGROUP2_CPU_WEIGHT); -+ cgroup_do_log(quiet, !(sysinfo->cgcpuinfo.cpu_shares), "Your kernel does not support cgroup2 cpu weight"); -+ -+ sysinfo->cgcpuinfo.cpu_cfs_period = cgroup_enabled(CGROUP_ISULAD_PATH, CGROUP2_CPU_MAX); -+ sysinfo->cgcpuinfo.cpu_cfs_quota = sysinfo->cgcpuinfo.cpu_cfs_period; -+ cgroup_do_log(quiet, !(sysinfo->cgcpuinfo.cpu_cfs_period), "Your kernel does not support cgroup2 cpu max"); -+ -+ sysinfo->cpusetinfo.cpuset = cgroup_enabled(CGROUP_ISULAD_PATH, CGROUP2_CPUSET_CPUS_EFFECTIVE) && -+ cgroup_enabled(CGROUP_ISULAD_PATH, CGROUP2_CPUSET_CPUS) && -+ cgroup_enabled(CGROUP_ISULAD_PATH, CGROUP2_CPUSET_MEMS_EFFECTIVE) && -+ cgroup_enabled(CGROUP_ISULAD_PATH, CGROUP2_CPUSET_MEMS); -+ cgroup_do_log(quiet, !(sysinfo->cpusetinfo.cpuset), "Your kernel does not support cpuset"); -+ if (sysinfo->cpusetinfo.cpuset) { -+ sysinfo->cpusetinfo.cpus = util_read_content_from_file(CGROUP2_CPUSET_CPUS_EFFECTIVE_PATH); -+ sysinfo->cpusetinfo.mems = util_read_content_from_file(CGROUP2_CPUSET_MEMS_EFFECTIVE_PATH); -+ if (sysinfo->cpusetinfo.cpus == NULL || sysinfo->cpusetinfo.mems == NULL) { -+ ERROR("read cpus or mems failed"); -+ return -1; -+ } -+ sysinfo->cpusetinfo.cpus = util_trim_space(sysinfo->cpusetinfo.cpus); -+ sysinfo->cpusetinfo.mems = util_trim_space(sysinfo->cpusetinfo.mems); -+ } -+ -+ // io cgroup -+ sysinfo->blkioinfo.blkio_weight = cgroup_enabled(CGROUP_ISULAD_PATH, CGROUP2_IO_BFQ_WEIGHT) || -+ cgroup_enabled(CGROUP_ISULAD_PATH, CGROUP2_IO_WEIGHT); -+ sysinfo->blkioinfo.blkio_weight_device = sysinfo->blkioinfo.blkio_weight; -+ cgroup_do_log(quiet, !(sysinfo->blkioinfo.blkio_weight), "Your kernel does not support cgroup2 io weight"); -+ -+ sysinfo->blkioinfo.blkio_read_bps_device = cgroup_enabled(CGROUP_ISULAD_PATH, CGROUP2_IO_MAX); -+ sysinfo->blkioinfo.blkio_write_bps_device = sysinfo->blkioinfo.blkio_read_bps_device; -+ sysinfo->blkioinfo.blkio_read_iops_device = sysinfo->blkioinfo.blkio_read_bps_device; -+ sysinfo->blkioinfo.blkio_write_iops_device = sysinfo->blkioinfo.blkio_read_bps_device; -+ cgroup_do_log(quiet, !(sysinfo->blkioinfo.blkio_read_bps_device), "Your kernel does not support cgroup2 io max"); -+ -+ // memory cgroup -+ sysinfo->cgmeminfo.limit = cgroup_enabled(CGROUP_ISULAD_PATH, CGROUP2_MEMORY_MAX); -+ cgroup_do_log(quiet, !(sysinfo->cgmeminfo.limit), "Your kernel does not support cgroup2 memory max"); -+ -+ sysinfo->cgmeminfo.reservation = cgroup_enabled(CGROUP_ISULAD_PATH, CGROUP2_MEMORY_LOW); -+ cgroup_do_log(quiet, !(sysinfo->cgmeminfo.reservation), "Your kernel does not support cgroup2 memory low"); -+ -+ sysinfo->cgmeminfo.swap = cgroup_enabled(CGROUP_ISULAD_PATH, CGROUP2_MEMORY_SWAP_MAX); -+ cgroup_do_log(quiet, !(sysinfo->cgmeminfo.swap), "Your kernel does not support cgroup2 memory swap max"); -+ -+ // pids cgroup -+ sysinfo->pidsinfo.pidslimit = cgroup_enabled(CGROUP_ISULAD_PATH, CGROUP2_PIDS_MAX); -+ cgroup_do_log(quiet, !(sysinfo->pidsinfo.pidslimit), "Your kernel does not support cgroup2 pids max"); -+ -+ // hugetlb cgroup -+ size = get_default_huge_page_size(); -+ if (size != NULL) { -+ nret = snprintf(path, sizeof(path), CGROUP2_HUGETLB_MAX, size); -+ if (nret < 0 || (size_t)nret >= sizeof(path)) { -+ WARN("Failed to print hugetlb path"); -+ ret = -1; -+ goto out; -+ } -+ sysinfo->hugetlbinfo.hugetlblimit = cgroup_enabled(CGROUP_ISULAD_PATH, path); -+ cgroup_do_log(quiet, !sysinfo->hugetlbinfo.hugetlblimit, "Your kernel does not support cgroup2 hugetlb limit"); -+ } else { -+ WARN("Your kernel does not support cgroup2 hugetlb limit"); -+ } -+ -+ // files cgroup -+ sysinfo->filesinfo.fileslimit = cgroup_enabled(CGROUP_ISULAD_PATH, CGROUP2_FILES_LIMIT); -+ cgroup_do_log(quiet, !(sysinfo->filesinfo.fileslimit), "Your kernel does not support cgroup2 files limit"); -+ -+out: -+ free(size); -+ -+ return ret; -+} -+ -+/* get sys info */ -+sysinfo_t *get_sys_info(bool quiet) -+{ -+ int cgroup_version = 0; -+ sysinfo_t *sysinfo = NULL; -+ int ret = 0; -+ -+ if (g_sysinfo != NULL) { -+ return g_sysinfo; -+ } -+ -+ sysinfo = util_common_calloc_s(sizeof(sysinfo_t)); -+ if (sysinfo == NULL) { -+ ERROR("Out of memory"); -+ return NULL; -+ } -+ -+ sysinfo->ncpus = get_nprocs(); -+ -+ cgroup_version = get_cgroup_version(); -+ if (cgroup_version < 0) { -+ ret = -1; -+ goto out; -+ } -+ -+ if (cgroup_version == CGROUP_VERSION_1) { -+ ret = get_cgroup_info_v1(sysinfo, quiet); -+ } else { -+ ret = get_cgroup_info_v2(sysinfo, quiet); -+ } -+ if (ret != 0) { -+ goto out; -+ } -+ g_sysinfo = sysinfo; -+out: -+ if (ret != 0) { - free_sysinfo(sysinfo); - sysinfo = NULL; - } -diff --git a/src/daemon/executor/container_cb/execution_create.c b/src/daemon/executor/container_cb/execution_create.c -index acad7fe3..9136348e 100644 ---- a/src/daemon/executor/container_cb/execution_create.c -+++ b/src/daemon/executor/container_cb/execution_create.c -@@ -908,7 +908,6 @@ static int adapt_host_spec(host_config *host_spec) - } - - out: -- free_sysinfo(sysinfo); - return ret; - } - -@@ -1292,7 +1291,6 @@ static int cpurt_controller_init(const char *cgroups_path) - ret = do_init_cpurt_cgroups_path(dirpath, 0, mnt_root, cpu_rt_period, cpu_rt_runtime); - - out: -- free_sysinfo(sysinfo); - free(mnt_root); - free(dup); - return ret; -diff --git a/src/daemon/modules/spec/verify.c b/src/daemon/modules/spec/verify.c -index cef95065..2a73f7c1 100644 ---- a/src/daemon/modules/spec/verify.c -+++ b/src/daemon/modules/spec/verify.c -@@ -425,6 +425,20 @@ static int verify_cpu_cfs_period(const sysinfo_t *sysinfo, int64_t cpu_cfs_perio - ret = -1; - goto out; - } -+ -+ if (cpu_cfs_period > 0 && cpu_cfs_period < 1000) { -+ ERROR("CPU cfs period can not be less than 1ms (i.e. 1000)"); -+ isulad_set_error_message("CPU cfs period can not be less than 1ms (i.e. 1000)"); -+ ret = -1; -+ goto out; -+ } -+ -+ if (cpu_cfs_period > 1000000) { -+ ERROR("CPU cfs period can not be more than 1s (i.e. 1000000)"); -+ isulad_set_error_message("CPU cfs period can not be more than 1s (i.e. 1000000)"); -+ ret = -1; -+ goto out; -+ } - out: - return ret; - } -@@ -1600,7 +1614,6 @@ int verify_container_settings(const oci_runtime_spec *container) - } - - out: -- free_sysinfo(sysinfo); - return ret; - } - -@@ -1980,7 +1993,6 @@ static int host_config_settings_with_sysinfo(host_config *hostconfig, bool updat - } - - out: -- free_sysinfo(sysinfo); - return ret; - } - --- -2.25.1 - diff --git a/0063-add-testcases-for-cgroup-v2.patch b/0063-add-testcases-for-cgroup-v2.patch deleted file mode 100644 index 5aca5de..0000000 --- a/0063-add-testcases-for-cgroup-v2.patch +++ /dev/null @@ -1,785 +0,0 @@ -From 4822231b594762cf3301518ef0bff0396584b493 Mon Sep 17 00:00:00 2001 -From: WangFengTu -Date: Mon, 8 Feb 2021 14:32:46 +0800 -Subject: [PATCH 063/104] add testcases for cgroup v2 - -Signed-off-by: WangFengTu ---- - CI/test_cases/manual_cases/cgroupv2.sh | 765 +++++++++++++++++++++++++ - 1 file changed, 765 insertions(+) - create mode 100755 CI/test_cases/manual_cases/cgroupv2.sh - -diff --git a/CI/test_cases/manual_cases/cgroupv2.sh b/CI/test_cases/manual_cases/cgroupv2.sh -new file mode 100755 -index 00000000..bd1dc482 ---- /dev/null -+++ b/CI/test_cases/manual_cases/cgroupv2.sh -@@ -0,0 +1,765 @@ -+#!/bin/bash -+# -+# attributes: isulad cgroupv2 -+# concurrent: YES -+# spend time: 15 -+ -+####################################################################### -+##- @Copyright (C) Huawei Technologies., Ltd. 2020. All rights reserved. -+# - iSulad licensed under the Mulan PSL v2. -+# - You can use this software according to the terms and conditions of the Mulan PSL v2. -+# - You may obtain a copy of Mulan PSL v2 at: -+# - http://license.coscl.org.cn/MulanPSL2 -+# - THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND, EITHER EXPRESS OR -+# - IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT, MERCHANTABILITY OR FIT FOR A PARTICULAR -+# - PURPOSE. -+# - See the Mulan PSL v2 for more details. -+##- @Description:CI -+##- @Author: wangfengtu -+##- @Create: 2021-01-26 -+####################################################################### -+ -+declare -r curr_path=$(dirname $(readlink -f "$0")) -+source ../helpers.sh -+test="cgroupv2 test => test_cgroupv2" -+cgroupv2=0 -+cgroup2_update="cgroup2_update" -+ -+function test_cgroup2_cpu() -+{ -+ local ret=0 -+ -+ if [[ -f /sys/fs/cgroup/isulad/cpu.weight ]];then -+ # min value -+ isula run -ti --rm --cpu-shares 2 busybox cat /sys/fs/cgroup/cpu.weight | grep ^1$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 cpu.weight min value failed" && ((ret++)) -+ -+ # max value -+ isula run -ti --rm --cpu-shares 262144 busybox cat /sys/fs/cgroup/cpu.weight | grep ^10000$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 cpu.weight max value failed" && ((ret++)) -+ -+ # invalid value -+ isula run -ti --rm --cpu-shares -1 busybox echo hello -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 cpu.weight -1 failed" && ((ret++)) -+ -+ # default value -+ isula run -ti --rm --cpu-shares 0 busybox cat /sys/fs/cgroup/cpu.weight | grep ^100$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 cpu.weight default value failed" && ((ret++)) -+ fi -+ -+ if [[ -f /sys/fs/cgroup/isulad/cpu.max ]];then -+ # normal value -+ isula run -ti --rm --cpu-quota 50000 --cpu-period 12345 busybox cat /sys/fs/cgroup/cpu.max | grep ^"50000 12345"$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 cpu.max normal value failed" && ((ret++)) -+ -+ # invalid min period -+ isula run -ti --rm --cpu-quota 50000 --cpu-period 999 busybox echo hello -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 cpu.max invalid min period failed" && ((ret++)) -+ -+ # invalid max period -+ isula run -ti --rm --cpu-quota 50000 --cpu-period 1000001 busybox echo hello -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 cpu.max invalid max period failed" && ((ret++)) -+ -+ # invalid quota -+ isula run -ti --rm --cpu-quota 999 --cpu-period 1000000 busybox echo hello -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 cpu.max invalid quota failed" && ((ret++)) -+ -+ # default 0 quota -+ isula run -ti --rm --cpu-quota 0 --cpu-period 1000000 busybox cat /sys/fs/cgroup/cpu.max | grep ^"max 1000000"$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 cpu.max default 0 quota failed" && ((ret++)) -+ -+ # default -1 quota -+ isula run -ti --rm --cpu-quota -1 --cpu-period 1000000 busybox cat /sys/fs/cgroup/cpu.max | grep ^"max 1000000"$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 cpu.max default -1 quota failed" && ((ret++)) -+ -+ # cpus 1 -+ isula run -ti --rm --cpus 1 busybox cat /sys/fs/cgroup/cpu.max | grep ^"100000 100000"$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 cpu.max cpus 1 failed" && ((ret++)) -+ -+ # cpus 0 -+ isula run -ti --rm --cpus 0 busybox cat /sys/fs/cgroup/cpu.max | grep ^"max 100000"$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 cpu.max cpus 0 failed" && ((ret++)) -+ fi -+ -+ if [[ -f /sys/fs/cgroup/isulad/cpuset.cpus.effective ]];then -+ # normal value -+ isula run -tid -n cpuset --cpuset-cpus 0 --cpuset-mems 0 busybox sh -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 cpuset run container failed" && ((ret++)) -+ -+ isula exec -ti cpuset cat /sys/fs/cgroup/cpuset.cpus | grep ^0$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 cpuset value not right" && ((ret++)) -+ -+ isula exec -ti cpuset cat /sys/fs/cgroup/cpuset.mems | grep ^0$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 cpuset value not right" && ((ret++)) -+ -+ isula rm -f cpuset -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 cpuset remove container failed" && ((ret++)) -+ -+ # invalid cpus -1 value -+ isula run -tid -n cpuset --cpuset-cpus -1 busybox sh -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 cpuset cpus invalid -1 failed" && ((ret++)) -+ -+ # invalid cpus 100000 value -+ isula run -tid -n cpuset --cpuset-cpus 100000 busybox sh -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 cpuset cpus invalid 100000 failed" && ((ret++)) -+ -+ # invalid mems -1 value -+ isula run -tid -n cpuset --cpuset-mems -1 busybox sh -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 cpuset mems invalid -1 failed" && ((ret++)) -+ -+ # invalid mems 100000 value -+ isula run -tid -n cpuset --cpuset-mems 100000 busybox sh -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 cpuset mems invalid 100000 failed" && ((ret++)) -+ fi -+ -+ return ${ret} -+} -+ -+function test_cgroup2_io() -+{ -+ local ret=0 -+ -+ if [[ -f "/sys/fs/cgroup/isulad/io.bfq.weight" ]];then -+ # min value -+ isula run -ti --rm --blkio-weight 10 busybox cat "/sys/fs/cgroup/io.bfq.weight" | grep 1$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 io.bfq.weight min value failed" && ((ret++)) -+ -+ # max value -+ isula run -ti --rm --blkio-weight 1000 busybox cat "/sys/fs/cgroup/io.bfq.weight" | grep 1000$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 io.bfq.weight max value failed" && ((ret++)) -+ -+ # default value -+ isula run -ti --rm --blkio-weight 0 busybox cat "/sys/fs/cgroup/io.bfq.weight" | grep 100$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 io.bfq.weight default value failed" && ((ret++)) -+ -+ # invalid value -+ isula run -ti --rm --blkio-weight -1 busybox echo hello -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 io.bfq.weight -1 failed" && ((ret++)) -+ fi -+ -+ if [[ -f "/sys/fs/cgroup/isulad/io.bfq.weight_device" ]];then -+ # min value -+ isula run -ti --rm --blkio-weight-device /dev/null:10 busybox cat "/sys/fs/cgroup/io.bfq.weight_device" | grep ^"1:3 10"$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 io.bfq.weight_device max value failed" && ((ret++)) -+ -+ # max value -+ isula run -ti --rm --blkio-weight-device /dev/null:1000 busybox cat "/sys/fs/cgroup/io.bfq.weight_device" | grep ^"1:3 10000"$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 io.bfq.weight_device max value failed" && ((ret++)) -+ -+ # disable weight device -+ isula run -tid -n weight_device --rm --blkio-weight-device /dev/null:0 busybox sh -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 io.bfq.weight_device failed" && ((ret++)) -+ -+ isula exec -ti weight_device cat "/sys/fs/cgroup/io.bfq.weight_device" | grep "1:3" -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 io.bfq.weight_device disable failed" && ((ret++)) -+ -+ isula rm -f weight_device -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 io.bfq.weight_device remove container failed" && ((ret++)) -+ fi -+ -+ if [[ -f "/sys/fs/cgroup/isulad/io.weight" ]];then -+ # min value -+ isula run -ti --rm --blkio-weight 10 busybox cat "/sys/fs/cgroup/io.weight" | grep ^"default 1"$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 io.weight min value failed" && ((ret++)) -+ -+ # max value -+ isula run -ti --rm --blkio-weight 1000 busybox cat "/sys/fs/cgroup/io.weight" | grep ^"default 10000"$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 io.weight max value failed" && ((ret++)) -+ -+ # default value -+ isula run -ti --rm --blkio-weight 0 busybox cat "/sys/fs/cgroup/io.weight" | grep ^"default 100"$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 io.weight default value failed" && ((ret++)) -+ -+ # invalid value -+ isula run -ti --rm --blkio-weight -1 busybox echo hello -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 io.weight -1 failed" && ((ret++)) -+ fi -+ -+ if [[ -f "/sys/fs/cgroup/isulad/io.weight_device" ]];then -+ # min value -+ isula run -ti --rm --blkio-weight-device /dev/null:10 busybox cat "/sys/fs/cgroup/io.weight_device" | grep ^"1:3 10"$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 io.weight max value failed" && ((ret++)) -+ -+ # max value -+ isula run -ti --rm --blkio-weight-device /dev/null:1000 busybox cat "/sys/fs/cgroup/io.weight_device" | grep ^"1:3 10000"$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 io.weight max value failed" && ((ret++)) -+ -+ # disable weight device -+ isula run -tid -n weight_device --rm --blkio-weight-device /dev/null:0 busybox sh -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 io.weight failed" && ((ret++)) -+ -+ isula exec -ti weight_device cat "/sys/fs/cgroup/io.weight_device" | grep ^"1:3"$'\r' -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 io.weight disable failed" && ((ret++)) -+ -+ isula rm -f weight_device -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 io.weight remove container failed" && ((ret++)) -+ fi -+ -+ if [[ -f /sys/fs/cgroup/isulad/io.max ]];then -+ # normal value -+ isula run -ti --rm --device-read-bps /dev/null:1g --device-read-iops /dev/null:1000 --device-write-bps /dev/null:2g --device-write-iops /dev/null:2000 busybox cat /sys/fs/cgroup/io.max | grep ^"1:3 rbps=1073741824 wbps=2147483648 riops=1000 wiops=2000"$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 io.max failed" && ((ret++)) -+ -+ # invalid -+ isula run -ti --rm --device-read-bps /dev/null:-1 busybox echo hello -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 io.max -1 failed" && ((ret++)) -+ -+ # 0 is no limit -+ isula run -ti --rm --device-read-bps /dev/null:0 --device-read-iops /dev/null:0 --device-write-bps /dev/null:0 --device-write-iops /dev/null:0 busybox echo hello -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 io.max 0 failed" && ((ret++)) -+ fi -+ -+ return ${ret} -+} -+ -+function test_cgroup2_memory() -+{ -+ local ret=0 -+ -+ if [[ -f /sys/fs/cgroup/isulad/memory.max ]];then -+ # normal value -+ isula run -ti --rm -m 10m busybox cat /sys/fs/cgroup/memory.max | grep ^10485760$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 memory.max run container failed" && ((ret++)) -+ -+ # 0 is max -+ isula run -ti --rm -m 0 busybox cat /sys/fs/cgroup/memory.max | grep ^max$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 memory.max 0 failed" && ((ret++)) -+ -+ # invalid -+ isula run -ti --rm -m -1 busybox echo hello -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 memory.max -1 failed" && ((ret++)) -+ fi -+ -+ if [[ -f /sys/fs/cgroup/isulad/memory.low ]];then -+ # normal value -+ isula run -ti --rm --memory-reservation 10m busybox cat /sys/fs/cgroup/memory.low | grep ^10485760$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 memory.low normal value failed" && ((ret++)) -+ -+ # -1 is invalid -+ isula run -ti --rm --memory-reservation -1 busybox echo hello -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 memory.low invalid failed" && ((ret++)) -+ -+ # 0 -+ isula run -ti --rm --memory-reservation 0 busybox cat /sys/fs/cgroup/memory.low | grep ^0$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 memory.low 0 failed" && ((ret++)) -+ fi -+ -+ if [[ -f /sys/fs/cgroup/isulad/memory.swap.max ]];then -+ # normal value -+ isula run -ti --rm --memory 10m --memory-swap 20m busybox cat /sys/fs/cgroup/memory.swap.max | grep ^10485760$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 memory.swap.max normal value failed" && ((ret++)) -+ -+ # invalid -+ isula run -ti --rm --memory 10m --memory-swap 5m busybox echo hello -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 memory.swap.max invalid failed" && ((ret++)) -+ -+ # 0 is the same as memory -+ isula run -ti --rm --memory 10m --memory-swap 0 busybox cat /sys/fs/cgroup/memory.swap.max | grep ^10485760$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 memory.swap.max 0 failed" && ((ret++)) -+ -+ # -1 is max -+ isula run -ti --rm --memory 10m --memory-swap -1 busybox cat /sys/fs/cgroup/memory.swap.max | grep ^max$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 memory.swap.max -1 failed" && ((ret++)) -+ -+ # disable swap -+ isula run -ti --rm --memory 10m --memory-swap 10m busybox cat /sys/fs/cgroup/memory.swap.max | grep ^0$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 memory.swap.max disable swap failed" && ((ret++)) -+ fi -+ -+ return ${ret} -+} -+ -+function test_cgroup2_pids() -+{ -+ local ret=0 -+ -+ if [[ -f /sys/fs/cgroup/isulad/pids.max ]];then -+ # normal value -+ isula run -ti --rm --pids-limit 123456 busybox cat /sys/fs/cgroup/pids.max | grep ^123456$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 pids.max run container failed" && ((ret++)) -+ -+ # -1 is max -+ isula run -ti --rm --pids-limit -1 busybox cat /sys/fs/cgroup/pids.max | grep ^max$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 pids.max run container failed" && ((ret++)) -+ -+ # 0 is max -+ isula run -ti --rm --pids-limit 0 busybox cat /sys/fs/cgroup/pids.max | grep ^max$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 pids.max run container failed" && ((ret++)) -+ fi -+ -+ return ${ret} -+} -+ -+function test_cgroup2_hugetlb() -+{ -+ local ret=0 -+ -+ if [[ -f /sys/fs/cgroup/isulad/hugetlb.2MB.max ]];then -+ isula run -ti --rm --hugetlb-limit 2M:32M busybox cat /sys/fs/cgroup/hugetlb.2MB.max | grep ^33554432$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 hugetlb.2M.max run container failed" && ((ret++)) -+ fi -+ -+ return ${ret} -+} -+ -+function test_cgroup2_freeze() -+{ -+ local ret=0 -+ -+ if [[ -f /sys/fs/cgroup/isulad/cgroup.freeze ]];then -+ isula run -tid -n freeze busybox sh -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 freeze run container failed" && ((ret++)) -+ -+ isula pause freeze -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 freeze pause container failed" && ((ret++)) -+ -+ isula exec -ti freeze echo hello -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 freeze pause take no effect" && ((ret++)) -+ -+ isula unpause freeze -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 freeze unpause container failed" && ((ret++)) -+ -+ isula exec -ti freeze echo hello -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 freeze unpause take no effect" && ((ret++)) -+ -+ isula rm -f freeze -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 freeze remove container failed" && ((ret++)) -+ fi -+ -+ return ${ret} -+} -+ -+function test_cgroup2_files() -+{ -+ local ret=0 -+ -+ if [[ -f /sys/fs/cgroup/isulad/files.limit ]];then -+ # normal value -+ isula run -ti --rm --files-limit 123 busybox cat /sys/fs/cgroup/files.limit | grep ^123$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 files.limit run container failed" && ((ret++)) -+ -+ # -1 is max -+ isula run -ti --rm --files-limit -1 busybox cat /sys/fs/cgroup/files.limit | grep ^max$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 files.limit run container failed" && ((ret++)) -+ -+ # 0 is max -+ isula run -ti --rm --files-limit 0 busybox cat /sys/fs/cgroup/files.limit | grep ^max$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 files.limit run container failed" && ((ret++)) -+ fi -+ -+ return ${ret} -+} -+ -+function test_cgroup2_cpu_update() -+{ -+ local ret=0 -+ -+ if [[ -f /sys/fs/cgroup/isulad/cpu.weight ]];then -+ # min value -+ isula update --cpu-shares 2 $cgroup2_update -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update cpu.weight min value failed" && ((ret++)) -+ -+ isula exec -ti $cgroup2_update cat /sys/fs/cgroup/cpu.weight | grep ^1$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update cpu.weight min value not right" && ((ret++)) -+ -+ # max value -+ isula update --cpu-shares 262144 $cgroup2_update -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update cpu.weight max value failed" && ((ret++)) -+ -+ isula exec -ti $cgroup2_update cat /sys/fs/cgroup/cpu.weight | grep ^10000$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update cpu.weight max value not right" && ((ret++)) -+ -+ # 0 means not change -+ isula update --cpu-shares 0 $cgroup2_update -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update cpu.weight 0 failed" && ((ret++)) -+ -+ isula exec -ti $cgroup2_update cat /sys/fs/cgroup/cpu.weight | grep ^10000$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update cpu.weight 0 not right" && ((ret++)) -+ -+ # invalid value -+ isula update --cpu-shares -1 $cgroup2_update -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update cpu.weight -1 failed" && ((ret++)) -+ fi -+ -+ if [[ -f /sys/fs/cgroup/isulad/cpu.max ]];then -+ # normal value -+ isula update --cpu-quota 50000 --cpu-period 12345 $cgroup2_update -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update cpu.max normal value failed" && ((ret++)) -+ -+ isula exec -ti $cgroup2_update cat /sys/fs/cgroup/cpu.max | grep ^"50000 12345"$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update cpu.max normal value not right" && ((ret++)) -+ -+ # invalid min period -+ isula update --cpu-quota 50000 --cpu-period 999 $cgroup2_update -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update cpu.max invalid min period failed" && ((ret++)) -+ -+ # invalid max period -+ isula update --cpu-quota 50000 --cpu-period 1000001 $cgroup2_update -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update cpu.max invalid max period failed" && ((ret++)) -+ -+ # invalid quota -+ isula update --cpu-quota 999 --cpu-period 1000000 $cgroup2_update -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update cpu.max invalid quota failed" && ((ret++)) -+ -+ # default 0 quota -+ isula update --cpu-quota 0 --cpu-period 1000000 $cgroup2_update -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update cpu.max 0 quota failed" && ((ret++)) -+ -+ isula exec -ti $cgroup2_update cat /sys/fs/cgroup/cpu.max | grep ^"max 1000000"$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update cpu.max 0 quota value not right" && ((ret++)) -+ -+ # default -1 quota -+ isula update --cpu-quota -1 --cpu-period 1000000 $cgroup2_update -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update cpu.max -1 quota failed" && ((ret++)) -+ -+ isula exec -ti $cgroup2_update cat /sys/fs/cgroup/cpu.max | grep ^"max 1000000"$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update cpu.max -1 quota value not right" && ((ret++)) -+ -+ # cpus 1 -+ isula run -tid -n cpu_update busybox sh -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 run cpu_update failed" && ((ret++)) -+ -+ isula update --cpus 1 cpu_update -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update cpu.max cpus 1 failed" && ((ret++)) -+ -+ isula exec -ti cpu_update cat /sys/fs/cgroup/cpu.max | grep ^"100000 100000"$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update cpu.max cpus 1 value not right" && ((ret++)) -+ -+ # cpus 0 means not change -+ isula update --cpus 0 cpu_update -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update cpu.max cpus 0 failed" && ((ret++)) -+ -+ isula exec -ti cpu_update cat /sys/fs/cgroup/cpu.max | grep ^"100000 100000"$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update cpu.max cpus 0 value not right" && ((ret++)) -+ -+ isula rm -f cpu_update -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 remove cpu_update failed" && ((ret++)) -+ fi -+ -+ if [[ -f /sys/fs/cgroup/isulad/cpuset.cpus.effective ]];then -+ # normal value -+ isula update --cpuset-cpus 0 --cpuset-mems 0 $cgroup2_update -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update update cpuset failed" && ((ret++)) -+ -+ isula exec -ti $cgroup2_update cat /sys/fs/cgroup/cpuset.cpus | grep -E ^0$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update cpuset.cpus value not right" && ((ret++)) -+ -+ isula exec -ti $cgroup2_update cat /sys/fs/cgroup/cpuset.mems | grep -E ^0$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update cpuset.mems value not right" && ((ret++)) -+ -+ # invalid cpus -1 value -+ isula update --cpuset-cpus -1 $cgroup2_update -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update cpuset.cpus invalid -1 failed" && ((ret++)) -+ -+ # invalid cpus 100000 value -+ isula update --cpuset-cpus 100000 $cgroup2_update -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update cpuset.cpus invalid 100000 failed" && ((ret++)) -+ -+ # invalid mems -1 value -+ isula update --cpuset-mems -1 $cgroup2_update -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update cpuset.mems invalid -1 failed" && ((ret++)) -+ -+ # invalid mems 100000 value -+ isula update --cpuset-mems 100000 $cgroup2_update -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update cpuset.mems invalid 100000 failed" && ((ret++)) -+ fi -+ -+ return ${ret} -+} -+ -+function test_cgroup2_io_update() -+{ -+ local ret=0 -+ -+ if [[ -f "/sys/fs/cgroup/isulad/io.bfq.weight" ]];then -+ # min value -+ isula update --blkio-weight 10 $cgroup2_update -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update io.bfq.weight min value failed" && ((ret++)) -+ -+ isula exec -ti $cgroup2_update cat "/sys/fs/cgroup/io.bfq.weight" | grep 1$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update io.bfq.weight min value not right" && ((ret++)) -+ -+ # max value -+ isula update --blkio-weight 1000 $cgroup2_update -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update io.bfq.weight max value failed" && ((ret++)) -+ -+ isula exec -ti $cgroup2_update cat "/sys/fs/cgroup/io.bfq.weight" | grep 1000$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update io.bfq.weight max value not right" && ((ret++)) -+ -+ # 0 means value not change -+ isula update --blkio-weight 0 $cgroup2_update -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update io.bfq.weight 0 failed" && ((ret++)) -+ -+ isula exec -ti $cgroup2_update cat "/sys/fs/cgroup/io.bfq.weight" | grep 1000$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update io.bfq.weight 0 not right" && ((ret++)) -+ -+ # invalid value -+ isula update --blkio-weight -1 $cgroup2_update echo hello -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update io.bfqweight -1 failed" && ((ret++)) -+ fi -+ -+ if [[ -f "/sys/fs/cgroup/isulad/io.weight" ]];then -+ # min value -+ isula update --blkio-weight 10 $cgroup2_update -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update io.weight min value failed" && ((ret++)) -+ -+ isula exec -ti $cgroup2_update cat "/sys/fs/cgroup/io.weight" | grep ^"default 1"$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update io.weight min value not right" && ((ret++)) -+ -+ # max value -+ isula update --blkio-weight 1000 $cgroup2_update -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update io.weight max value failed" && ((ret++)) -+ -+ isula exec -ti $cgroup2_update cat "/sys/fs/cgroup/io.weight" | grep ^"default 10000"$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update io.weight max value not right" && ((ret++)) -+ -+ # 0 means value not change -+ isula update --blkio-weight 0 $cgroup2_update -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update io.weight 0 failed" && ((ret++)) -+ -+ isula exec -ti $cgroup2_update cat "/sys/fs/cgroup/io.weight" | grep ^"default 10000"$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update io.weight 0 not right" && ((ret++)) -+ -+ # invalid value -+ isula update --blkio-weight -1 $cgroup2_update echo hello -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update io.weight -1 failed" && ((ret++)) -+ fi -+ -+ return ${ret} -+} -+ -+function test_cgroup2_memory_update() -+{ -+ local ret=0 -+ -+ if [[ -f /sys/fs/cgroup/isulad/memory.max ]];then -+ # normal value -+ isula update -m 10m $cgroup2_update -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update memory.max 10m failed" && ((ret++)) -+ -+ isula exec -ti $cgroup2_update cat /sys/fs/cgroup/memory.max | grep ^10485760$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update memory.max 10m value not right" && ((ret++)) -+ -+ # 0 is not change -+ isula update -m 0 $cgroup2_update -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update memory.max 0 failed" && ((ret++)) -+ -+ isula exec -ti $cgroup2_update cat /sys/fs/cgroup/memory.max | grep ^10485760$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update memory.max 0 not right" && ((ret++)) -+ -+ # invalid -+ isula update -m -1 $cgroup2_update -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update memory.max -1 failed" && ((ret++)) -+ fi -+ -+ if [[ -f /sys/fs/cgroup/isulad/memory.low ]];then -+ # normal value -+ isula update --memory-reservation 10m $cgroup2_update -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update memory.low normal value failed" && ((ret++)) -+ -+ isula exec -ti $cgroup2_update cat /sys/fs/cgroup/memory.low | grep ^10485760$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update memory.low normal value not right" && ((ret++)) -+ -+ # 0 means not change -+ isula update --memory-reservation 0 $cgroup2_update -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update memory.low 0 failed" && ((ret++)) -+ -+ isula exec -ti $cgroup2_update cat /sys/fs/cgroup/memory.low | grep ^10485760$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update memory.low 0 value not right" && ((ret++)) -+ -+ # -1 is invalid -+ isula update --memory-reservation -1 $cgroup2_update -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update memory.low invalid failed" && ((ret++)) -+ fi -+ -+ if [[ -f /sys/fs/cgroup/isulad/memory.swap.max ]];then -+ # normal value -+ isula update --memory 10m --memory-swap 20m $cgroup2_update -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update memory.swap.max normal value failed" && ((ret++)) -+ -+ isula exec -ti $cgroup2_update cat /sys/fs/cgroup/memory.swap.max | grep ^10485760$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update memory.swap.max normal value not right" && ((ret++)) -+ -+ # invalid -+ isula update --memory 10m --memory-swap 5m $cgroup2_update -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update memory.swap.max invalid failed" && ((ret++)) -+ -+ # 0 is the same as memory -+ isula update --memory 10m --memory-swap 0 $cgroup2_update -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update memory.swap.max 0 failed" && ((ret++)) -+ -+ isula exec -ti $cgroup2_update cat /sys/fs/cgroup/memory.swap.max | grep ^10485760$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update memory.swap.max 0 value not right" && ((ret++)) -+ -+ # -1 is max -+ isula update --memory 10m --memory-swap -1 $cgroup2_update -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update memory.swap.max -1 failed" && ((ret++)) -+ -+ isula exec -ti $cgroup2_update cat /sys/fs/cgroup/memory.swap.max | grep ^max$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update memory.swap.max -1 value not right" && ((ret++)) -+ -+ # disable swap -+ isula update --memory 10m --memory-swap 10m $cgroup2_update -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update memory.swap.max disable swap failed" && ((ret++)) -+ -+ isula exec -ti $cgroup2_update cat /sys/fs/cgroup/memory.swap.max | grep ^0$'\r' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update memory.swap.max disable swap value not right" && ((ret++)) -+ fi -+ -+ return ${ret} -+} -+ -+function test_cgroup2_unsupported() -+{ -+ local ret=0 -+ -+ isula run -ti --rm --cpu-rt-period 1000000 --cpu-rt-runtime 1000000 busybox echo hello -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 --cpu-rt-period and --cpu-rt-runtime should failed" && ((ret++)) -+ -+ isula run -ti --rm --kernel-memory 100m busybox echo hello -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 --kernel-memory should failed" && ((ret++)) -+ -+ isula run -ti --rm --memory-swappiness 50 busybox echo hello -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 --memory-swappiness should failed" && ((ret++)) -+ -+ isula run -ti --rm --oom-kill-disable busybox echo hello -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 --oom-kill-disable should failed" && ((ret++)) -+ -+ isula update --cpu-rt-period 1000000 --cpu-rt-runtime 1000000 $cgroup2_update -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update --cpu-rt-period and --cpu-rt-runtime should failed" && ((ret++)) -+ -+ isula update --kernel-memory 100m $cgroup2_update -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 update --kernel-memory should failed" && ((ret++)) -+ -+ return ${ret} -+} -+ -+function test_cgroup2_parent() -+{ -+ local ret=0 -+ -+ rmdir /sys/fs/cgroup/isulad -+ rmdir /sys/fs/cgroup/abc -+ -+ id=`isula run -tid --cgroup-parent /abc -m 10m busybox sh` -+ cat /sys/fs/cgroup/abc/$id/memory.max | grep ^10485760$ -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 --cgroup-parent cannot work" && ((ret++)) -+ -+ return ${ret} -+} -+ -+function test_cgroup2_device() -+{ -+ local ret=0 -+ -+ dev_name=/dev/$(lsblk | grep disk | head -n 1 | awk '{print $1}') -+ dev_num=$(lsblk | grep disk | head -n 1 | awk '{print $2}') -+ mknod_num=$(echo $dev_num | sed 's/:/ /g') -+ -+ # read only -+ isula run -ti --rm --device=$dev_name:/dev/sdx:r busybox sh -c 'echo q | fdisk /dev/sdx | grep "read only"' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 --device r failed" && ((ret++)) -+ -+ isula run -ti --rm --device=$dev_name:/dev/sdx:rm busybox sh -c 'echo q | fdisk /dev/sdx | grep "read only"' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 --device rm failed" && ((ret++)) -+ -+ isula run -ti --rm --device-cgroup-rule="b $dev_num r" busybox sh -c "mknod /dev/sdx b $mknod_num && echo q | fdisk /dev/sdx | grep 'read only'" -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 --device r failed" && ((ret++)) -+ -+ isula run -ti --rm --device-cgroup-rule="b $dev_num rm" busybox sh -c "mknod /dev/sdx b $mknod_num && echo q | fdisk /dev/sdx | grep 'read only'" -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 --device rm failed" && ((ret++)) -+ -+ # can't read -+ isula run -ti --rm --device=$dev_name:/dev/sdx:w busybox sh -c 'echo q | fdisk /dev/sdx 2>&1 | grep "t open"' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 --device w failed" && ((ret++)) -+ -+ isula run -ti --rm --device=$dev_name:/dev/sdx:wm busybox sh -c 'echo q | fdisk /dev/sdx 2>&1 | grep "t open"' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 --device wm failed" && ((ret++)) -+ -+ isula run -ti --rm --device-cgroup-rule="b $dev_num w" busybox sh -c "mknod /dev/sdx b $mknod_num && echo q | fdisk /dev/sdx 2>&1 | grep 't open'" -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 --device w failed" && ((ret++)) -+ -+ isula run -ti --rm --device-cgroup-rule="b $dev_num wm" busybox sh -c "mknod /dev/sdx b $mknod_num && echo q | fdisk /dev/sdx 2>&1 | grep 't open'" -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 --device wm failed" && ((ret++)) -+ -+ # can't read write -+ isula run -ti --rm --device=$dev_name:/dev/sdx:m busybox sh -c 'echo q | fdisk /dev/sdx 2>&1 | grep "t open"' -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 --device m" && ((ret++)) -+ -+ isula run -ti --rm --device-cgroup-rule="b $dev_num m" busybox sh -c "mknod /dev/sdx b $mknod_num && echo q | fdisk /dev/sdx 2>&1 | grep 't open'" -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 --device wm failed" && ((ret++)) -+ -+ isula run -ti --rm --device-cgroup-rule="b *:* m" busybox sh -c "mknod /dev/sdx b $mknod_num && echo q | fdisk /dev/sdx 2>&1 | grep 't open'" -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 --device wm failed" && ((ret++)) -+ -+ return ${ret} -+} -+ -+function prepare_test_cgroupv2() -+{ -+ local ret=0 -+ -+ cat /proc/1/mountinfo | grep "\- cgroup2" | grep "/sys/fs/cgroup rw" -+ if [ x"$?" == x"0" ];then -+ cgroupv2=1 -+ else -+ return 0 -+ fi -+ -+ all=$(cat /sys/fs/cgroup/cgroup.controllers) -+ sub=$(cat /sys/fs/cgroup/cgroup.subtree_control) -+ if [ x"$all" != x"$sub" ];then -+ echo +cpuset > /sys/fs/cgroup/cgroup.subtree_control -+ echo +cpu > /sys/fs/cgroup/cgroup.subtree_control -+ echo +io > /sys/fs/cgroup/cgroup.subtree_control -+ echo +memory > /sys/fs/cgroup/cgroup.subtree_control -+ echo +pids > /sys/fs/cgroup/cgroup.subtree_control -+ echo +hugetlb > /sys/fs/cgroup/cgroup.subtree_control -+ echo +files > /sys/fs/cgroup/cgroup.subtree_control -+ fi -+ -+ mkdir -p /sys/fs/cgroup/isulad -+ chmod 755 /sys/fs/cgroup/isulad -+ -+ isula rm -f `isula ps -a -q` -+ -+ isula run -tid -n $cgroup2_update busybox sh -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - cgroup2 run container failed" && ((ret++)) -+ -+ return ${ret} -+} -+ -+function post_test_cgroupv2() -+{ -+ isula rm -f `isula ps -a -q` -+ return 0 -+} -+ -+declare -i ans=0 -+ -+msg_info "${test} starting..." -+[[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - start isulad failed" && ((ret++)) -+ -+prepare_test_cgroupv2 || ((ans++)) -+if [ "$cgroupv2" == "1" ];then -+ test_cgroup2_cpu || ((ans++)) -+ test_cgroup2_io || ((ans++)) -+ test_cgroup2_memory || ((ans++)) -+ test_cgroup2_pids || ((ans++)) -+ test_cgroup2_hugetlb || ((ans++)) -+ test_cgroup2_freeze || ((ans++)) -+ test_cgroup2_files || ((ans++)) -+ test_cgroup2_cpu_update || ((ans++)) -+ test_cgroup2_io_update || ((ans++)) -+ test_cgroup2_memory_update || ((ans++)) -+ test_cgroup2_unsupported || ((ans++)) -+ test_cgroup2_parent || ((ans++)) -+ test_cgroup2_device || ((ans++)) -+else -+ msg_info "${test} not cgroup v2 enviorment, ignore test..." -+fi -+post_test_cgroupv2 -+ -+msg_info "${test} finished with return ${ans}..." -+ -+show_result ${ans} "${curr_path}/${0}" --- -2.25.1 - diff --git a/0064-Readme-add-configure-image-registry-address.patch b/0064-Readme-add-configure-image-registry-address.patch deleted file mode 100644 index e4d6084..0000000 --- a/0064-Readme-add-configure-image-registry-address.patch +++ /dev/null @@ -1,44 +0,0 @@ -From 36912c87592d8b46aae340df9b51287c6a8ce78b Mon Sep 17 00:00:00 2001 -From: Li Feng -Date: Thu, 1 Apr 2021 20:14:05 +0800 -Subject: [PATCH 064/104] Readme: add configure image registry address - -Signed-off-by: Li Feng ---- - README.md | 17 ++++++++++++++++- - 1 file changed, 16 insertions(+), 1 deletion(-) - -diff --git a/README.md b/README.md -index 68f35f34..fdbc8757 100644 ---- a/README.md -+++ b/README.md -@@ -53,10 +53,25 @@ For more information contact your distribution or package provider. - - you should run `rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-openEuler` first - -+ -+### Configure -+ -+Configure the container image registry address, for example "docker.io" or other registry addrss. -+ -+```sh -+# cat /etc/isulad/daemon.json -+..... -+ "registry-mirrors": [ -+ "docker.io" -+ ], -+..... -+``` -+ - ### Run -+ - We provide `systemd` service to start `iSulad`: - ```sh --systemctl start isulad # run the server with systemd command -+systemctl restart isulad # restart the server with systemd command - ``` - - You can use direct command to start `iSulad` server: --- -2.25.1 - diff --git a/0065-add-iSulad-experiment-in-README.patch b/0065-add-iSulad-experiment-in-README.patch deleted file mode 100644 index 91688c8..0000000 --- a/0065-add-iSulad-experiment-in-README.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 3b743b6c460869b3118a63c22f620383c234e17d Mon Sep 17 00:00:00 2001 -From: zhangxiaoyu -Date: Fri, 2 Apr 2021 15:45:45 +0800 -Subject: [PATCH 065/104] add iSulad experiment in README - -Signed-off-by: zhangxiaoyu ---- - README.md | 8 ++++++++ - 1 file changed, 8 insertions(+) - -diff --git a/README.md b/README.md -index fdbc8757..39e23de1 100644 ---- a/README.md -+++ b/README.md -@@ -249,6 +249,14 @@ base operators of CRI - | 100 * runp | 27802 | 29197 | 2398 | -91.37% | -91.79% | - | 100 * stopp | 14429 | 11173 | 1170 | -91.89% | -89.53% | - -+## Try to Use iSulad -+ -+If you want to experience iSulad right now, you can try to use it at: -+ -+- https://lab.huaweicloud.com/testdetail_498 -+ -+It is the experiment about iSulad. In this experiment you can install iSulad easily. And then you can pull image, run container, analyse iSulad's performance and compare it with performance of Docker. -+ - ## How to Contribute - - We always welcome new contributors. And we are happy to provide guidance for the new contributors. --- -2.25.1 - diff --git a/0066-CI-add-testcase-for-long-label.patch b/0066-CI-add-testcase-for-long-label.patch deleted file mode 100644 index 16080b5..0000000 --- a/0066-CI-add-testcase-for-long-label.patch +++ /dev/null @@ -1,106 +0,0 @@ -From e13e14225cbdcb504268b740f171b2850b61aa88 Mon Sep 17 00:00:00 2001 -From: Li Feng -Date: Tue, 6 Apr 2021 14:41:17 +0800 -Subject: [PATCH 066/104] CI: add testcase for long label - -Signed-off-by: Li Feng ---- - CI/test_cases/container_cases/annotaion.sh | 86 ++++++++++++++++++++++ - 1 file changed, 86 insertions(+) - create mode 100755 CI/test_cases/container_cases/annotaion.sh - -diff --git a/CI/test_cases/container_cases/annotaion.sh b/CI/test_cases/container_cases/annotaion.sh -new file mode 100755 -index 00000000..b563e390 ---- /dev/null -+++ b/CI/test_cases/container_cases/annotaion.sh -@@ -0,0 +1,86 @@ -+#!/bin/bash -+# -+# attributes: isulad annotation -+# concurrent: YES -+# spend time: 15 -+ -+####################################################################### -+##- @Copyright (C) Huawei Technologies., Ltd. 2020. All rights reserved. -+# - iSulad licensed under the Mulan PSL v2. -+# - You can use this software according to the terms and conditions of the Mulan PSL v2. -+# - You may obtain a copy of Mulan PSL v2 at: -+# - http://license.coscl.org.cn/MulanPSL2 -+# - THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND, EITHER EXPRESS OR -+# - IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT, MERCHANTABILITY OR FIT FOR A PARTICULAR -+# - PURPOSE. -+# - See the Mulan PSL v2 for more details. -+##- @Description:CI -+##- @Author: lifeng -+##- @Create: 2021-04-06 -+####################################################################### -+ -+declare -r curr_path=$(dirname $(readlink -f "$0")) -+source ../helpers.sh -+test="annotation test => test_annotation" -+ -+function test_label() -+{ -+ local ret=0 -+ -+ isula run -tid --name annotation --label "test_long_label=111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111" busybox sh -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to run container for long label" && ((ret++)) -+ -+ isula inspect annotation -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to inspect container for long label" && ((ret++)) -+ -+ isula exec -ti annotation echo 1 -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to exec in container" && ((ret++)) -+ -+ check_valgrind_log -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - stop isulad failed" && ((ret++)) -+ -+ start_isulad_with_valgrind -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - start isulad failed" && ((ret++)) -+ -+ isula rm -f annotation -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to rm -f container" && ((ret++)) -+ -+ return ${ret} -+} -+ -+function test_annotation() -+{ -+ local ret=0 -+ -+ isula run -tid --name annotation --annotation "test_long_label=111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111" busybox sh -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to run container for long label" && ((ret++)) -+ -+ isula inspect annotation -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to inspect container for long label" && ((ret++)) -+ -+ isula exec -ti annotation echo 1 -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to exec in container" && ((ret++)) -+ -+ check_valgrind_log -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - stop isulad failed" && ((ret++)) -+ -+ start_isulad_with_valgrind -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - start isulad failed" && ((ret++)) -+ -+ isula rm -f annotation -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to rm -f container" && ((ret++)) -+ -+ return ${ret} -+} -+ -+declare -i ans=0 -+ -+msg_info "${test} starting..." -+[[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - start isulad failed" && ((ret++)) -+ -+test_label || ((ans++)) -+test_annotation || ((ans++)) -+ -+msg_info "${test} finished with return ${ans}..." -+ -+show_result ${ans} "${curr_path}/${0}" --- -2.25.1 - diff --git a/0067-event-fix-memory-leak-when-pack-annotation-failed.patch b/0067-event-fix-memory-leak-when-pack-annotation-failed.patch deleted file mode 100644 index 6cbc874..0000000 --- a/0067-event-fix-memory-leak-when-pack-annotation-failed.patch +++ /dev/null @@ -1,92 +0,0 @@ -From 1e2ebc309064e88d0d5aac6a91b23ef8cbc0c727 Mon Sep 17 00:00:00 2001 -From: Li Feng -Date: Tue, 6 Apr 2021 15:05:59 +0800 -Subject: [PATCH 067/104] event: fix memory leak when pack annotation failed - -Signed-off-by: Li Feng ---- - .../connect/grpc/grpc_containers_client.cc | 2 +- - src/daemon/modules/events/collector.c | 18 +++--------------- - 2 files changed, 4 insertions(+), 16 deletions(-) - -diff --git a/src/client/connect/grpc/grpc_containers_client.cc b/src/client/connect/grpc/grpc_containers_client.cc -index 6661970b..bb50d811 100644 ---- a/src/client/connect/grpc/grpc_containers_client.cc -+++ b/src/client/connect/grpc/grpc_containers_client.cc -@@ -1810,8 +1810,8 @@ private: - for (const auto &iter : map) { - std::string anno = iter.first + "=" + iter.second; - (void)util_array_append(&event->annotations, anno.c_str()); -- event->annotations_len++; - } -+ event->annotations_len = util_array_len((const char **)event->annotations); - } - - auto events_request_to_grpc(const struct isula_events_request *request, EventsRequest *grequest) -> int -diff --git a/src/daemon/modules/events/collector.c b/src/daemon/modules/events/collector.c -index 3e587aeb..67a823f1 100644 ---- a/src/daemon/modules/events/collector.c -+++ b/src/daemon/modules/events/collector.c -@@ -332,44 +332,36 @@ static int supplement_labels_for_container_msg(const container_t *cont, const st - return 0; - } - --static int supplement_annotations_for_container_msg(const container_t *cont, const struct monitord_msg *msg, -- struct isulad_events_format *format_msg) -+static void supplement_annotations_for_container_msg(const container_t *cont, const struct monitord_msg *msg, -+ struct isulad_events_format *format_msg) - { - if (supplement_pid_for_container_msg(cont, msg, format_msg) != 0) { - ERROR("Failed to supplement pid info"); -- return -1; - } - - if (supplement_exitcode_for_container_msg(cont, msg, format_msg) != 0) { - ERROR("Failed to supplement exitCode info"); -- return -1; - } - - if (supplement_image_for_container_msg(cont, msg, format_msg) != 0) { - ERROR("Failed to supplement image info"); -- return -1; - } - - if (supplement_name_for_container_msg(cont, msg, format_msg) != 0) { - ERROR("Failed to supplement name info"); -- return -1; - } - - if (supplement_labels_for_container_msg(cont, msg, format_msg) != 0) { - ERROR("Failed to supplement label info"); -- return -1; - } - - if (strlen(msg->extra_annations) != 0) { - if (util_array_append(&format_msg->annotations, msg->extra_annations) != 0) { - ERROR("Failed to supplement extra annations info"); -- return -1; - } - } - - format_msg->annotations_len = util_array_len((const char **)format_msg->annotations); -- -- return 0; - } - - static int supplement_msg_for_container(struct monitord_msg *msg, struct isulad_events_format *format_msg) -@@ -395,11 +387,7 @@ static int supplement_msg_for_container(struct monitord_msg *msg, struct isulad_ - goto out; - } - -- if (supplement_annotations_for_container_msg(cont, msg, format_msg) != 0) { -- ERROR("Failed to supplement annotations info"); -- ret = -1; -- goto out; -- } -+ supplement_annotations_for_container_msg(cont, msg, format_msg); - - out: - container_unref(cont); --- -2.25.1 - diff --git a/0068-Readme-add-script-to-install-iSulad-on-Centos7.patch b/0068-Readme-add-script-to-install-iSulad-on-Centos7.patch deleted file mode 100644 index 25b6513..0000000 --- a/0068-Readme-add-script-to-install-iSulad-on-Centos7.patch +++ /dev/null @@ -1,198 +0,0 @@ -From 38b5c74dcce5fc61438ce03252c14c9b5a009d81 Mon Sep 17 00:00:00 2001 -From: Li Feng -Date: Wed, 7 Apr 2021 11:34:21 +0800 -Subject: [PATCH 068/104] Readme: add script to install iSulad on Centos7 - -Signed-off-by: Li Feng ---- - docs/build_guide.md | 9 +- - docs/build_guide_zh.md | 8 +- - docs/install_iSulad_on_Centos_7.sh | 137 +++++++++++++++++++++++++++++ - 3 files changed, 150 insertions(+), 4 deletions(-) - create mode 100644 docs/install_iSulad_on_Centos_7.sh - -diff --git a/docs/build_guide.md b/docs/build_guide.md -index d710cbbb..449767ae 100644 ---- a/docs/build_guide.md -+++ b/docs/build_guide.md -@@ -7,8 +7,13 @@ If you intend to contribute on iSulad. Thanks for your effort. Every contributio - These dependencies are required for build: - - ### install basic dependencies based on Centos distribution --```bash --$ sudo yum --enablerepo='*' install -y automake autoconf libtool cmake make libcap libcap-devel libselinux libselinux-devel libseccomp libseccomp-devel yajl-devel git libcgroup tar python3 python3-pip device-mapper-devel libarchive libarchive-devel libcurl-devel zlib-devel glibc-headers openssl-devel gcc gcc-c++ systemd-devel systemd-libs golang libtar libtar-devel -+ -+We provided a script to auto install iSulad on centos7, you can just execute the script to install iSulad. -+ -+```sh -+$ git clone https://gitee.com/openeuler/iSulad.git -+$ cd iSulad/docs -+$ sudo ./install_iSulad_on_Centos_7.sh - ``` - - ### install basic dependencies based on Ubuntu distribution -diff --git a/docs/build_guide_zh.md b/docs/build_guide_zh.md -index d6621fcf..2cb709e8 100644 ---- a/docs/build_guide_zh.md -+++ b/docs/build_guide_zh.md -@@ -18,8 +18,12 @@ dnf builddep iSulad.spec - - ### Centos的安装命令 - --```bash --$ sudo yum --enablerepo='*' install -y automake autoconf libtool cmake make libcap libcap-devel libselinux libselinux-devel libseccomp libseccomp-devel yajl-devel git libcgroup tar python3 python3-pip device-mapper-devel libarchive libarchive-devel libcurl-devel zlib-devel glibc-headers openssl-devel gcc gcc-c++ systemd-devel systemd-libs libtar libtar-devel -+我们在代码仓中提供了在Centos7上自动化安装的脚本,您只需要执行这个脚本就可以自动编译安装iSulad以及其依赖的组件。 -+ -+```sh -+$ git clone https://gitee.com/openeuler/iSulad.git -+$ cd iSulad/docs -+$ sudo ./install_iSulad_on_Centos_7.sh - ``` - - ### Ubuntu的安装命令 -diff --git a/docs/install_iSulad_on_Centos_7.sh b/docs/install_iSulad_on_Centos_7.sh -new file mode 100644 -index 00000000..48aff5cf ---- /dev/null -+++ b/docs/install_iSulad_on_Centos_7.sh -@@ -0,0 +1,137 @@ -+#!/bin/bash -+ -+ -+set -x -+set -e -+ -+# install neccessary packages -+yum install -y patch automake autoconf libtool cmake make libcap libcap-devel libselinux libselinux-devel libseccomp libseccomp-devel yajl-devel git libcgroup tar python3 python3-pip device-mapper-devel libcurl-devel zlib-devel glibc-headers openssl-devel gcc gcc-c++ systemd-devel systemd-libs golang libtar libtar-devel -+ -+# export LDFLAGS -+export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH -+export LD_LIBRARY_PATH=/usr/local/lib:/usr/lib:$LD_LIBRARY_PATH -+ echo "/usr/local/lib" >> /etc/ld.so.conf -+ -+BUILD_DIR=/tmp/build_isulad -+ -+rm -rf $BUILD_DIR -+mkdir -p $BUILD_DIR -+ -+# build libarchive -+cd $BUILD_DIR -+git clone https://gitee.com/src-openeuler/libarchive.git -+cd libarchive -+git checkout -b openEuler-20.03-LTS-tag openEuler-20.03-LTS-tag -+tar -zxvf libarchive-3.4.1.tar.gz -+cd libarchive-3.4.1 -+patch -p1 -F1 -s < ../libarchive-uninitialized-value.patch -+cd build -+cmake -DCMAKE_USE_SYSTEM_LIBRARIES=ON ../ -+make -j $(nproc) -+make install -+ldconfig -+ -+# build protobuf -+cd $BUILD_DIR -+git clone https://gitee.com/src-openeuler/protobuf.git -+cd protobuf -+git checkout openEuler-20.03-LTS-tag -+tar -xzvf protobuf-all-3.9.0.tar.gz -+cd protobuf-3.9.0 -+./autogen.sh -+./configure -+make -j $(nproc) -+make install -+ldconfig -+ -+# build c-ares -+cd $BUILD_DIR -+git clone https://gitee.com/src-openeuler/c-ares.git -+cd c-ares -+git checkout openEuler-20.03-LTS-tag -+tar -xzvf c-ares-1.15.0.tar.gz -+cd c-ares-1.15.0 -+autoreconf -if -+./configure --enable-shared --disable-dependency-tracking -+make -j $(nproc) -+make install -+ldconfig -+ -+# build grpc -+cd $BUILD_DIR -+git clone https://gitee.com/src-openeuler/grpc.git -+cd grpc -+git checkout openEuler-20.03-LTS-tag -+tar -xzvf grpc-1.22.0.tar.gz -+cd grpc-1.22.0 -+make -j $(nproc) -+make install -+ldconfig -+ -+# build http_parser -+cd $BUILD_DIR -+git clone https://gitee.com/src-openeuler/http-parser.git -+cd http-parser -+git checkout openEuler-20.03-LTS-tag -+tar -xzvf http-parser-2.9.2.tar.gz -+cd http-parser-2.9.2 -+make -j CFLAGS="-Wno-error" -+make CFLAGS="-Wno-error" install -+ldconfig -+ -+# build libwebsockets -+cd $BUILD_DIR -+git clone https://gitee.com/src-openeuler/libwebsockets.git -+cd libwebsockets -+git checkout openEuler-20.03-LTS-tag -+tar -xzvf libwebsockets-2.4.2.tar.gz -+cd libwebsockets-2.4.2 -+patch -p1 -F1 -s < ../libwebsockets-fix-coredump.patch -+mkdir build -+cd build -+cmake -DLWS_WITH_SSL=0 -DLWS_MAX_SMP=32 -DCMAKE_BUILD_TYPE=Debug ../ -+make -j $(nproc) -+make install -+ldconfig -+ -+# build lxc -+cd $BUILD_DIR -+git clone https://gitee.com/src-openeuler/lxc.git -+cd lxc -+tar -zxf lxc-4.0.3.tar.gz -+./apply-patches -+cd lxc-4.0.3 -+./autogen.sh -+./configure -+make -j -+make install -+ -+# build lcr -+cd $BUILD_DIR -+git clone https://gitee.com/openeuler/lcr.git -+cd lcr -+mkdir build -+cd build -+cmake .. -+make -j -+make install -+ -+# build and install clibcni -+cd $BUILD_DIR -+git clone https://gitee.com/openeuler/clibcni.git -+cd clibcni -+mkdir build -+cd build -+cmake .. -+make -j -+make install -+ -+# build and install iSulad -+cd $BUILD_DIR -+git clone https://gitee.com/openeuler/iSulad.git -+cd iSulad -+mkdir build -+cd build -+cmake .. -+make -+make install --- -2.25.1 - diff --git a/0069-cri-fix-residual-IO-copy-thread-in-CRI-exec-operatio.patch b/0069-cri-fix-residual-IO-copy-thread-in-CRI-exec-operatio.patch deleted file mode 100644 index d3c02b5..0000000 --- a/0069-cri-fix-residual-IO-copy-thread-in-CRI-exec-operatio.patch +++ /dev/null @@ -1,1061 +0,0 @@ -From e10bcde6bc507767fc0770c0a1606b6f96494d6b Mon Sep 17 00:00:00 2001 -From: wujing -Date: Sat, 27 Mar 2021 18:38:08 +0800 -Subject: [PATCH 069/104] cri: fix residual IO copy thread in CRI exec - operation - -Signed-off-by: wujing ---- - .../cri/websocket/service/attach_serve.cc | 20 +- - .../cri/websocket/service/attach_serve.h | 2 +- - .../entry/cri/websocket/service/exec_serve.cc | 24 +- - .../entry/cri/websocket/service/exec_serve.h | 2 +- - .../service/route_callback_register.h | 24 +- - .../entry/cri/websocket/service/ws_server.cc | 259 +++++++++--------- - .../entry/cri/websocket/service/ws_server.h | 53 +++- - src/daemon/modules/service/io_handler.c | 53 ++-- - src/utils/console/console.c | 38 ++- - src/utils/console/console.h | 5 +- - 10 files changed, 284 insertions(+), 196 deletions(-) - -diff --git a/src/daemon/entry/cri/websocket/service/attach_serve.cc b/src/daemon/entry/cri/websocket/service/attach_serve.cc -index 01c6b9cf..ec2edc8b 100644 ---- a/src/daemon/entry/cri/websocket/service/attach_serve.cc -+++ b/src/daemon/entry/cri/websocket/service/attach_serve.cc -@@ -16,30 +16,44 @@ - #include "attach_serve.h" - #include "utils.h" - --int AttachServe::Execute(struct lws *wsi, const std::string &token, int read_pipe_fd) -+int AttachServe::Execute(lwsContext lws_ctx, const std::string &token, int read_pipe_fd) - { -+ prctl(PR_SET_NAME, "AttachServe"); -+ - service_executor_t *cb = get_service_executor(); - if (cb == nullptr || cb->container.attach == nullptr) { -+ sem_post(lws_ctx.sync_close_sem); - return -1; - } - - container_attach_request *container_req = nullptr; - if (GetContainerRequest(token, &container_req) != 0) { - ERROR("Failed to get contaner request"); -+ sem_post(lws_ctx.sync_close_sem); -+ return -1; -+ } -+ -+ // attach operation is non-blocking and cannot pass a local variable in -+ // free memory when close websocket session in closeWsConnect -+ lwsContext *lws_context = new (std::nothrow)lwsContext(lws_ctx); -+ if (lws_context == nullptr) { -+ ERROR("Out of memory"); -+ sem_post(lws_ctx.sync_close_sem); - return -1; - } - - struct io_write_wrapper stringWriter = { 0 }; -- stringWriter.context = (void *)wsi; -+ stringWriter.context = (void *)(lws_context); - stringWriter.write_func = WsWriteStdoutToClient; - stringWriter.close_func = closeWsConnect; - container_req->attach_stderr = false; - - container_attach_response *container_res = nullptr; - int ret = cb->container.attach(container_req, &container_res, container_req->attach_stdin ? read_pipe_fd : -1, -- &stringWriter, nullptr); -+ container_req->attach_stdout ? &stringWriter : nullptr, nullptr); - if (ret != 0) { - ERROR("Failed to attach container: %s", container_req->container_id); -+ sem_post(lws_ctx.sync_close_sem); - } - - free_container_attach_request(container_req); -diff --git a/src/daemon/entry/cri/websocket/service/attach_serve.h b/src/daemon/entry/cri/websocket/service/attach_serve.h -index 00e2b34e..0d29f35b 100644 ---- a/src/daemon/entry/cri/websocket/service/attach_serve.h -+++ b/src/daemon/entry/cri/websocket/service/attach_serve.h -@@ -33,7 +33,7 @@ public: - AttachServe(const AttachServe &) = delete; - AttachServe &operator=(const AttachServe &) = delete; - virtual ~AttachServe() = default; -- int Execute(struct lws *wsi, const std::string &token, int read_pipe_fd) override; -+ int Execute(lwsContext lws_ctx, const std::string &token, int read_pipe_fd) override; - private: - int RequestFromCri(const runtime::v1alpha2::AttachRequest &grequest, - container_attach_request **request); -diff --git a/src/daemon/entry/cri/websocket/service/exec_serve.cc b/src/daemon/entry/cri/websocket/service/exec_serve.cc -index 855d28b8..96675734 100644 ---- a/src/daemon/entry/cri/websocket/service/exec_serve.cc -+++ b/src/daemon/entry/cri/websocket/service/exec_serve.cc -@@ -17,25 +17,37 @@ - #include "io_wrapper.h" - #include "utils.h" - --int ExecServe::Execute(struct lws *wsi, const std::string &token, int read_pipe_fd) -+int ExecServe::Execute(lwsContext lws_ctx, const std::string &token, int read_pipe_fd) - { - service_executor_t *cb = get_service_executor(); - if (cb == nullptr || cb->container.exec == nullptr) { -+ sem_post(lws_ctx.sync_close_sem); - return -1; - } - - container_exec_request *container_req = nullptr; - if (GetContainerRequest(token, &container_req) != 0) { - ERROR("Failed to get contaner request"); -+ sem_post(lws_ctx.sync_close_sem); -+ return -1; -+ } -+ -+ lwsContext *lws_context = new (std::nothrow)lwsContext(lws_ctx); -+ if (lws_context == nullptr) { -+ ERROR("Out of memory"); -+ sem_post(lws_ctx.sync_close_sem); - return -1; - } - - struct io_write_wrapper StdoutstringWriter = { 0 }; -- StdoutstringWriter.context = (void *)wsi; -+ StdoutstringWriter.context = (void *)lws_context; - StdoutstringWriter.write_func = WsWriteStdoutToClient; -+ // the close function of StderrstringWriter is preferred unless StderrstringWriter is nullptr -+ StdoutstringWriter.close_func = container_req->attach_stderr ? nullptr : closeWsStream; - struct io_write_wrapper StderrstringWriter = { 0 }; -- StderrstringWriter.context = (void *)wsi; -+ StderrstringWriter.context = (void *)lws_context; - StderrstringWriter.write_func = WsWriteStderrToClient; -+ StderrstringWriter.close_func = container_req->attach_stderr ? closeWsStream : nullptr; - - container_exec_response *container_res = nullptr; - int ret = cb->container.exec(container_req, &container_res, container_req->attach_stdin ? read_pipe_fd : -1, -@@ -48,17 +60,17 @@ int ExecServe::Execute(struct lws *wsi, const std::string &token, int read_pipe_ - } else { - message = "Failed to call exec container callback. "; - } -- WsWriteStdoutToClient(wsi, message.c_str(), message.length()); -+ WsWriteStdoutToClient(lws_context, message.c_str(), message.length()); - } - if (container_res != nullptr && container_res->exit_code != 0) { - std::string exit_info = "Exit code :" + std::to_string((int)container_res->exit_code) + "\n"; -- WsWriteStdoutToClient(wsi, exit_info.c_str(), exit_info.length()); -+ WsWriteStdoutToClient(lws_context, exit_info.c_str(), exit_info.length()); - } - - free_container_exec_request(container_req); - free_container_exec_response(container_res); - -- (void)closeWsConnect((void*)wsi, nullptr); -+ closeWsConnect((void*)lws_context, nullptr); - - return ret; - } -diff --git a/src/daemon/entry/cri/websocket/service/exec_serve.h b/src/daemon/entry/cri/websocket/service/exec_serve.h -index b29c3e1e..093f076a 100644 ---- a/src/daemon/entry/cri/websocket/service/exec_serve.h -+++ b/src/daemon/entry/cri/websocket/service/exec_serve.h -@@ -37,7 +37,7 @@ public: - ExecServe(const ExecServe &) = delete; - ExecServe &operator=(const ExecServe &) = delete; - virtual ~ExecServe() = default; -- int Execute(struct lws *wsi, const std::string &token, int read_pipe_fd) override; -+ int Execute(lwsContext lws_ctx, const std::string &token, int read_pipe_fd) override; - - private: - int RequestFromCri(const runtime::v1alpha2::ExecRequest &grequest, container_exec_request **request); -diff --git a/src/daemon/entry/cri/websocket/service/route_callback_register.h b/src/daemon/entry/cri/websocket/service/route_callback_register.h -index 5d021d17..9c6bdd64 100644 ---- a/src/daemon/entry/cri/websocket/service/route_callback_register.h -+++ b/src/daemon/entry/cri/websocket/service/route_callback_register.h -@@ -21,14 +21,21 @@ - #include - #include - #include -+#include - #include "isula_libutils/log.h" -+ -+struct lwsContext { -+ int fd; -+ sem_t *sync_close_sem; -+}; -+ - class StreamingServeInterface { - public: - StreamingServeInterface() = default; - StreamingServeInterface(const StreamingServeInterface &) = delete; - StreamingServeInterface &operator=(const StreamingServeInterface &) = delete; - virtual ~StreamingServeInterface() = default; -- virtual int Execute(struct lws *wsi, const std::string &token, int read_pipe_fd) = 0; -+ virtual int Execute(lwsContext lws_ctx, const std::string &token, int read_pipe_fd) = 0; - }; - - class RouteCallbackRegister { -@@ -42,15 +49,14 @@ public: - return static_cast(m_registeredcallbacks.count(method)); - } - -- int HandleCallback(struct lws *wsi, const std::string &method, -- const std::string &token, -- int read_pipe_fd) -+ int HandleCallback(lwsContext lws_ctx, const std::string &method, -+ const std::string &token, int read_pipe_fd) - { - auto it = m_registeredcallbacks.find(method); - if (it != m_registeredcallbacks.end()) { - std::shared_ptr callback = it->second; - if (callback) { -- return callback->Execute(wsi, token, read_pipe_fd); -+ return callback->Execute(lws_ctx, token, read_pipe_fd); - } - } - ERROR("invalid method!"); -@@ -69,21 +75,21 @@ private: - - class StreamTask { - public: -- StreamTask(RouteCallbackRegister *invoker, struct lws *wsi, -+ StreamTask(RouteCallbackRegister *invoker, lwsContext lws_ctx, - const std::string &method, - const std::string &token, int read_pipe_fd) -- : m_invoker(invoker), m_wsi(wsi), m_method(method), m_token(token), -+ : m_invoker(invoker), m_lws_ctx(lws_ctx), m_method(method), m_token(token), - m_read_pipe_fd(read_pipe_fd) {} - StreamTask(const StreamTask &) = delete; - StreamTask &operator=(const StreamTask &) = delete; - virtual ~StreamTask() = default; - int Run() - { -- return m_invoker->HandleCallback(m_wsi, m_method, m_token, m_read_pipe_fd); -+ return m_invoker->HandleCallback(m_lws_ctx, m_method, m_token, m_read_pipe_fd); - } - private: - RouteCallbackRegister *m_invoker{ nullptr }; -- struct lws *m_wsi; -+ lwsContext m_lws_ctx; - std::string m_method; - std::string m_token; - int m_read_pipe_fd; -diff --git a/src/daemon/entry/cri/websocket/service/ws_server.cc b/src/daemon/entry/cri/websocket/service/ws_server.cc -index 795d2c1e..4993e1e8 100644 ---- a/src/daemon/entry/cri/websocket/service/ws_server.cc -+++ b/src/daemon/entry/cri/websocket/service/ws_server.cc -@@ -30,7 +30,6 @@ struct lws_context *WebsocketServer::m_context = nullptr; - std::atomic WebsocketServer::m_instance; - RWMutex WebsocketServer::m_mutex; - std::unordered_map WebsocketServer::m_wsis; --std::unordered_set WebsocketServer::m_activeSession; - - WebsocketServer *WebsocketServer::GetInstance() noexcept - { -@@ -159,12 +158,10 @@ void WebsocketServer::CloseAllWsSession() - { - WriteGuard lock(m_mutex); - for (auto it = m_wsis.begin(); it != m_wsis.end(); ++it) { -- free(it->second.buf); -+ it->second.EraseAllMessage(); - close(it->second.pipes.at(0)); - close(it->second.pipes.at(1)); -- it->second.sended = true; - delete it->second.buf_mutex; -- delete it->second.sended_mutex; - } - m_wsis.clear(); - } -@@ -173,59 +170,54 @@ void WebsocketServer::CloseWsSession(int socketID) - { - auto it = m_wsis.find(socketID); - if (it != m_wsis.end()) { -- free(it->second.buf); -+ it->second.EraseAllMessage(); -+ // close the pipe write endpoint first, make sure io copy thread exit, -+ // otherwise epoll will trigger EOF -+ if (it->second.pipes.at(1) >= 0) { -+ close(it->second.pipes.at(1)); -+ it->second.pipes.at(1) = -1; -+ } -+ (void)sem_wait(it->second.sync_close_sem); -+ (void)sem_destroy(it->second.sync_close_sem); - close(it->second.pipes.at(0)); -- close(it->second.pipes.at(1)); -- it->second.sended = true; - delete it->second.buf_mutex; -- delete it->second.sended_mutex; - m_wsis.erase(it); - } - } - --void WebsocketServer::RecordSession(struct lws *wsi) --{ -- m_activeSession.insert(wsi); --} -- --void WebsocketServer::RemoveSession(struct lws *wsi) --{ -- m_activeSession.erase(wsi); --} -- --bool WebsocketServer::IsValidSession(struct lws *wsi) --{ -- return m_activeSession.count(wsi) != 0; --} -- --int WebsocketServer::DumpHandshakeInfo(struct lws *wsi) noexcept -+int WebsocketServer::GenerateSessionData(session_data &session) noexcept - { - int read_pipe_fd[PIPE_FD_NUM]; - if (InitRWPipe(read_pipe_fd) < 0) { - ERROR("failed to init read/write pipe!"); -+ return -1; - } - -- session_data session; -- session.pipes = std::array { read_pipe_fd[0], read_pipe_fd[1] }; -+ std::mutex *buf_mutex = new std::mutex; -+ sem_t *sync_close_sem = new sem_t; - -- int socketID = lws_get_socket_fd(wsi); -- m_wsis.insert(std::make_pair(socketID, std::move(session))); -- m_wsis[socketID].buf = (unsigned char *)util_common_calloc_s(LWS_PRE + MAX_MSG_BUFFER_SIZE + 1); -- if (m_wsis[socketID].buf == nullptr) { -- ERROR("Out of memory"); -+ if (sem_init(sync_close_sem, 0, 0) != 0) { -+ ERROR("Semaphore initialization failed"); -+ close(read_pipe_fd[1]); -+ close(read_pipe_fd[0]); -+ delete buf_mutex; -+ delete sync_close_sem; - return -1; - } -- m_wsis[socketID].buf_mutex = new std::mutex; -- m_wsis[socketID].sended_mutex = new std::mutex; -- m_wsis[socketID].SetProcessingStatus(false); - -- int len; -- char buf[MAX_BUF_LEN] { 0 }; -+ session.pipes = std::array { read_pipe_fd[0], read_pipe_fd[1] }; -+ session.buf_mutex = buf_mutex; -+ session.sync_close_sem = sync_close_sem; - -+ return 0; -+} -+ -+int WebsocketServer::RegisterStreamTask(struct lws *wsi) noexcept -+{ -+ char buf[MAX_BUF_LEN] { 0 }; - lws_hdr_copy(wsi, buf, sizeof(buf), WSI_TOKEN_GET_URI); - if (strlen(buf) == 0) { - ERROR("invalid url"); -- CloseWsSession(socketID); - return -1; - } - -@@ -237,60 +229,68 @@ int WebsocketServer::DumpHandshakeInfo(struct lws *wsi) noexcept - !m_handler.IsValidMethod(vec.at(1)) || - !cache->IsValidToken(vec.at(2))) { - ERROR("invalid url(%s): incorrect format!", buf); -- CloseWsSession(socketID); - return -1; - } - -+ session_data session; -+ if (GenerateSessionData(session) != 0) { -+ ERROR("failed to fill generate session data"); -+ return -1; -+ } -+ -+ int socketID = lws_get_socket_fd(wsi); -+ m_wsis.insert(std::make_pair(socketID, std::move(session))); -+ -+ lwsContext lwsCtx = { -+ .fd = socketID, -+ .sync_close_sem = m_wsis[socketID].sync_close_sem, -+ }; - std::thread streamTh([ = ]() { -- StreamTask(&m_handler, wsi, vec.at(1), vec.at(2), m_wsis[socketID].pipes.at(0)).Run(); -+ StreamTask(&m_handler, lwsCtx, vec.at(1), vec.at(2), m_wsis[socketID].pipes.at(0)).Run(); - }); - streamTh.detach(); -- RecordSession(wsi); -+ -+ return 0; -+} -+ -+void WebsocketServer::DumpHandshakeInfo(struct lws *wsi) noexcept -+{ - int n = 0; - const unsigned char *c = nullptr; -+ char buf[MAX_BUF_LEN] { 0 }; -+ - do { - c = lws_token_to_string((lws_token_indexes)n); - if (c == nullptr) { - n++; - continue; - } -- len = lws_hdr_total_length(wsi, (lws_token_indexes)n); -+ int len = lws_hdr_total_length(wsi, (lws_token_indexes)n); - if (len == 0 || (static_cast(len) > sizeof(buf) - 1)) { - n++; - continue; - } -+ - lws_hdr_copy(wsi, buf, sizeof(buf), (lws_token_indexes)n); - buf[sizeof(buf) - 1] = '\0'; - DEBUG(" %s = %s", (char *)c, buf); - n++; - } while (c != nullptr); -- -- return 0; - } - --int WebsocketServer::Wswrite(struct lws *wsi, void *in, size_t len) -+int WebsocketServer::Wswrite(struct lws *wsi, const unsigned char *message) - { - auto it = m_wsis.find(lws_get_socket_fd(wsi)); - if (it != m_wsis.end()) { -- if (it->second.close) { -- DEBUG("websocket session disconnected"); -- return -1; -- } -- it->second.buf_mutex->lock(); -- auto &buf = it->second.buf; -- if (strlen((const char *)(&buf[LWS_PRE + 1])) == 0) { -- it->second.buf_mutex->unlock(); -+ if (strlen((const char *)(&message[LWS_PRE + 1])) == 0) { - return 0; - } -- int n = lws_write(wsi, (unsigned char *)(&buf[LWS_PRE]), -- strlen((const char *)(&buf[LWS_PRE + 1])) + 1, LWS_WRITE_TEXT); -+ int n = lws_write(wsi, (unsigned char *)(&message[LWS_PRE]), -+ strlen((const char *)(&message[LWS_PRE + 1])) + 1, LWS_WRITE_TEXT); - if (n < 0) { -- it->second.buf_mutex->unlock(); - ERROR("ERROR %d writing to socket, hanging up", n); - return -1; - } -- (void)memset(buf, 0, LWS_PRE + MAX_MSG_BUFFER_SIZE + 1); -- it->second.buf_mutex->unlock(); - } - - return 0; -@@ -314,16 +314,6 @@ void WebsocketServer::Receive(int socketID, void *in, size_t len) - } - } - --void WebsocketServer::SetLwsSendedFlag(int socketID, bool sended) --{ -- if (m_wsis.count(socketID) == 0) { -- return; -- } -- m_wsis[socketID].sended_mutex->lock(); -- m_wsis[socketID].sended = sended; -- m_wsis[socketID].sended_mutex->unlock(); --} -- - int WebsocketServer::Callback(struct lws *wsi, enum lws_callback_reasons reason, - void *user, void *in, size_t len) - { -@@ -334,10 +324,13 @@ int WebsocketServer::Callback(struct lws *wsi, enum lws_callback_reasons reason, - return -1; - case LWS_CALLBACK_FILTER_PROTOCOL_CONNECTION: { - WriteGuard lock(m_mutex); -- if (WebsocketServer::GetInstance()->DumpHandshakeInfo(wsi)) { -+ WebsocketServer::GetInstance()->DumpHandshakeInfo(wsi); -+ if (WebsocketServer::GetInstance()->RegisterStreamTask(wsi) != 0) { - // return non-zero here and kill the connection - return -1; - } -+ // Trigger polling in LWS_CALLBACK_SERVER_WRITEABLE -+ lws_callback_on_writable(wsi); - } - break; - case LWS_CALLBACK_ESTABLISHED: { -@@ -347,13 +340,32 @@ int WebsocketServer::Callback(struct lws *wsi, enum lws_callback_reasons reason, - case LWS_CALLBACK_SERVER_WRITEABLE: { - ReadGuard lock(m_mutex); - int socketID = lws_get_socket_fd(wsi); -- if (WebsocketServer::GetInstance()->Wswrite(wsi, in, len)) { -- WebsocketServer::GetInstance()->SetLwsSendedFlag(socketID, true); -+ auto it = m_wsis.find(socketID); -+ if (it == m_wsis.end()) { -+ DEBUG("invalid session!"); - // return nonzero from the user callback to close the connection - // and callback with the reason of LWS_CALLBACK_CLOSED - return -1; - } -- WebsocketServer::GetInstance()->SetLwsSendedFlag(socketID, true); -+ -+ while (!it->second.buffer.empty()) { -+ unsigned char *message = it->second.FrontMessage(); -+ // send success! free it and erase for list -+ if (WebsocketServer::GetInstance()->Wswrite(wsi, (const unsigned char *)message) == 0) { -+ free(message); -+ it->second.PopMessage(); -+ } else { -+ // Another case ret > 0, send fail! keep message and send it again! -+ // Or maybe the client was shut down abnormally -+ break; -+ } -+ } -+ -+ if (it->second.close) { -+ DEBUG("websocket session disconnected"); -+ return -1; -+ } -+ lws_callback_on_writable(wsi); - } - break; - case LWS_CALLBACK_RECEIVE: { -@@ -364,8 +376,8 @@ int WebsocketServer::Callback(struct lws *wsi, enum lws_callback_reasons reason, - case LWS_CALLBACK_CLOSED: { - WriteGuard lock(m_mutex); - DEBUG("connection has been closed"); -- WebsocketServer::GetInstance()->RemoveSession(wsi); -- WebsocketServer::GetInstance()->CloseWsSession(lws_get_socket_fd(wsi)); -+ int socketID = lws_get_socket_fd(wsi); -+ WebsocketServer::GetInstance()->CloseWsSession(socketID); - } - break; - default: -@@ -377,6 +389,9 @@ int WebsocketServer::Callback(struct lws *wsi, enum lws_callback_reasons reason, - void WebsocketServer::ServiceWorkThread(int threadid) - { - int n = 0; -+ -+ prctl(PR_SET_NAME, "WebsocketServer"); -+ - while (n >= 0 && !m_force_exit) { - n = lws_service(m_context, 0); - } -@@ -410,73 +425,37 @@ void WebsocketServer::Wait() - } - - namespace { --auto PrepareWsiSession(int socketID) -> session_data * --{ -- WebsocketServer *server = WebsocketServer::GetInstance(); -- server->ReadLockAllWsSession(); - -- auto itor = server->GetWsisData().find(socketID); -- if (itor == server->GetWsisData().end()) { -- ERROR("invalid session!"); -- server->UnlockAllWsSession(); -- return nullptr; -- } -- server->SetLwsSendedFlag(socketID, false); -- server->UnlockAllWsSession(); -- -- return &itor->second; --} -- --void DoWriteToClient(struct lws *wsi, session_data *session, -+void DoWriteToClient(int fd, session_data *session, - const void *data, size_t len, WebsocketChannel channel) - { -- session->buf_mutex->lock(); -+ unsigned char *buf = (unsigned char *)util_common_calloc_s(LWS_PRE + MAX_MSG_BUFFER_SIZE + 1); -+ if (buf == nullptr) { -+ ERROR("Out of memory"); -+ return; -+ } - // Determine if it is standard output channel or error channel -- (void)memset(session->buf, 0, LWS_PRE + MAX_MSG_BUFFER_SIZE + 1); -- session->buf[LWS_PRE] = channel; -- -- (void)memcpy(&session->buf[LWS_PRE + 1], (void *)data, len); -+ buf[LWS_PRE] = channel; - -- lws_callback_on_writable(wsi); -+ (void)memcpy(&buf[LWS_PRE + 1], (void *)data, len); - -- session->buf_mutex->unlock(); --} -- --void EnsureWrited(struct lws *wsi, session_data *session) --{ -- const int RETRIES = 10; -- const int CHECK_PERIOD_SECOND = 1; -- const int TRIGGER_PERIOD_MS = 1; -- auto start = std::chrono::system_clock::now(); -- int count = 0; -- -- while (!session->sended && count < RETRIES) { -- auto end = std::chrono::system_clock::now(); -- auto duration = std::chrono::duration_cast(end - start); -- double spend_time = static_cast(duration.count()) * std::chrono::microseconds::period::num / -- std::chrono::microseconds::period::den; -- if (spend_time > CHECK_PERIOD_SECOND) { -- lws_callback_on_writable(wsi); -- std::this_thread::sleep_for(std::chrono::milliseconds(TRIGGER_PERIOD_MS)); -- start = std::chrono::system_clock::now(); -- count++; -- } -- std::this_thread::sleep_for(std::chrono::milliseconds(TRIGGER_PERIOD_MS)); -- } -+ // push back to message list -+ session->PushMessage(buf); - } - - ssize_t WsWriteToClient(void *context, const void *data, size_t len, WebsocketChannel channel) - { -- struct lws *wsi = static_cast(context); -+ auto *lwsCtx = static_cast(context); -+ int fd = lwsCtx->fd; - -- session_data *session = PrepareWsiSession(lws_get_socket_fd(wsi)); -- if (session == nullptr) { -+ WebsocketServer *server = WebsocketServer::GetInstance(); -+ auto itor = server->GetWsisData().find(fd); -+ if (itor == server->GetWsisData().end()) { -+ ERROR("invalid session!"); - return 0; - } - -- DoWriteToClient(wsi, session, data, len, channel); -- -- EnsureWrited(wsi, session); -+ DoWriteToClient(fd, &itor->second, data, len, channel); - - return static_cast(len); - } -@@ -495,23 +474,37 @@ ssize_t WsWriteStderrToClient(void *context, const void *data, size_t len) - int closeWsConnect(void *context, char **err) - { - (void)err; -- struct lws *wsi = static_cast(context); -+ auto *lwsCtx = static_cast(context); -+ -+ if (lwsCtx->sync_close_sem != nullptr) { -+ (void)sem_post(lwsCtx->sync_close_sem); -+ } - - WebsocketServer *server = WebsocketServer::GetInstance(); - server->ReadLockAllWsSession(); -- auto it = server->GetWsisData().find(lws_get_socket_fd(wsi)); -+ auto it = server->GetWsisData().find(lwsCtx->fd); - if (it == server->GetWsisData().end()) { - server->UnlockAllWsSession(); - ERROR("websocket session not exist"); -+ delete lwsCtx; - return -1; - } -- -+ // will close websocket session on LWS_CALLBACK_SERVER_WRITEABLE polling - it->second.close = true; -- // close websocket session -- if (server->IsValidSession(wsi)) { -- lws_callback_on_writable(wsi); -- } - server->UnlockAllWsSession(); - -+ delete lwsCtx; - return 0; - } -+ -+int closeWsStream(void *context, char **err) -+{ -+ (void)err; -+ auto *lwsCtx = static_cast(context); -+ -+ if (lwsCtx->sync_close_sem != nullptr) { -+ (void)sem_post(lwsCtx->sync_close_sem); -+ } -+ -+ return 0; -+} -\ No newline at end of file -diff --git a/src/daemon/entry/cri/websocket/service/ws_server.h b/src/daemon/entry/cri/websocket/service/ws_server.h -index cb431f7f..ebba3305 100644 ---- a/src/daemon/entry/cri/websocket/service/ws_server.h -+++ b/src/daemon/entry/cri/websocket/service/ws_server.h -@@ -22,6 +22,7 @@ - #include - #include - #include -+#include - #include - #include - #include "route_callback_register.h" -@@ -47,20 +48,45 @@ enum WebsocketChannel { - - struct session_data { - std::array pipes; -- unsigned char *buf; -- volatile bool sended { false }; - volatile bool close { false }; -- volatile bool in_processing { false }; - std::mutex *buf_mutex; -- std::mutex *sended_mutex; -+ sem_t *sync_close_sem; -+ std::list buffer; - -- void SetProcessingStatus(bool status) -+ unsigned char *FrontMessage() - { -- in_processing = status; -+ unsigned char *message = nullptr; -+ -+ buf_mutex->lock(); -+ message = buffer.front(); -+ buf_mutex->unlock(); -+ -+ return message; -+ } -+ -+ void PopMessage() -+ { -+ buf_mutex->lock(); -+ buffer.pop_front(); -+ buf_mutex->unlock(); - } -- bool GetProcessingStatus() const -+ -+ void PushMessage(unsigned char *message) -+ { -+ buf_mutex->lock(); -+ buffer.push_back(message); -+ buf_mutex->unlock(); -+ } -+ -+ void EraseAllMessage() - { -- return in_processing; -+ buf_mutex->lock(); -+ for (auto iter = buffer.begin(); iter != buffer.end();) { -+ free(*iter); -+ *iter = NULL; -+ iter = buffer.erase(iter); -+ } -+ buf_mutex->unlock(); - } - }; - -@@ -77,7 +103,6 @@ public: - void SetLwsSendedFlag(int socketID, bool sended); - void ReadLockAllWsSession(); - void UnlockAllWsSession(); -- bool IsValidSession(struct lws *wsi); - - private: - WebsocketServer(); -@@ -89,15 +114,15 @@ private: - static void EmitLog(int level, const char *line); - int CreateContext(); - inline void Receive(int socketID, void *in, size_t len); -- int Wswrite(struct lws *wsi, void *in, size_t len); -- inline int DumpHandshakeInfo(struct lws *wsi) noexcept; -+ int Wswrite(struct lws *wsi, const unsigned char *message); -+ inline void DumpHandshakeInfo(struct lws *wsi) noexcept; -+ int RegisterStreamTask(struct lws *wsi) noexcept; -+ int GenerateSessionData(session_data &session) noexcept; - static int Callback(struct lws *wsi, enum lws_callback_reasons reason, - void *user, void *in, size_t len); - void ServiceWorkThread(int threadid); - void CloseWsSession(int socketID); - void CloseAllWsSession(); -- void RecordSession(struct lws *wsi); -- void RemoveSession(struct lws *wsi); - - private: - static RWMutex m_mutex; -@@ -110,7 +135,6 @@ private: - }; - RouteCallbackRegister m_handler; - static std::unordered_map m_wsis; -- static std::unordered_set m_activeSession; - url::URLDatum m_url; - int m_listenPort; - }; -@@ -118,6 +142,7 @@ private: - ssize_t WsWriteStdoutToClient(void *context, const void *data, size_t len); - ssize_t WsWriteStderrToClient(void *context, const void *data, size_t len); - int closeWsConnect(void *context, char **err); -+int closeWsStream(void *context, char **err); - - #endif // DAEMON_ENTRY_CRI_WEBSOCKET_SERVICE_WS_SERVER_H - -diff --git a/src/daemon/modules/service/io_handler.c b/src/daemon/modules/service/io_handler.c -index 75a36483..d57894f2 100644 ---- a/src/daemon/modules/service/io_handler.c -+++ b/src/daemon/modules/service/io_handler.c -@@ -183,6 +183,7 @@ struct io_copy_arg { - io_type dsttype; - void *dst; - int dstfifoflag; -+ transfer_channel_type channel; - }; - - struct io_copy_thread_arg { -@@ -194,7 +195,7 @@ struct io_copy_thread_arg { - }; - - static void io_copy_thread_cleanup(struct io_write_wrapper *writers, struct io_copy_thread_arg *thread_arg, int *infds, -- int *outfds, int *srcfds, size_t len) -+ int *outfds, int *srcfds, transfer_channel_type *channels, size_t len) - { - size_t i = 0; - for (i = 0; i < len; i++) { -@@ -214,9 +215,11 @@ static void io_copy_thread_cleanup(struct io_write_wrapper *writers, struct io_c - free(infds); - free(outfds); - free(writers); -+ free(channels); - } - --static int io_copy_init_fds(size_t len, int **infds, int **outfds, int **srcfds, struct io_write_wrapper **writers) -+static int io_copy_init_fds(size_t len, int **infds, int **outfds, int **srcfds, -+ struct io_write_wrapper **writers, transfer_channel_type **channels) - { - size_t i; - -@@ -252,9 +255,19 @@ static int io_copy_init_fds(size_t len, int **infds, int **outfds, int **srcfds, - ERROR("Out of memory"); - return -1; - } -+ -+ *channels = util_common_calloc_s(sizeof(transfer_channel_type) * len); -+ if (*channels == NULL) { -+ ERROR("Out of memory"); -+ return -1; -+ } -+ -+ for (i = 0; i < len; i++) { -+ (*channels)[i] = MAX_CHANNEL; -+ } - return 0; --} - -+} - typedef int (*src_io_type_handle)(int index, struct io_copy_arg *copy_arg, int *infds, int *srcfds); - - struct src_io_copy_handler { -@@ -292,7 +305,8 @@ static int handle_src_io_max(int index, struct io_copy_arg *copy_arg, int *infds - return -1; - } - --static int io_copy_make_srcfds(size_t len, struct io_copy_arg *copy_arg, int *infds, int *srcfds) -+static int io_copy_make_srcfds(size_t len, struct io_copy_arg *copy_arg, int *infds, -+ int *srcfds, transfer_channel_type *channels) - { - size_t i; - -@@ -307,6 +321,7 @@ static int io_copy_make_srcfds(size_t len, struct io_copy_arg *copy_arg, int *in - if (src_handler_jump_table[(int)(copy_arg[i].srctype)].handle(i, copy_arg, infds, srcfds) != 0) { - return -1; - } -+ channels[i] = copy_arg[i].channel; - } - - return 0; -@@ -412,6 +427,7 @@ static void *io_copy_thread_main(void *arg) - int *outfds = NULL; // recored fds to close - int *srcfds = NULL; - struct io_write_wrapper *writers = NULL; -+ transfer_channel_type *channels = NULL; - int sync_fd = thread_arg->sync_fd; - bool posted = false; - -@@ -426,11 +442,11 @@ static void *io_copy_thread_main(void *arg) - (void)prctl(PR_SET_NAME, "IoCopy"); - - len = thread_arg->len; -- if (io_copy_init_fds(len, &infds, &outfds, &srcfds, &writers) != 0) { -+ if (io_copy_init_fds(len, &infds, &outfds, &srcfds, &writers, &channels) != 0) { - goto err; - } - -- if (io_copy_make_srcfds(len, copy_arg, infds, srcfds) != 0) { -+ if (io_copy_make_srcfds(len, copy_arg, infds, srcfds, channels) != 0) { - goto err; - } - -@@ -440,12 +456,12 @@ static void *io_copy_thread_main(void *arg) - - sem_post(&thread_arg->wait_sem); - posted = true; -- (void)console_loop_io_copy(sync_fd, srcfds, writers, len); -+ (void)console_loop_io_copy(sync_fd, srcfds, writers, channels, len); - err: - if (!posted) { - sem_post(&thread_arg->wait_sem); - } -- io_copy_thread_cleanup(writers, thread_arg, infds, outfds, srcfds, len); -+ io_copy_thread_cleanup(writers, thread_arg, infds, outfds, srcfds, channels, len); - DAEMON_CLEAR_ERRMSG(); - return NULL; - } -@@ -480,26 +496,27 @@ static int start_io_copy_thread(int sync_fd, bool detach, struct io_copy_arg *co - } - - static void add_io_copy_element(struct io_copy_arg *element, io_type srctype, void *src, io_type dsttype, void *dst, -- int dstfifoflag) -+ int dstfifoflag, transfer_channel_type channel) - { - element->srctype = srctype; - element->src = src; - element->dsttype = dsttype; - element->dst = dst; - element->dstfifoflag = dstfifoflag; -+ element->channel = channel; - } - - /* - ----------------------------------------------------------------------------------- - | CHANNEL | iSula iSulad lxc | - ----------------------------------------------------------------------------------- -- | | fifoin fifos[0] | -+ | | fifoin | stdin_fd fifos[0] | - | IN | RDWR --------> RD RDWR --------> RD | - ----------------------------------------------------------------------------------- -- | | fifoout fifos[1] | -+ | | fifoout | stdout_handler fifos[1] | - | OUT | RD <-------- WR RD <-------- WR | - ----------------------------------------------------------------------------------- -- | | fifoerr fifos[2] | -+ | | fifoerr stderr_handler fifos[2] | - | ERR | RD <-------- WR RD <-------- WR | - ----------------------------------------------------------------------------------- - */ -@@ -513,29 +530,29 @@ int ready_copy_io_data(int sync_fd, bool detach, const char *fifoin, const char - if (fifoin != NULL) { - // fifoin : iSula -> iSulad read - // fifos[0] : iSulad -> lxc write -- add_io_copy_element(&io_copy[len++], IO_FIFO, (void *)fifoin, IO_FIFO, (void *)fifos[0], O_RDWR); -+ add_io_copy_element(&io_copy[len++], IO_FIFO, (void *)fifoin, IO_FIFO, (void *)fifos[0], O_RDWR, STDIN_CHANNEL); - } - - if (fifoout != NULL) { - // fifos[1] : lxc -> iSulad read - // fifoout : iSulad -> iSula write -- add_io_copy_element(&io_copy[len++], IO_FIFO, (void *)fifos[1], IO_FIFO, (void *)fifoout, O_WRONLY); -+ add_io_copy_element(&io_copy[len++], IO_FIFO, (void *)fifos[1], IO_FIFO, (void *)fifoout, O_WRONLY, STDOUT_CHANNEL); - } - - if (fifoerr != NULL) { -- add_io_copy_element(&io_copy[len++], IO_FIFO, (void *)fifos[2], IO_FIFO, (void *)fifoerr, O_WRONLY); -+ add_io_copy_element(&io_copy[len++], IO_FIFO, (void *)fifos[2], IO_FIFO, (void *)fifoerr, O_WRONLY, STDERR_CHANNEL); - } - - if (stdin_fd > 0) { -- add_io_copy_element(&io_copy[len++], IO_FD, &stdin_fd, IO_FIFO, (void *)fifos[0], O_RDWR); -+ add_io_copy_element(&io_copy[len++], IO_FD, &stdin_fd, IO_FIFO, (void *)fifos[0], O_RDWR, STDIN_CHANNEL); - } - - if (stdout_handler != NULL) { -- add_io_copy_element(&io_copy[len++], IO_FIFO, (void *)fifos[1], IO_FUNC, stdout_handler, O_WRONLY); -+ add_io_copy_element(&io_copy[len++], IO_FIFO, (void *)fifos[1], IO_FUNC, stdout_handler, O_WRONLY, STDOUT_CHANNEL); - } - - if (stderr_handler != NULL) { -- add_io_copy_element(&io_copy[len++], IO_FIFO, (void *)fifos[2], IO_FUNC, stderr_handler, O_WRONLY); -+ add_io_copy_element(&io_copy[len++], IO_FIFO, (void *)fifos[2], IO_FUNC, stderr_handler, O_WRONLY, STDERR_CHANNEL); - } - - if (start_io_copy_thread(sync_fd, detach, io_copy, len, tid) != 0) { -diff --git a/src/utils/console/console.c b/src/utils/console/console.c -index 1aedd0c9..b1d8b6dc 100644 ---- a/src/utils/console/console.c -+++ b/src/utils/console/console.c -@@ -328,7 +328,7 @@ out: - return ret; - } - --static void client_console_tty_state_close(struct epoll_descr *descr, const struct tty_state *ts) -+static void console_tty_state_close(struct epoll_descr *descr, const struct tty_state *ts) - { - if (ts->stdin_reader >= 0) { - epoll_loop_del_handler(descr, ts->stdin_reader); -@@ -430,13 +430,14 @@ int console_loop_with_std_fd(int stdinfd, int stdoutfd, int stderrfd, int fifoin - ret = safe_epoll_loop(&descr); - - err_out: -- client_console_tty_state_close(&descr, &ts); -+ console_tty_state_close(&descr, &ts); - epoll_loop_close(&descr); - return ret; - } - - /* console loop copy */ --int console_loop_io_copy(int sync_fd, const int *srcfds, struct io_write_wrapper *writers, size_t len) -+int console_loop_io_copy(int sync_fd, const int *srcfds, struct io_write_wrapper *writers, -+ transfer_channel_type *channels, size_t len) - { - int ret = 0; - size_t i = 0; -@@ -460,17 +461,35 @@ int console_loop_io_copy(int sync_fd, const int *srcfds, struct io_write_wrapper - } - - for (i = 0; i < len; i++) { -- // Reusing ts.stdout_reader and ts.stdout_writer for coping io -- ts[i].stdout_reader = srcfds[i]; -- ts[i].stdout_writer.context = writers[i].context; -- ts[i].stdout_writer.write_func = writers[i].write_func; -+ // initial tty_state -+ ts[i].stdin_reader = -1; -+ ts[i].stdout_reader = -1; -+ ts[i].stderr_reader = -1; - ts[i].sync_fd = -1; -- ret = epoll_loop_add_handler(&descr, ts[i].stdout_reader, console_cb_stdio_copy, &ts[i]); -+ if (channels[i] == STDIN_CHANNEL) { -+ ts[i].stdin_reader = srcfds[i]; -+ ts[i].stdin_writer.context = writers[i].context; -+ ts[i].stdin_writer.write_func = writers[i].write_func; -+ ret = epoll_loop_add_handler(&descr, ts[i].stdin_reader, console_cb_stdio_copy, &ts[i]); -+ } else if (channels[i] == STDOUT_CHANNEL) { -+ // Reusing ts.stdout_reader and ts.stdout_writer for coping io -+ ts[i].stdout_reader = srcfds[i]; -+ ts[i].stdout_writer.context = writers[i].context; -+ ts[i].stdout_writer.write_func = writers[i].write_func; -+ ret = epoll_loop_add_handler(&descr, ts[i].stdout_reader, console_cb_stdio_copy, &ts[i]); -+ } else { -+ // Reusing ts.stderr_reader and ts.stderr_writer for coping io -+ ts[i].stderr_reader = srcfds[i]; -+ ts[i].stderr_writer.context = writers[i].context; -+ ts[i].stderr_writer.write_func = writers[i].write_func; -+ ret = epoll_loop_add_handler(&descr, ts[i].stderr_reader, console_cb_stdio_copy, &ts[i]); -+ } - if (ret != 0) { - ERROR("Add handler for masterfd failed"); - goto err_out; - } - } -+ - if (sync_fd >= 0) { - ts[i].sync_fd = sync_fd; - epoll_loop_add_handler(&descr, ts[i].sync_fd, console_cb_stdio_copy, &ts[i]); -@@ -483,9 +502,8 @@ int console_loop_io_copy(int sync_fd, const int *srcfds, struct io_write_wrapper - ret = safe_epoll_loop(&descr); - - err_out: -- - for (i = 0; i < (len + 1); i++) { -- epoll_loop_del_handler(&descr, ts[i].stdout_reader); -+ console_tty_state_close(&descr, &ts[i]); - } - epoll_loop_close(&descr); - free(ts); -diff --git a/src/utils/console/console.h b/src/utils/console/console.h -index 0dfe19d3..63103d2b 100644 ---- a/src/utils/console/console.h -+++ b/src/utils/console/console.h -@@ -43,6 +43,8 @@ struct tty_state { - bool ignore_stdin_close; - }; - -+typedef enum { STDIN_CHANNEL, STDOUT_CHANNEL, STDERR_CHANNEL, MAX_CHANNEL} transfer_channel_type; -+ - int console_fifo_name(const char *rundir, const char *subpath, const char *stdflag, char *fifo_name, - size_t fifo_name_sz, char *fifo_path, size_t fifo_path_sz, bool do_mkdirp); - -@@ -59,7 +61,8 @@ void console_fifo_close(int fd); - int console_loop_with_std_fd(int stdinfd, int stdoutfd, int stderrfd, int fifoinfd, int fifooutfd, int fifoerrfd, - int tty_exit, bool tty); - --int console_loop_io_copy(int sync_fd, const int *srcfds, struct io_write_wrapper *writers, size_t len); -+int console_loop_io_copy(int sync_fd, const int *srcfds, struct io_write_wrapper *writers, -+ transfer_channel_type *channels, size_t len); - - int setup_tios(int fd, struct termios *curr_tios); - --- -2.25.1 - diff --git a/0070-CI-add-testcase-for-cri-stream.patch b/0070-CI-add-testcase-for-cri-stream.patch deleted file mode 100644 index ae5fe6d..0000000 --- a/0070-CI-add-testcase-for-cri-stream.patch +++ /dev/null @@ -1,191 +0,0 @@ -From b4dbbf16a6bfadbc2d09079c7b27c4af3feee6a6 Mon Sep 17 00:00:00 2001 -From: wujing -Date: Wed, 7 Apr 2021 15:35:09 +0800 -Subject: [PATCH 070/104] CI: add testcase for cri stream - -Signed-off-by: wujing ---- - CI/install_depends.sh | 8 ++ - CI/test_cases/container_cases/cri_stream.sh | 151 ++++++++++++++++++++ - 2 files changed, 159 insertions(+) - create mode 100755 CI/test_cases/container_cases/cri_stream.sh - -diff --git a/CI/install_depends.sh b/CI/install_depends.sh -index 5dd25439..f643deb8 100755 ---- a/CI/install_depends.sh -+++ b/CI/install_depends.sh -@@ -143,6 +143,14 @@ make install - cd - - ldconfig - -+# install cricli -+cd ~ -+git clone https://gitee.com/jingwoo/cricli.git -+cd cricli -+make -j $(nproc) -+cp cricli /usr/local/bin -+cd - -+ - wait - if [ -e ${buildstatus} ];then - for i in ${buildlogs[@]} -diff --git a/CI/test_cases/container_cases/cri_stream.sh b/CI/test_cases/container_cases/cri_stream.sh -new file mode 100755 -index 00000000..3107308f ---- /dev/null -+++ b/CI/test_cases/container_cases/cri_stream.sh -@@ -0,0 +1,151 @@ -+#!/bin/bash -+# -+# attributes: isulad cri websockets exec attach -+# concurrent: NA -+# spend time: 46 -+ -+curr_path=$(dirname $(readlink -f "$0")) -+data_path=$(realpath $curr_path/criconfigs) -+pause_img_path=$(realpath $curr_path/test_data) -+source ../helpers.sh -+ -+function set_up() -+{ -+ local ret=0 -+ local image="busybox" -+ local podimage="mirrorgooglecontainers/pause-amd64" -+ local test="set_up => (${FUNCNAME[@]})" -+ -+ msg_info "${test} starting..." -+ -+ cp /etc/isulad/daemon.json /etc/isulad/daemon.bak -+ sed -i "s#\"pod-sandbox-image\": \"\"#\"pod-sandbox-image\": \"mirrorgooglecontainers/pause-amd64:3.0\"#g" /etc/isulad/daemon.json -+ -+ check_valgrind_log -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to stop isulad" && return ${FAILURE} -+ -+ start_isulad_with_valgrind -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to start isulad" && return ${FAILURE} -+ -+ isula load -i ${pause_img_path}/pause.tar -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to load pause image" && return ${FAILURE} -+ -+ crictl pull ${image} -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to pull image: ${image}" && return ${FAILURE} -+ -+ crictl images | grep ${podimage} -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - missing list image: ${podimage}" && ((ret++)) -+ -+ sid=$(crictl runp ${data_path}/sandbox-config.json) -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to run sandbox" && ((ret++)) -+ -+ cid=$(crictl create $sid ${data_path}/container-config.json ${data_path}/sandbox-config.json) -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to create container" && ((ret++)) -+ -+ crictl start $cid -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to start container" && ((ret++)) -+ -+ msg_info "${test} finished with return ${ret}..." -+ return ${ret} -+} -+ -+function test_cri_exec_fun() -+{ -+ local ret=0 -+ local test="test_cri_exec_fun => (${FUNCNAME[@]})" -+ msg_info "${test} starting..." -+ declare -a fun_pids -+ for index in $(seq 1 20); do -+ nohup cricli exec -it ${cid} date & -+ fun_pids[${#pids[@]}]=$! -+ done -+ wait ${fun_pids[*]// /|} -+ -+ declare -a abn_pids -+ for index in $(seq 1 20); do -+ nohup cricli exec -it ${cid} xxx & -+ abn_pids[${#pids[@]}]=$! -+ done -+ wait ${abn_pids[*]// /|} -+ -+ sleep 2 -+ ps -T -p $(cat /var/run/isulad.pid) | grep IoCopy -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - residual IO copy thread in CRI exec operation" && ((ret++)) -+ -+ msg_info "${test} finished with return ${ret}..." -+ return ${ret} -+} -+ -+function test_cri_exec_abn -+{ -+ local ret=0 -+ local test="test_cri_exec_abn => (${FUNCNAME[@]})" -+ msg_info "${test} starting..." -+ -+ nohup cricli exec -it ${cid} sleep 100 & -+ pid=$! -+ sleep 3 -+ kill -9 $pid -+ sleep 2 -+ -+ ps -T -p $(cat /var/run/isulad.pid) | grep IoCopy -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - residual IO copy thread in CRI exec operation" && ((ret++)) -+ -+ msg_info "${test} finished with return ${ret}..." -+ return ${ret} -+} -+ -+function test_cri_attach -+{ -+ local ret=0 -+ local test="test_cri_attach => (${FUNCNAME[@]})" -+ msg_info "${test} starting..." -+ -+ nohup cricli attach -i ${cid} & -+ pid=$! -+ sleep 2 -+ kill -9 $pid -+ sleep 2 -+ -+ ps -T -p $(cat /var/run/isulad.pid) | grep IoCopy -+ [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - residual IO copy thread in CRI attach operation" && ((ret++)) -+ -+ msg_info "${test} finished with return ${ret}..." -+ return ${ret} -+} -+ -+function tear_down() -+{ -+ local ret=0 -+ -+ crictl stop $cid -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to stop container" && ((ret++)) -+ -+ crictl rm $cid -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to rm container" && ((ret++)) -+ -+ crictl stopp $sid -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to stop sandbox" && ((ret++)) -+ -+ crictl rmp $sid -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to rm sandbox" && ((ret++)) -+ -+ cp -f /etc/isulad/daemon.bak /etc/isulad/daemon.json -+ check_valgrind_log -+ start_isulad_with_valgrind -+ -+ return ${ret} -+} -+ -+declare -i ans=0 -+ -+set_up || ((ans++)) -+ -+test_cri_exec_fun || ((ans++)) -+test_cri_exec_abn || ((ans++)) -+ -+test_cri_attach || ((ans++)) -+ -+tear_down || ((ans++)) -+ -+show_result ${ans} "${curr_path}/${0}" --- -2.25.1 - diff --git a/0071-stats-show-cpu-usage-normal-when-stats-with-no-strea.patch b/0071-stats-show-cpu-usage-normal-when-stats-with-no-strea.patch deleted file mode 100644 index e32613a..0000000 --- a/0071-stats-show-cpu-usage-normal-when-stats-with-no-strea.patch +++ /dev/null @@ -1,69 +0,0 @@ -From 91ca85b8d8539992a6862a1a54c1e7b9d734b151 Mon Sep 17 00:00:00 2001 -From: Li Feng -Date: Thu, 8 Apr 2021 15:41:18 +0800 -Subject: [PATCH 071/104] stats: show cpu usage normal when stats with - --no-stream - -Signed-off-by: Li Feng ---- - src/cmd/isula/extend/stats.c | 22 +++++++++++++++------- - 1 file changed, 15 insertions(+), 7 deletions(-) - -diff --git a/src/cmd/isula/extend/stats.c b/src/cmd/isula/extend/stats.c -index 724cf381..b35156a6 100644 ---- a/src/cmd/isula/extend/stats.c -+++ b/src/cmd/isula/extend/stats.c -@@ -192,13 +192,15 @@ static void stats_output(const struct client_arguments *args, struct isula_stats - { - size_t i; - -- printf(TERMCLEAR); -- stats_print_header(); -- for (i = 0; i < (*response)->container_num; i++) { -- stats_print(&((*response)->container_stats[i])); -- printf("\n"); -+ if (g_oldstats != NULL) { -+ printf(TERMCLEAR); -+ stats_print_header(); -+ for (i = 0; i < (*response)->container_num; i++) { -+ stats_print(&((*response)->container_stats[i])); -+ printf("\n"); -+ } -+ fflush(stdout); - } -- fflush(stdout); - - isula_stats_response_free(g_oldstats); - g_oldstats = *response; -@@ -222,6 +224,7 @@ static int client_stats_mainloop(const struct client_arguments *args, const stru - config = get_connect_config(args); - - while (1) { -+ bool first_frame = false; - struct isula_stats_response *response = NULL; - response = util_common_calloc_s(sizeof(struct isula_stats_response)); - if (response == NULL) { -@@ -239,6 +242,10 @@ static int client_stats_mainloop(const struct client_arguments *args, const stru - goto out; - } - -+ if (g_oldstats == NULL) { -+ first_frame = true; -+ } -+ - if (args->original) { - stats_output_original(args, &response); - isula_stats_response_free(response); -@@ -247,7 +254,8 @@ static int client_stats_mainloop(const struct client_arguments *args, const stru - - stats_output(args, &response); - isula_stats_response_free(response); -- if (args->nostream) { -+ -+ if (args->nostream && !first_frame) { - goto out; - } - --- -2.25.1 - diff --git a/0072-Readme-add-script-to-install-iSulad-on-Ubuntu-20.04-.patch b/0072-Readme-add-script-to-install-iSulad-on-Ubuntu-20.04-.patch deleted file mode 100644 index e981936..0000000 --- a/0072-Readme-add-script-to-install-iSulad-on-Ubuntu-20.04-.patch +++ /dev/null @@ -1,118 +0,0 @@ -From ac38baf0a2a49b9cfeb8010393b5f8e5d8a49739 Mon Sep 17 00:00:00 2001 -From: NiGo -Date: Tue, 13 Apr 2021 19:49:14 +0800 -Subject: [PATCH 072/104] Readme: add script to install iSulad on Ubuntu 20.04 - LTS - ---- - docs/build_guide.md | 6 ++- - docs/build_guide_zh.md | 6 ++- - docs/install_iSulad_on_Ubuntu_20_04_LTS.sh | 62 ++++++++++++++++++++++ - 3 files changed, 70 insertions(+), 4 deletions(-) - create mode 100644 docs/install_iSulad_on_Ubuntu_20_04_LTS.sh - -diff --git a/docs/build_guide.md b/docs/build_guide.md -index 449767ae..1b481a11 100644 ---- a/docs/build_guide.md -+++ b/docs/build_guide.md -@@ -17,8 +17,10 @@ $ sudo ./install_iSulad_on_Centos_7.sh - ``` - - ### install basic dependencies based on Ubuntu distribution --```bash --$ sudo apt install -y g++ libprotobuf-dev protobuf-compiler protobuf-compiler-grpc libgrpc++-dev libgrpc-dev libtool automake autoconf cmake make pkg-config libyajl-dev zlib1g-dev libselinux-dev libseccomp-dev libcap-dev libsystemd-dev git libcurl4-gnutls-dev openssl libdevmapper-dev golang python3 libtar libtar-dev -+```sh -+$ git clone https://gitee.com/openeuler/iSulad.git -+$ cd iSulad/docs -+$ sudo ./docs/install_iSulad_on_Ubuntu_20_04_LTS.sh - ``` - - ## Build and install other dependencies from source -diff --git a/docs/build_guide_zh.md b/docs/build_guide_zh.md -index 2cb709e8..0c844816 100644 ---- a/docs/build_guide_zh.md -+++ b/docs/build_guide_zh.md -@@ -27,8 +27,10 @@ $ sudo ./install_iSulad_on_Centos_7.sh - ``` - - ### Ubuntu的安装命令 --```bash --$ sudo apt install -y g++ libprotobuf-dev protobuf-compiler protobuf-compiler-grpc libgrpc++-dev libgrpc-dev libtool automake autoconf cmake make pkg-config libyajl-dev zlib1g-dev libselinux-dev libseccomp-dev libcap-dev libsystemd-dev git libarchive libarchive-dev libcurl4-gnutls-dev openssl libdevmapper-dev python3 libtar libtar-dev -+```sh -+$ git clone https://gitee.com/openeuler/iSulad.git -+$ cd iSulad/docs -+$ sudo ./docs/install_iSulad_on_Ubuntu_20_04_LTS.sh - ``` - - ## 从源码构建和安装关键依赖 -diff --git a/docs/install_iSulad_on_Ubuntu_20_04_LTS.sh b/docs/install_iSulad_on_Ubuntu_20_04_LTS.sh -new file mode 100644 -index 00000000..4b0b7a85 ---- /dev/null -+++ b/docs/install_iSulad_on_Ubuntu_20_04_LTS.sh -@@ -0,0 +1,62 @@ -+#!/bin/bash -+ -+set -x -+set -e -+ -+# export LDFLAGS -+export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH -+export LD_LIBRARY_PATH=/usr/local/lib:/usr/lib:/lib/x86_64-linux-gnu/:$LD_LIBRARY_PATH -+echo "/usr/local/lib" >> /etc/ld.so.conf -+ -+apt install -y g++ libprotobuf-dev protobuf-compiler protobuf-compiler-grpc libgrpc++-dev libgrpc-dev libtool automake autoconf cmake make pkg-config libyajl-dev zlib1g-dev libselinux1-dev libseccomp-dev libcap-dev libsystemd-dev git libarchive libarchive-dev libcurl4-gnutls-dev openssl libdevmapper-dev python3 libtar0 libtar-dev libhttp-parser-dev libwebsockets-dev -+ -+BUILD_DIR=/tmp/build_isulad -+ -+rm -rf $BUILD_DIR -+mkdir -p $BUILD_DIR -+ -+# build lxc -+cd $BUILD_DIR -+git clone https://gitee.com/src-openeuler/lxc.git -+cd lxc -+tar -zxf lxc-4.0.3.tar.gz -+./apply-patches -+cd lxc-4.0.3 -+./autogen.sh -+./configure -+make -j $(nproc) -+make install -+ -+# build lcr -+cd $BUILD_DIR -+git clone https://gitee.com/openeuler/lcr.git -+cd lcr -+mkdir build -+cd build -+cmake .. -+make -j $(nproc) -+make install -+ -+# build and install clibcni -+cd $BUILD_DIR -+git clone https://gitee.com/openeuler/clibcni.git -+cd clibcni -+mkdir build -+cd build -+cmake .. -+make -j $(nproc) -+make install -+ -+# build and install iSulad -+cd $BUILD_DIR -+git clone https://gitee.com/openeuler/iSulad.git -+cd iSulad -+mkdir build -+cd build -+cmake .. -+make -j $(nproc) -+make install -+ -+# clean -+rm -rf $BUILD_DIR -+apt autoremove --- -2.25.1 - diff --git a/0073-update-libarchive-requirement-to-v3.4.patch b/0073-update-libarchive-requirement-to-v3.4.patch deleted file mode 100644 index ca58110..0000000 --- a/0073-update-libarchive-requirement-to-v3.4.patch +++ /dev/null @@ -1,26 +0,0 @@ -From 998835f4bca41a91b938a97d4a25e7389e24b19a Mon Sep 17 00:00:00 2001 -From: WangFengTu -Date: Thu, 15 Apr 2021 09:45:06 +0800 -Subject: [PATCH 073/104] update libarchive requirement to v3.4 - -Signed-off-by: WangFengTu ---- - cmake/checker.cmake | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/cmake/checker.cmake b/cmake/checker.cmake -index 5ba4c63d..d4337a1b 100644 ---- a/cmake/checker.cmake -+++ b/cmake/checker.cmake -@@ -57,7 +57,7 @@ find_library(LIBYAJL_LIBRARY yajl - _CHECK(LIBYAJL_LIBRARY "LIBYAJL_LIBRARY-NOTFOUND" "libyajl.so") - - # check libarchive --pkg_check_modules(PC_LIBARCHIVE REQUIRED "libarchive>=3.2") -+pkg_check_modules(PC_LIBARCHIVE REQUIRED "libarchive>=3.4") - find_path(LIBARCHIVE_INCLUDE_DIR archive.h - HINTS ${PC_LIBARCHIVE_INCLUDEDIR} ${PC_LIBARCHIVE_INCLUDE_DIRS}) - _CHECK(LIBARCHIVE_INCLUDE_DIR "LIBARCHIVE_INCLUDE_DIR-NOTFOUND" "archive.h") --- -2.25.1 - diff --git a/0074-correct-the-mistake-package-libarchive-dev.patch b/0074-correct-the-mistake-package-libarchive-dev.patch deleted file mode 100644 index 4705238..0000000 --- a/0074-correct-the-mistake-package-libarchive-dev.patch +++ /dev/null @@ -1,26 +0,0 @@ -From 8b5115b5d43cc73d41ade4e984e7ee38eb237d3a Mon Sep 17 00:00:00 2001 -From: XiyouNiGo <1275810355@qq.com> -Date: Thu, 15 Apr 2021 12:33:07 +0800 -Subject: [PATCH 074/104] correct the mistake package: libarchive-dev - ---- - docs/install_iSulad_on_Ubuntu_20_04_LTS.sh | 3 +-- - 1 file changed, 1 insertion(+), 2 deletions(-) - -diff --git a/docs/install_iSulad_on_Ubuntu_20_04_LTS.sh b/docs/install_iSulad_on_Ubuntu_20_04_LTS.sh -index 4b0b7a85..630febe1 100644 ---- a/docs/install_iSulad_on_Ubuntu_20_04_LTS.sh -+++ b/docs/install_iSulad_on_Ubuntu_20_04_LTS.sh -@@ -7,8 +7,7 @@ set -e - export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH - export LD_LIBRARY_PATH=/usr/local/lib:/usr/lib:/lib/x86_64-linux-gnu/:$LD_LIBRARY_PATH - echo "/usr/local/lib" >> /etc/ld.so.conf -- --apt install -y g++ libprotobuf-dev protobuf-compiler protobuf-compiler-grpc libgrpc++-dev libgrpc-dev libtool automake autoconf cmake make pkg-config libyajl-dev zlib1g-dev libselinux1-dev libseccomp-dev libcap-dev libsystemd-dev git libarchive libarchive-dev libcurl4-gnutls-dev openssl libdevmapper-dev python3 libtar0 libtar-dev libhttp-parser-dev libwebsockets-dev -+apt install -y g++ libprotobuf-dev protobuf-compiler protobuf-compiler-grpc libgrpc++-dev libgrpc-dev libtool automake autoconf cmake make pkg-config libyajl-dev zlib1g-dev libselinux1-dev libseccomp-dev libcap-dev libsystemd-dev git libarchive-dev libcurl4-gnutls-dev openssl libdevmapper-dev python3 libtar0 libtar-dev libhttp-parser-dev libwebsockets-dev - - BUILD_DIR=/tmp/build_isulad - --- -2.25.1 - diff --git a/0075-Added-autocomplete-in-isula-command-line-mode.patch b/0075-Added-autocomplete-in-isula-command-line-mode.patch deleted file mode 100644 index 4512f04..0000000 --- a/0075-Added-autocomplete-in-isula-command-line-mode.patch +++ /dev/null @@ -1,140 +0,0 @@ -From 5f1fe5416c56846da50dd88c7423e80ec8514f5f Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?=E5=B0=B9=E7=A7=80=E6=B1=9F?= -Date: Thu, 15 Apr 2021 16:23:30 +0800 -Subject: [PATCH 075/104] Added autocomplete in isula command line mode - ---- - iSulad.spec | 5 ++ - src/contrib/completion/isula | 90 ++++++++++++++++++++++++++++++++++++ - 2 files changed, 95 insertions(+) - create mode 100644 src/contrib/completion/isula - -diff --git a/iSulad.spec b/iSulad.spec -index eca7ddd8..532af2dc 100644 ---- a/iSulad.spec -+++ b/iSulad.spec -@@ -107,6 +107,8 @@ install -d $RPM_BUILD_ROOT/%{_initddir} - install -p -m 0640 ../src/contrib/init/isulad.init $RPM_BUILD_ROOT/%{_initddir}/isulad.init - %endif - -+install -d $RPM_BUILD_ROOT/usr/share/bash-completion/completions -+install -p -m 0644 ../src/contrib/completion/isula $RPM_BUILD_ROOT/usr/share/bash-completion/completions/isula - %clean - rm -rf %{buildroot} - -@@ -125,6 +127,8 @@ fi - fi - - %post -+source /usr/share/bash-completion/completions/isula -+ - if ! getent group isula > /dev/null; then - groupadd --system isula - fi -@@ -211,6 +215,7 @@ fi - %else - %config(noreplace,missingok) %{_initddir}/isulad.init - %endif -+/usr/share/bash-completion/completions/isula - - %changelog - * Tue Sep 10 2020 openEuler Buildteam - 2.0.5-20200910.140350.git72990229 -diff --git a/src/contrib/completion/isula b/src/contrib/completion/isula -new file mode 100644 -index 00000000..305c5150 ---- /dev/null -+++ b/src/contrib/completion/isula -@@ -0,0 +1,90 @@ -+#!/usr/bin/env bash -+_isula_isula() { -+ local isula_management_commands=( -+ volume -+ ) -+ -+ local isula_commands=( -+ attach -+ cp -+ create -+ events -+ exec -+ export -+ images -+ import -+ info -+ inspect -+ kill -+ load -+ login -+ logout -+ logs -+ pause -+ ps -+ pull -+ rename -+ restart -+ rm -+ rmi -+ run -+ start -+ stats -+ stop -+ tag -+ top -+ unpause -+ update -+ version -+ wait -+ ) -+ -+ local commands=(${isula_management_commands[*]} ${isula_commands[*]}) -+ local common_options=( -+ --help -+ -H --host -+ --tls -+ --tlscacert -+ --tlscert -+ --tlskey -+ --tlsverify -+ --version -+ ) -+ -+ case "$prev" in -+ #todo..... -+ esac -+ -+ case "$cur" in -+ -*) -+ COMPREPLY=( $( compgen -W "${common_options[*]}" -- "$cur" ) ) -+ ;; -+ *) -+ COMPREPLY=( $( compgen -W "${commands[*]}" -- "$cur" ) ) -+ ;; -+ esac -+} -+ -+ -+_isula() { -+ COMPREPLY=() -+ -+ #An array variable consisting of the individual words in the current command line -+ local words=(${COMP_WORDS[*]}) -+ #An index into ${word} of the word containing the current cursor position -+ local cword=$COMP_CWORD -+ local cur="${words[$cword]}" -+ local prev="${words[$cword-1]}" -+ local command='isula' -+ -+ local completions_func=_isula_${command//-/_} -+ -+ #The completion of the secondary command will be added later -+ if [ $cword -lt 2 ] ; then -+ declare -F $completions_func >/dev/null && $completions_func -+ fi -+ -+ return 0 -+} -+ -+complete -F _isula isula --- -2.25.1 - diff --git a/0076-iSulad-fix-bugs-of-isula-runtime-ops.patch b/0076-iSulad-fix-bugs-of-isula-runtime-ops.patch deleted file mode 100644 index 06d7c4c..0000000 --- a/0076-iSulad-fix-bugs-of-isula-runtime-ops.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 2b82695e69369b2d5666f13d40e168e89248a51f Mon Sep 17 00:00:00 2001 -From: jikui -Date: Sat, 17 Apr 2021 11:49:47 +0800 -Subject: [PATCH 076/104] iSulad: fix bugs of isula runtime ops - -Signed-off-by: jikui ---- - src/daemon/modules/runtime/isula/isula_rt_ops.c | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/src/daemon/modules/runtime/isula/isula_rt_ops.c b/src/daemon/modules/runtime/isula/isula_rt_ops.c -index ecea2b3d..3b55ac88 100644 ---- a/src/daemon/modules/runtime/isula/isula_rt_ops.c -+++ b/src/daemon/modules/runtime/isula/isula_rt_ops.c -@@ -582,7 +582,8 @@ static int runtime_call_simple(const char *workdir, const char *runtime, const c - - runtime_exec_info_init(&rei, workdir, runtime, subcmd, opts, opts_len, id, params, PARAM_NUM); - if (!util_exec_cmd(runtime_exec_func, &rei, NULL, &stdout, &stderr)) { -- WARN("call runtime %s failed stderr %s", subcmd, stderr); -+ ERROR("call runtime %s failed stderr %s", subcmd, stderr); -+ ret = -1; - goto out; - } - --- -2.25.1 - diff --git a/0077-Compatible-with-registry-URL-ending-in.patch b/0077-Compatible-with-registry-URL-ending-in.patch deleted file mode 100644 index 4b60d45..0000000 --- a/0077-Compatible-with-registry-URL-ending-in.patch +++ /dev/null @@ -1,57 +0,0 @@ -From 8ee530b4cc42114ae713fb909f52e053b274008b Mon Sep 17 00:00:00 2001 -From: wangyueliang -Date: Tue, 20 Apr 2021 10:53:58 +0800 -Subject: [PATCH 077/104] Compatible with registry URL ending in '/' - ---- - src/daemon/modules/image/oci/utils_images.c | 13 ++++++++++--- - 1 file changed, 10 insertions(+), 3 deletions(-) - -diff --git a/src/daemon/modules/image/oci/utils_images.c b/src/daemon/modules/image/oci/utils_images.c -index a909b0f3..ece37d2e 100644 ---- a/src/daemon/modules/image/oci/utils_images.c -+++ b/src/daemon/modules/image/oci/utils_images.c -@@ -142,6 +142,11 @@ char *oci_add_host(const char *host, const char *name) - return NULL; - } - -+ if (strlen(host) == 0) { -+ WARN("Invalid host"); -+ return NULL; -+ } -+ - if (strchr(name, '/') == NULL) { - need_repo_prefix = true; - } -@@ -152,7 +157,9 @@ char *oci_add_host(const char *host, const char *name) - return NULL; - } - (void)strcat(with_host, host); -- (void)strcat(with_host, "/"); -+ if (host[strlen(host) - 1] != '/') { -+ (void)strcat(with_host, "/"); -+ } - if (need_repo_prefix) { - (void)strcat(with_host, REPO_PREFIX_TO_STRIP); - } -@@ -491,7 +498,7 @@ bool oci_valid_time(char *time) - - static int makesure_path_is_dir(char *path) - { -- struct stat st = {0}; -+ struct stat st = { 0 }; - - if (lstat(path, &st) != 0) { - if (errno == ENOENT) { -@@ -542,7 +549,7 @@ char *oci_get_isulad_tmpdir(const char *root_dir) - - int makesure_isulad_tmpdir_perm_right(const char *root_dir) - { -- struct stat st = {0}; -+ struct stat st = { 0 }; - char *isulad_tmpdir = NULL; - int ret = 0; - --- -2.25.1 - diff --git a/0078-CI-fix-CI-to-fit-run-on-2-cpu-4G-memory-environment.patch b/0078-CI-fix-CI-to-fit-run-on-2-cpu-4G-memory-environment.patch deleted file mode 100644 index 5e1ac41..0000000 --- a/0078-CI-fix-CI-to-fit-run-on-2-cpu-4G-memory-environment.patch +++ /dev/null @@ -1,443 +0,0 @@ -From a5b1605c8e6552aa78439fb45ff4df59f542ef27 Mon Sep 17 00:00:00 2001 -From: lifeng68 -Date: Wed, 21 Apr 2021 08:54:19 +0800 -Subject: [PATCH 078/104] CI: fix CI to fit run on 2 cpu 4G memory environment - -Signed-off-by: lifeng68 ---- - .gitignore | 1 + - CI/Dockerfile | 36 ++++++++-- - .../container_cases/bigdata_stream.sh | 70 +++++++++---------- - .../container_cases/bigdata_stream_runc.sh | 40 +++++------ - 4 files changed, 87 insertions(+), 60 deletions(-) - -diff --git a/.gitignore b/.gitignore -index 8c2dfb40..26e5010e 100644 ---- a/.gitignore -+++ b/.gitignore -@@ -12,3 +12,4 @@ compile_commands.json - tags - .clangd - iSula-libutils -+isulad_ci_test_data -diff --git a/CI/Dockerfile b/CI/Dockerfile -index e0a50f65..d25db5c9 100644 ---- a/CI/Dockerfile -+++ b/CI/Dockerfile -@@ -219,13 +219,39 @@ RUN export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH && \ - cd ~ && \ - git clone https://gitee.com/src-openeuler/libwebsockets.git && \ - cd libwebsockets && \ -- git checkout -b openEuler-20.03-LTS-tag openEuler-20.03-LTS-tag && \ -- tar -xzvf libwebsockets-2.4.2.tar.gz && \ -- cd libwebsockets-2.4.2 && \ -- patch -p1 -F1 -s < ../libwebsockets-fix-coredump.patch && \ -+ git checkout -b openEuler-21.03-20210330 openEuler-21.03-20210330 && \ -+ tar -xzvf libwebsockets-4.0.20.tar.gz && \ -+ cd libwebsockets-4.0.20 && \ - mkdir build && \ - cd build && \ -- cmake -DLWS_WITH_SSL=0 -DLWS_MAX_SMP=32 -DCMAKE_BUILD_TYPE=Debug ../ && \ -+ cmake \ -+ -D LWS_WITH_HTTP2=ON \ -+ -D LWS_IPV6=ON \ -+ -D LWS_WITH_ZIP_FOPS=ON \ -+ -D LWS_WITH_SOCKS5=ON \ -+ -D LWS_WITH_RANGES=ON \ -+ -D LWS_WITH_ACME=ON \ -+ -D LWS_WITH_LIBUV=OFF \ -+ -D LWS_WITH_LIBEV=OFF \ -+ -D LWS_WITH_LIBEVENT=OFF \ -+ -D LWS_WITH_FTS=ON \ -+ -D LWS_WITH_THREADPOOL=ON \ -+ -D LWS_UNIX_SOCK=ON \ -+ -D LWS_WITH_HTTP_PROXY=ON \ -+ -D LWS_WITH_DISKCACHE=ON \ -+ -D LWS_WITH_LWSAC=ON \ -+ -D LWS_LINK_TESTAPPS_DYNAMIC=ON \ -+ -D LWS_WITHOUT_BUILTIN_GETIFADDRS=ON \ -+ -D LWS_USE_BUNDLED_ZLIB=OFF \ -+ -D LWS_WITHOUT_BUILTIN_SHA1=ON \ -+ -D LWS_WITH_STATIC=OFF \ -+ -D LWS_WITHOUT_CLIENT=OFF \ -+ -D LWS_WITHOUT_SERVER=OFF \ -+ -D LWS_WITHOUT_TESTAPPS=OFF \ -+ -D LWS_WITHOUT_TEST_SERVER=ON \ -+ -D LWS_WITHOUT_TEST_SERVER_EXTPOLL=ON \ -+ -D LWS_WITHOUT_TEST_PING=ON \ -+ -D LWS_WITHOUT_TEST_CLIENT=ON .. && \ - make -j $(nproc) && \ - make install && \ - ldconfig -diff --git a/CI/test_cases/container_cases/bigdata_stream.sh b/CI/test_cases/container_cases/bigdata_stream.sh -index 768e9703..1eae3df2 100755 ---- a/CI/test_cases/container_cases/bigdata_stream.sh -+++ b/CI/test_cases/container_cases/bigdata_stream.sh -@@ -2,7 +2,7 @@ - # - # attributes: isulad basic container stream exec start attach - # concurrent: NA --# spend time: 6 -+# spend time: 224 - - ####################################################################### - ##- @Copyright (C) Huawei Technologies., Ltd. 2020. All rights reserved. -@@ -119,16 +119,16 @@ function test_concurrent_bigdata_stream() - declare -a pids - - for index in $(seq 1 5); do -- nohup isula exec -it $CID cat test_500M > /tmp/iocopy_stream_data_500M_$index & -+ nohup isula exec -it $CID cat test_500M > /home/iocopy_stream_data_500M_$index & - pids[${#pids[@]}]=$! - done - wait ${pids[*]// /|} - - for index in $(seq 1 5); do -- ls -l /tmp/iocopy_stream_data_500M_$index -- total_size=$(stat -c"%s" /tmp/iocopy_stream_data_500M_$index) -+ ls -l /home/iocopy_stream_data_500M_$index -+ total_size=$(stat -c"%s" /home/iocopy_stream_data_500M_$index) - [[ $total_size -ne 524288000 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - stream iocopy loss data" && ((ret++)) -- rm -f /tmp/iocopy_stream_data_500M_$index -+ rm -f /home/iocopy_stream_data_500M_$index - done - - check_last_status -@@ -146,16 +146,16 @@ function test_concurrent_bigdata_stream_without_pty() - declare -a pids - - for index in $(seq 1 5); do -- nohup isula exec $CID cat test_500M > /tmp/iocopy_stream_data_500M_$index & -+ nohup isula exec $CID cat test_500M > /home/iocopy_stream_data_500M_$index & - pids[${#pids[@]}]=$! - done - wait ${pids[*]// /|} - - for index in $(seq 1 5); do -- ls -l /tmp/iocopy_stream_data_500M_$index -- total_size=$(stat -c"%s" /tmp/iocopy_stream_data_500M_$index) -+ ls -l /home/iocopy_stream_data_500M_$index -+ total_size=$(stat -c"%s" /home/iocopy_stream_data_500M_$index) - [[ $total_size -ne 524288000 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - stream iocopy loss data" && ((ret++)) -- rm -f /tmp/iocopy_stream_data_500M_$index -+ rm -f /home/iocopy_stream_data_500M_$index - done - - check_last_status -@@ -175,16 +175,16 @@ function test_more_concurrent_stream() - isula exec -it $CID dd if=/dev/zero of=test_20M bs=1M count=20 - - for index in $(seq 1 30); do -- nohup isula exec -it $CID cat test_20M > /tmp/iocopy_stream_data_20M_$index & -+ nohup isula exec -it $CID cat test_20M > /home/iocopy_stream_data_20M_$index & - pids[${#pids[@]}]=$! - done - wait ${pids[*]// /|} - - for index in $(seq 1 30); do -- ls -l /tmp/iocopy_stream_data_20M_$index -- total_size=$(stat -c"%s" /tmp/iocopy_stream_data_20M_$index) -+ ls -l /home/iocopy_stream_data_20M_$index -+ total_size=$(stat -c"%s" /home/iocopy_stream_data_20M_$index) - [[ $total_size -ne 20971520 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - stream iocopy loss data" && ((ret++)) -- rm -f /tmp/iocopy_stream_data_20M_$index -+ rm -f /home/iocopy_stream_data_20M_$index - done - - check_last_status -@@ -200,7 +200,7 @@ function test_stream_with_stop_client() - local test="test_stream_with_stop_client => (${FUNCNAME[@]})" - msg_info "${test} starting..." - -- nohup isula exec -it $CID cat test_500M > /tmp/iocopy_stream_data_500M & -+ nohup isula exec -it $CID cat test_500M > /home/iocopy_stream_data_500M & - pid=$! - sleep 2 - kill -19 $pid -@@ -209,8 +209,8 @@ function test_stream_with_stop_client() - - wait $pid - -- ls -l /tmp/iocopy_stream_data_500M -- total_size=$(stat -c"%s" /tmp/iocopy_stream_data_500M) -+ ls -l /home/iocopy_stream_data_500M -+ total_size=$(stat -c"%s" /home/iocopy_stream_data_500M) - [[ $total_size -ne 524288000 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - stream iocopy loss data" && ((ret++)) - - check_last_status -@@ -226,7 +226,7 @@ function test_stream_with_kill_client() - local test="test_stream_with_kill_client => (${FUNCNAME[@]})" - msg_info "${test} starting..." - -- nohup isula exec -it $CID cat test_500M > /tmp/iocopy_stream_data_500M & -+ nohup isula exec -it $CID cat test_500M > /home/iocopy_stream_data_500M & - pid=$! - sleep 5 - kill -9 $pid -@@ -244,7 +244,7 @@ function test_stream_with_stop_attach() - local test="test_stream_with_stop_attach => (${FUNCNAME[@]})" - msg_info "${test} starting..." - -- nohup isula exec -it $CID cat test_500M > /tmp/iocopy_stream_data_500M & -+ nohup isula exec -it $CID cat test_500M > /home/iocopy_stream_data_500M & - exec_pid=$! - sleep 2 - pid=$(ps aux | grep lxc-attach | grep $CID |grep "cat test_500M" | awk '{print $2}') -@@ -254,8 +254,8 @@ function test_stream_with_stop_attach() - - wait $exec_pid - -- ls -l /tmp/iocopy_stream_data_500M -- total_size=$(stat -c"%s" /tmp/iocopy_stream_data_500M) -+ ls -l /home/iocopy_stream_data_500M -+ total_size=$(stat -c"%s" /home/iocopy_stream_data_500M) - [[ $total_size -ne 524288000 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - stream iocopy loss data" && ((ret++)) - - check_last_status -@@ -271,7 +271,7 @@ function test_stream_with_kill_attach() - local test="test_stream_with_kill_client => (${FUNCNAME[@]})" - msg_info "${test} starting..." - -- nohup isula exec -it $CID cat test_500M > /tmp/iocopy_stream_data_500M & -+ nohup isula exec -it $CID cat test_500M > /home/iocopy_stream_data_500M & - sleep 3 - pid=$(ps aux | grep lxc-attach | grep $CID |grep "cat test_500M" | awk '{print $2}') - kill -9 $pid -@@ -289,7 +289,7 @@ function test_stream_with_stop_lxc_monitor() - local test="test_stream_with_stop_lxc_monitor => (${FUNCNAME[@]})" - msg_info "${test} starting..." - -- nohup isula exec -it $CID cat test_500M > /tmp/iocopy_stream_data_500M & -+ nohup isula exec -it $CID cat test_500M > /home/iocopy_stream_data_500M & - exec_pid=$! - sleep 2 - pid=$(ps aux | grep "lxc monitor" | grep $CID | awk '{print $2}') -@@ -299,8 +299,8 @@ function test_stream_with_stop_lxc_monitor() - - wait $exec_pid - -- ls -l /tmp/iocopy_stream_data_500M -- total_size=$(stat -c"%s" /tmp/iocopy_stream_data_500M) -+ ls -l /home/iocopy_stream_data_500M -+ total_size=$(stat -c"%s" /home/iocopy_stream_data_500M) - [[ $total_size -ne 524288000 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - stream iocopy loss data" && ((ret++)) - - check_last_status -@@ -316,7 +316,7 @@ function test_stream_with_kill_lxc_monitor() - local test="test_stream_with_kill_lxc_monitor => (${FUNCNAME[@]})" - msg_info "${test} starting..." - -- nohup isula exec -it $CID cat test_500M > /tmp/iocopy_stream_data_500M & -+ nohup isula exec -it $CID cat test_500M > /home/iocopy_stream_data_500M & - sleep 3 - pid=$(ps aux | grep "lxc monitor" | grep $CID | awk '{print $2}') - kill -9 $pid -@@ -338,7 +338,7 @@ function test_stream_with_stop_isulad() - local test="test_stream_with_stop_isulad => (${FUNCNAME[@]})" - msg_info "${test} starting..." - -- nohup isula exec -it $CID cat test_500M > /tmp/iocopy_stream_data_500M & -+ nohup isula exec -it $CID cat test_500M > /home/iocopy_stream_data_500M & - pid=$! - sleep 2 - kill -19 $(cat /var/run/isulad.pid) -@@ -347,8 +347,8 @@ function test_stream_with_stop_isulad() - - wait $pid - -- ls -l /tmp/iocopy_stream_data_500M -- total_size=$(stat -c"%s" /tmp/iocopy_stream_data_500M) -+ ls -l /home/iocopy_stream_data_500M -+ total_size=$(stat -c"%s" /home/iocopy_stream_data_500M) - [[ $total_size -ne 524288000 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - stream iocopy loss data" && ((ret++)) - - check_last_status -@@ -364,7 +364,7 @@ function test_stream_with_kill_isulad() - local test="test_stream_with_kill_isulad => (${FUNCNAME[@]})" - msg_info "${test} starting..." - -- nohup isula exec -it $CID cat test_500M > /tmp/iocopy_stream_data_500M & -+ nohup isula exec -it $CID cat test_500M > /home/iocopy_stream_data_500M & - sleep 3 - isulad_pid=$(cat /var/run/isulad.pid) - kill -9 $isulad_pid -@@ -393,16 +393,16 @@ function test_stream_with_runc() - isula exec -it $RUNCID dd if=/dev/zero of=test_500M bs=1M count=500 - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to create bigdata" && ((ret++)) - -- isula exec -it $RUNCID cat test_500M > /tmp/iocopy_stream_data_500M -+ isula exec -it $RUNCID cat test_500M > /home/iocopy_stream_data_500M - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to cat bigdata" && ((ret++)) - -- total_size=$(stat -c"%s" /tmp/iocopy_stream_data_500M) -+ total_size=$(stat -c"%s" /home/iocopy_stream_data_500M) - [[ $total_size -ne 524288000 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - stream iocopy loss data" && ((ret++)) - - isula rm -f $RUNCID - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to rm container" && ((ret++)) - -- rm -rf /tmp/iocopy_stream_data_500M -+ rm -rf /home/iocopy_stream_data_500M - - msg_info "${test} finished with return ${ret}..." - return ${ret} -@@ -414,7 +414,7 @@ function tear_down() - isula rm -f $CID - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to rm container: $CID" && ((ret++)) - -- rm -rf //tmp/iocopy_stream_data_* -+ rm -rf //home/iocopy_stream_data_* - - stop_isulad_without_valgrind - -@@ -435,10 +435,10 @@ function test_memory_leak_with_bigdata_stream() - isula exec -it $CID dd if=/dev/zero of=test_100M bs=1M count=100 - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to create bigdata" && ((ret++)) - -- isula exec -it $CID cat test_100M > /tmp/iocopy_stream_data_100M -+ isula exec -it $CID cat test_100M > /home/iocopy_stream_data_100M - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to cat bigdata from container" && ((ret++)) - -- rm -rf /tmp/iocopy_stream_data_100M -+ rm -rf /home/iocopy_stream_data_100M - - isula rm -f $CID - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to rm container" && ((ret++)) -diff --git a/CI/test_cases/container_cases/bigdata_stream_runc.sh b/CI/test_cases/container_cases/bigdata_stream_runc.sh -index 1313774e..e5ae77a2 100755 ---- a/CI/test_cases/container_cases/bigdata_stream_runc.sh -+++ b/CI/test_cases/container_cases/bigdata_stream_runc.sh -@@ -2,7 +2,7 @@ - # - # attributes: isulad basic container stream exec start attach - # concurrent: NA --# spend time: 6 -+# spend time: 144 - - ####################################################################### - ##- @Copyright (C) Huawei Technologies., Ltd. 2020. All rights reserved. -@@ -113,16 +113,16 @@ function test_cat_bigdata() - declare -a pids - - for index in $(seq 1 5); do -- nohup isula exec -it $CID cat test_500M > /tmp/iocopy_stream_data_500M_$index & -+ nohup isula exec -it $CID cat test_500M > /home/iocopy_stream_data_500M_$index & - pids[${#pids[@]}]=$! - done - wait ${pids[*]// /|} - - for index in $(seq 1 5); do -- ls -l /tmp/iocopy_stream_data_500M_$index -- total_size=$(stat -c"%s" /tmp/iocopy_stream_data_500M_$index) -+ ls -l /home/iocopy_stream_data_500M_$index -+ total_size=$(stat -c"%s" /home/iocopy_stream_data_500M_$index) - [[ $total_size -ne 524288000 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - stream iocopy loss data" && ((ret++)) -- rm -f /tmp/iocopy_stream_data_500M_$index -+ rm -f /home/iocopy_stream_data_500M_$index - done - - check_last_status -@@ -140,16 +140,16 @@ function test_cat_bigdata_without_pty() - declare -a pids - - for index in $(seq 1 5); do -- nohup isula exec $CID cat test_500M > /tmp/iocopy_stream_data_500M_$index & -+ nohup isula exec $CID cat test_500M > /home/iocopy_stream_data_500M_$index & - pids[${#pids[@]}]=$! - done - wait ${pids[*]// /|} - - for index in $(seq 1 5); do -- ls -l /tmp/iocopy_stream_data_500M_$index -- total_size=$(stat -c"%s" /tmp/iocopy_stream_data_500M_$index) -+ ls -l /home/iocopy_stream_data_500M_$index -+ total_size=$(stat -c"%s" /home/iocopy_stream_data_500M_$index) - [[ $total_size -ne 524288000 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - stream iocopy loss data" && ((ret++)) -- rm -f /tmp/iocopy_stream_data_500M_$index -+ rm -f /home/iocopy_stream_data_500M_$index - done - - check_last_status -@@ -165,7 +165,7 @@ function test_stream_with_stop_client() - local test="test_stream_with_stop_client => (${FUNCNAME[@]})" - msg_info "${test} starting..." - -- nohup isula exec $CID cat test_500M > /tmp/iocopy_stream_data_500M & -+ nohup isula exec $CID cat test_500M > /home/iocopy_stream_data_500M & - pid=$! - sleep 2 - kill -19 $pid -@@ -174,8 +174,8 @@ function test_stream_with_stop_client() - - wait $pid - -- ls -l /tmp/iocopy_stream_data_500M -- total_size=$(stat -c"%s" /tmp/iocopy_stream_data_500M) -+ ls -l /home/iocopy_stream_data_500M -+ total_size=$(stat -c"%s" /home/iocopy_stream_data_500M) - [[ $total_size -ne 524288000 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - stream iocopy loss data" && ((ret++)) - - check_last_status -@@ -191,7 +191,7 @@ function test_stream_with_kill_client() - local test="test_stream_with_kill_client => (${FUNCNAME[@]})" - msg_info "${test} starting..." - -- nohup isula exec $CID cat test_500M > /tmp/iocopy_stream_data_500M & -+ nohup isula exec $CID cat test_500M > /home/iocopy_stream_data_500M & - pid=$! - sleep 5 - kill -9 $pid -@@ -209,7 +209,7 @@ function test_stream_with_stop_isulad() - local test="test_stream_with_stop_isulad => (${FUNCNAME[@]})" - msg_info "${test} starting..." - -- nohup isula exec $CID cat test_500M > /tmp/iocopy_stream_data_500M & -+ nohup isula exec $CID cat test_500M > /home/iocopy_stream_data_500M & - pid=$! - sleep 2 - kill -19 $(cat /var/run/isulad.pid) -@@ -218,8 +218,8 @@ function test_stream_with_stop_isulad() - - wait $pid - -- ls -l /tmp/iocopy_stream_data_500M -- total_size=$(stat -c"%s" /tmp/iocopy_stream_data_500M) -+ ls -l /home/iocopy_stream_data_500M -+ total_size=$(stat -c"%s" /home/iocopy_stream_data_500M) - [[ $total_size -ne 524288000 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - stream iocopy loss data" && ((ret++)) - - check_last_status -@@ -235,7 +235,7 @@ function test_stream_with_kill_isulad() - local test="test_stream_with_kill_isulad => (${FUNCNAME[@]})" - msg_info "${test} starting..." - -- nohup isula exec $CID cat test_500M > /tmp/iocopy_stream_data_500M & -+ nohup isula exec $CID cat test_500M > /home/iocopy_stream_data_500M & - sleep 3 - isulad_pid=$(cat /var/run/isulad.pid) - kill -9 $isulad_pid -@@ -259,7 +259,7 @@ function tear_down() - isula rm -f $CID - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to rm container: $CID" && ((ret++)) - -- rm -rf //tmp/iocopy_stream_data_* -+ rm -rf //home/iocopy_stream_data_* - - stop_isulad_without_valgrind - -@@ -280,10 +280,10 @@ function test_memory_leak_with_bigdata_stream() - isula exec -it $CID dd if=/dev/zero of=test_100M bs=1M count=100 - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to create bigdata" && ((ret++)) - -- isula exec -it $CID cat test_100M > /tmp/iocopy_stream_data_100M -+ isula exec -it $CID cat test_100M > /home/iocopy_stream_data_100M - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to cat bigdata from container" && ((ret++)) - -- rm -rf /tmp/iocopy_stream_data_100M -+ rm -rf /home/iocopy_stream_data_100M - - isula rm -f $CID - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - failed to rm container" && ((ret++)) --- -2.25.1 - diff --git a/0079-added-default-completion.patch b/0079-added-default-completion.patch deleted file mode 100644 index 237432a..0000000 --- a/0079-added-default-completion.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 68147c64b7dc1f9ef149781e4c10d37b0b2c59f5 Mon Sep 17 00:00:00 2001 -From: yinxiujiang -Date: Wed, 21 Apr 2021 09:33:05 +0800 -Subject: [PATCH 079/104] added default completion - ---- - src/contrib/completion/isula | 9 ++++++++- - 1 file changed, 8 insertions(+), 1 deletion(-) - -diff --git a/src/contrib/completion/isula b/src/contrib/completion/isula -index 305c5150..a12d90a5 100644 ---- a/src/contrib/completion/isula -+++ b/src/contrib/completion/isula -@@ -65,6 +65,10 @@ _isula_isula() { - esac - } - -+_isula_default() -+{ -+ COMPREPLY=( $( compgen -d -f -- $cur ) ) -+} - - _isula() { - COMPREPLY=() -@@ -81,9 +85,12 @@ _isula() { - - #The completion of the secondary command will be added later - if [ $cword -lt 2 ] ; then -- declare -F $completions_func >/dev/null && $completions_func -+ completions_func=_isula_${command//-/_} -+ else -+ completions_func=_isula_default - fi - -+ declare -F $completions_func >/dev/null && $completions_func - return 0 - } - --- -2.25.1 - diff --git a/0080-fix-coredump-when-poweroff.patch b/0080-fix-coredump-when-poweroff.patch deleted file mode 100644 index 11ff7dd..0000000 --- a/0080-fix-coredump-when-poweroff.patch +++ /dev/null @@ -1,80 +0,0 @@ -From 6259cabf9ae7560f64cfab86cf32b77d0ca8cd79 Mon Sep 17 00:00:00 2001 -From: WangFengTu -Date: Thu, 22 Apr 2021 17:30:06 +0800 -Subject: [PATCH 080/104] fix coredump when poweroff - -when doing poweroff cpu are downing and we may -got aviable cpus less then sysinfo->ncpus which -we got when system startup. It can cause crash. -now we use const sysinfo->ncpus to check to -avoid crash. - -Signed-off-by: WangFengTu ---- - src/daemon/modules/spec/verify.c | 20 ++++++++++++-------- - 1 file changed, 12 insertions(+), 8 deletions(-) - -diff --git a/src/daemon/modules/spec/verify.c b/src/daemon/modules/spec/verify.c -index 2a73f7c1..57501cde 100644 ---- a/src/daemon/modules/spec/verify.c -+++ b/src/daemon/modules/spec/verify.c -@@ -556,7 +556,7 @@ static bool check_cpu(const char *provided, const char *available) - } - - /* parse unit list */ --int parse_unit_list(const char *val, bool *available_list) -+int parse_unit_list(const char *val, bool *available_list, int cpu_num) - { - int ret = -1; - char *str = NULL; -@@ -576,7 +576,7 @@ int parse_unit_list(const char *val, bool *available_list) - subchr = strchr(tmp, '-'); - if (subchr == NULL) { - int value = 0; -- if (util_safe_int(tmp, &value) || value < 0) { -+ if (util_safe_int(tmp, &value) || value < 0 || value >= cpu_num) { - goto out; - } - available_list[value] = true; -@@ -588,7 +588,7 @@ int parse_unit_list(const char *val, bool *available_list) - if (util_safe_int(tmp, &min) || min < 0) { - goto out; - } -- if (util_safe_int(subchr, &max) || max < 0) { -+ if (util_safe_int(subchr, &max) || max < 0 || max >= cpu_num) { - goto out; - } - for (i = min; i <= max; i++) { -@@ -615,12 +615,15 @@ static bool is_cpuset_list_available(const char *provided, const char *available - bool ret = false; - bool *parsed_provided = NULL; - bool *parsed_available = NULL; -+ sysinfo_t *sysinfo = NULL; - -- cpu_num = get_nprocs(); -- if (cpu_num <= 0) { -- ERROR("failed to get the number of processors configured by the operating system!"); -- goto out; -+ sysinfo = get_sys_info(true); -+ if (sysinfo == NULL) { -+ ERROR("get sysinfo failed"); -+ return false; - } -+ -+ cpu_num = sysinfo->ncpus; - if ((size_t)cpu_num > SIZE_MAX / sizeof(bool)) { - ERROR("invalid cpu num"); - goto out; -@@ -640,7 +643,8 @@ static bool is_cpuset_list_available(const char *provided, const char *available - goto out; - } - -- if (parse_unit_list(provided, parsed_provided) < 0 || parse_unit_list(available, parsed_available) < 0) { -+ if (parse_unit_list(provided, parsed_provided, cpu_num) < 0 || -+ parse_unit_list(available, parsed_available, cpu_num) < 0) { - goto out; - } - for (i = 0; i < cpu_num; i++) { --- -2.25.1 - diff --git a/0081-CI-keep-container-when-build-failed-for-debug.patch b/0081-CI-keep-container-when-build-failed-for-debug.patch deleted file mode 100644 index d1ad625..0000000 --- a/0081-CI-keep-container-when-build-failed-for-debug.patch +++ /dev/null @@ -1,36 +0,0 @@ -From d6cc390f40a2c3eb0c37a1ea13634c4c33c81362 Mon Sep 17 00:00:00 2001 -From: Li Feng -Date: Fri, 23 Apr 2021 09:40:13 +0800 -Subject: [PATCH 081/104] CI: keep container when build failed for debug - -Signed-off-by: Li Feng ---- - CI/build.sh | 12 ++++++------ - 1 file changed, 6 insertions(+), 6 deletions(-) - -diff --git a/CI/build.sh b/CI/build.sh -index 2c535c70..cf7691d9 100755 ---- a/CI/build.sh -+++ b/CI/build.sh -@@ -473,12 +473,12 @@ if [[ -e $CIDIR/${CONTAINER_NAME}.runflag ]]; then - rm -rf /var/lib/isulad/${CONTAINER_NAME}_cptemp - exit 0; - else -- for container in ${containers[@]} -- do -- docker rm -f $container -- rm -rf /var/lib/isulad/$container -- done -- rm -rf /var/lib/isulad/${CONTAINER_NAME}_cptemp -+ #for container in ${containers[@]} -+ #do -+ # docker rm -f $container -+ # rm -rf /var/lib/isulad/$container -+ #done -+ #rm -rf /var/lib/isulad/${CONTAINER_NAME}_cptemp - echo_error "Test failed!" - exit -1; - fi --- -2.25.1 - diff --git a/0082-devmapper-decrease-log-level-of-check-dm-device.patch b/0082-devmapper-decrease-log-level-of-check-dm-device.patch deleted file mode 100644 index e9a3a86..0000000 --- a/0082-devmapper-decrease-log-level-of-check-dm-device.patch +++ /dev/null @@ -1,85 +0,0 @@ -From c1f5f82a2e02597ac2c486caed1bf56b6467ad87 Mon Sep 17 00:00:00 2001 -From: gaohuatao -Date: Fri, 23 Apr 2021 14:47:34 +0800 -Subject: [PATCH 082/104] devmapper: decrease log level of check dm device - -Signed-off-by: gaohuatao ---- - .../storage/layer_store/graphdriver/devmapper/deviceset.c | 6 +++--- - .../layer_store/graphdriver/devmapper/wrapper_devmapper.c | 6 +++--- - 2 files changed, 6 insertions(+), 6 deletions(-) - -diff --git a/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/deviceset.c b/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/deviceset.c -index 3a271c3a..6ed546bc 100644 ---- a/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/deviceset.c -+++ b/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/deviceset.c -@@ -437,7 +437,7 @@ static image_devmapper_device_info *load_metadata(const struct device_set *devse - } - - if (!util_file_exists(metadata_file)) { -- ERROR("No such file:%s, need not to load", metadata_file); -+ WARN("No such file:%s, need not to load", metadata_file); - goto out; - } - -@@ -2405,6 +2405,7 @@ static int do_check_all_devices(struct device_set *devset) - struct stat st; - int nret = 0; - -+ // Equal to "dmsetup ls" . That is to say, devices_len is not zero, because isulad-thinpool exists. - if (dev_get_device_list(&devices_list, &devices_len) != 0) { - ERROR("devicemapper: failed to get device list"); - ret = -1; -@@ -2511,10 +2512,9 @@ static int do_devmapper_init(struct device_set *devset) - goto out; - } - -+ // If checking failed, we just print a log, there is no need to process the error that do not affect isulad starting - if (do_check_all_devices(devset) != 0) { - ERROR("Failed to check all devset devices"); -- ret = -1; -- goto out; - } - - if (do_init_metadate(devset) != 0) { -diff --git a/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/wrapper_devmapper.c b/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/wrapper_devmapper.c -index 38ed5615..07d64318 100644 ---- a/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/wrapper_devmapper.c -+++ b/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/wrapper_devmapper.c -@@ -556,8 +556,6 @@ out: - return ret; - } - --// from devmapper_wrapper.go --// FIXME: how to use dm_task_get_names directly - static char **local_dm_task_get_names(struct dm_task *dmt, size_t *size) - { - struct dm_names *ns, *ns1; -@@ -566,6 +564,7 @@ static char **local_dm_task_get_names(struct dm_task *dmt, size_t *size) - int i = 0; - - if (!(ns = dm_task_get_names(dmt))) { -+ ERROR("Failed to get device names list from dm task"); - return NULL; - } - -@@ -585,6 +584,7 @@ static char **local_dm_task_get_names(struct dm_task *dmt, size_t *size) - - result = malloc(sizeof(char *) * (*size)); - if (!result) { -+ ERROR("Out of memory"); - return NULL; - } - -@@ -624,7 +624,7 @@ int dev_get_device_list(char ***list, size_t *length) - *list = local_dm_task_get_names(dmt, length); - if (*list == NULL) { - *length = 0; -- ERROR("devicemapper: get device list failed"); -+ ERROR("devicemapper: get device list empty"); - ret = -1; - goto cleanup; - } --- -2.25.1 - diff --git a/0083-fix-bugs-when-pulling-image.patch b/0083-fix-bugs-when-pulling-image.patch deleted file mode 100644 index 39c19c0..0000000 --- a/0083-fix-bugs-when-pulling-image.patch +++ /dev/null @@ -1,206 +0,0 @@ -From 3347d4d8de7599f3b186bfcd893aca89d1328563 Mon Sep 17 00:00:00 2001 -From: WangFengTu -Date: Wed, 21 Apr 2021 20:26:09 +0800 -Subject: [PATCH 083/104] fix bugs when pulling image - -1. service in Www-Authenticate may have space, do not split it -2. if url have space, we need to translate it -3. fill diffid if reuse cached layer - -Signed-off-by: WangFengTu ---- - .../modules/image/oci/registry/registry.c | 10 ++++ - .../image/oci/registry/registry_apiv2.c | 24 ++++---- - src/utils/http/http.c | 57 ++++++++++++++++++- - 3 files changed, 80 insertions(+), 11 deletions(-) - -diff --git a/src/daemon/modules/image/oci/registry/registry.c b/src/daemon/modules/image/oci/registry/registry.c -index 1bb91d0f..bd8e8fd0 100644 ---- a/src/daemon/modules/image/oci/registry/registry.c -+++ b/src/daemon/modules/image/oci/registry/registry.c -@@ -389,6 +389,7 @@ static int add_cached_layer(char *blob_digest, char *file, thread_fetch_info *in - cached_layer *cache = NULL; - struct linked_list *node = NULL; - char *src_file = NULL; -+ thread_fetch_info *src_info = NULL; - file_elem *elem = {NULL}; - pull_descriptor *desc = info->desc; - -@@ -430,6 +431,12 @@ static int add_cached_layer(char *blob_digest, char *file, thread_fetch_info *in - goto out; - } - src_file = ((file_elem*)elem)->file; -+ src_info = ((file_elem*)elem)->info; -+ if (src_info == NULL) { -+ ERROR("source info is NULL, this should never happen"); -+ ret = -1; -+ goto out; -+ } - - if (link(src_file, file) != 0) { - ERROR("link %s to %s failed: %s", src_file, file, strerror(errno)); -@@ -438,6 +445,9 @@ static int add_cached_layer(char *blob_digest, char *file, thread_fetch_info *in - } - // As layer have already downloaded, set this flag to let register thread to do register - info->notified = true; -+ if (info->diffid == NULL) { -+ info->diffid = util_strdup_s(src_info->diffid); -+ } - } else { - ERROR("cached layer have result %d", cache->result); - ret = -1; -diff --git a/src/daemon/modules/image/oci/registry/registry_apiv2.c b/src/daemon/modules/image/oci/registry/registry_apiv2.c -index 935aa4d6..b26e42ba 100644 ---- a/src/daemon/modules/image/oci/registry/registry_apiv2.c -+++ b/src/daemon/modules/image/oci/registry/registry_apiv2.c -@@ -162,27 +162,32 @@ static int parse_auth(pull_descriptor *desc, char *auth) - char *origin_tmp_auth = NULL; - char *trimmed_auth = NULL; - int ret = 0; -- char **parts = NULL; -+ char *schema = NULL; -+ char *params = NULL; - - if (auth == NULL) { - return -1; - } - -+ // auth: Bearer realm="https://auth.isula.org/token",service="isula registry" - origin_tmp_auth = util_strdup_s(auth); - util_trim_newline(origin_tmp_auth); - trimmed_auth = util_trim_space(origin_tmp_auth); -- parts = util_string_split_multi(trimmed_auth, ' '); -- if (util_array_len((const char **)parts) < 2) { -- ERROR("Split auth failed, auth: %s", trimmed_auth); -+ params = strchr(trimmed_auth, ' '); -+ if (params == NULL) { -+ ERROR("invalid auth when parse challenges, auth: %s", trimmed_auth); - ret = -1; - goto out; - } -+ // params: realm="https://auth.isula.org/token",service="isula registry" -+ params[0] = 0; -+ params += 1; -+ // schema: Bearer -+ schema = trimmed_auth; - -- // parts[0]: Bearer -- // parts[1]: realm="https://auth.isula.org/token",service="registry.isula.org" -- ret = parse_challenges(desc, parts[0], parts[1]); -+ ret = parse_challenges(desc, schema, params); - if (ret != 0) { -- ERROR("Parse challenges failed, schema: %s, params: %s", parts[0], parts[1]); -+ ERROR("Parse challenges failed, schema: %s, params: %s", schema, params); - ret = -1; - goto out; - } -@@ -190,7 +195,6 @@ static int parse_auth(pull_descriptor *desc, char *auth) - out: - free(origin_tmp_auth); - origin_tmp_auth = NULL; -- util_free_array(parts); - - return ret; - } -@@ -268,7 +272,7 @@ static int parse_ping_header(pull_descriptor *desc, char *http_head) - HTTP/1.1 401 Unauthorized - Content-Type: application/json - Docker-Distribution-Api-Version: registry/2.0 -- Www-Authenticate: Bearer realm="https://auth.isula.org/token",service="registry.isula.org" -+ Www-Authenticate: Bearer realm="https://auth.isula.org/token",service="isula registry" - Date: Mon, 16 Mar 2020 01:16:09 GMT - Content-Length: 87 - Strict-Transport-Security: max-age=31536000 -diff --git a/src/utils/http/http.c b/src/utils/http/http.c -index bf9b8ab2..e502bb83 100644 ---- a/src/utils/http/http.c -+++ b/src/utils/http/http.c -@@ -337,6 +337,53 @@ static struct curl_slist *set_custom_header(CURL *curl_handle, const struct http - return chunk; - } - -+static size_t calc_replaced_url_len(const char *url) -+{ -+ size_t i = 0; -+ size_t size = 0; -+ size_t max = 0; -+ size = strlen(url); -+ -+ for (i = 0; i < size; i++) { -+ if (url[i] != ' ') { -+ max++; -+ continue; -+ } -+ max += 3; /* ' ' to %20 so size should add 3 */ -+ } -+ -+ return max + 1; /* +1 for terminator */ -+} -+ -+static char *replace_url(const char *url) -+{ -+ size_t i = 0; -+ size_t pos = 0; -+ size_t size = 0; -+ size_t max = 0; -+ char *replaced_url = NULL; -+ -+ size = strlen(url); -+ max = calc_replaced_url_len(url); -+ replaced_url = util_common_calloc_s(max); -+ if (replaced_url == NULL) { -+ ERROR("out of memory"); -+ return NULL; -+ } -+ -+ for (i = 0; i < size; i++) { -+ if (url[i] != ' ') { -+ *(replaced_url + pos) = url[i]; -+ pos++; -+ continue; -+ } -+ (void)strcat(replaced_url + pos, "%20"); -+ pos += 3; /* ' ' to %20 so multiply 3 */ -+ } -+ -+ return replaced_url; -+} -+ - int http_request(const char *url, struct http_get_options *options, long *response_code, int recursive_len) - { - #define MAX_REDIRCT_NUMS 32 -@@ -352,6 +399,7 @@ int http_request(const char *url, struct http_get_options *options, long *respon - char *redir_url = NULL; - char *tmp = NULL; - size_t fsize = 0; -+ char *replaced_url = 0; - - if (recursive_len + 1 >= MAX_REDIRCT_NUMS) { - ERROR("reach the max redirect num"); -@@ -364,8 +412,14 @@ int http_request(const char *url, struct http_get_options *options, long *respon - return -1; - } - -+ replaced_url = replace_url(url); -+ if (replaced_url == NULL) { -+ ret = -1; -+ goto out; -+ } -+ - /* set URL to get here */ -- curl_easy_setopt(curl_handle, CURLOPT_URL, url); -+ curl_easy_setopt(curl_handle, CURLOPT_URL, replaced_url); - curl_easy_setopt(curl_handle, CURLOPT_NOSIGNAL, 1L); - /* complete connection within 30 seconds */ - curl_easy_setopt(curl_handle, CURLOPT_CONNECTTIMEOUT, 30L); -@@ -417,6 +471,7 @@ int http_request(const char *url, struct http_get_options *options, long *respon - } - - out: -+ free(replaced_url); - close_file(pagefile); - free_rpath(rpath); - --- -2.25.1 - diff --git a/0084-add-testcase-for-pulling-image.patch b/0084-add-testcase-for-pulling-image.patch deleted file mode 100644 index 7a69289..0000000 --- a/0084-add-testcase-for-pulling-image.patch +++ /dev/null @@ -1,55 +0,0 @@ -From 1fb316f5e3ef84e57c40625d69a6aa900b978b83 Mon Sep 17 00:00:00 2001 -From: WangFengTu -Date: Thu, 22 Apr 2021 10:45:43 +0800 -Subject: [PATCH 084/104] add testcase for pulling image - -Signed-off-by: WangFengTu ---- - CI/test_cases/image_cases/registry.sh | 3 +++ - test/image/oci/registry/data/v1/ping_head | 2 +- - test/image/oci/registry/registry_ut.cc | 4 ++++ - 3 files changed, 8 insertions(+), 1 deletion(-) - -diff --git a/CI/test_cases/image_cases/registry.sh b/CI/test_cases/image_cases/registry.sh -index c0a0db05..332af223 100755 ---- a/CI/test_cases/image_cases/registry.sh -+++ b/CI/test_cases/image_cases/registry.sh -@@ -74,6 +74,9 @@ function isula_pull() - isula run --rm -ti busybox echo hello 2>&1 | grep pulling - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - --pull missing failed" && ((ret++)) - -+ isula pull hub.c.163.com/public/centos:6.7-tools -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - --pull hub.c.163.com/public/centos:6.7-tools failed" && ((ret++)) -+ - isula pull 3laho3y3.mirror.aliyuncs.com/library/busybox - fn_check_eq "$?" "0" "isula pull 3laho3y3.mirror.aliyuncs.com/library/busybox" - -diff --git a/test/image/oci/registry/data/v1/ping_head b/test/image/oci/registry/data/v1/ping_head -index b0a076db..0d6a01c7 100644 ---- a/test/image/oci/registry/data/v1/ping_head -+++ b/test/image/oci/registry/data/v1/ping_head -@@ -5,5 +5,5 @@ Content-Type: text/html; charset=utf-8 - Content-Length: 4 - Connection: close - Docker-Distribution-API-Version: registry/2.0 --WWW-Authenticate: Bearer realm="https://auth.quay.io",service="quay.io" -+WWW-Authenticate: Bearer realm="https://auth.quay.io",service="quay.io registry" - -diff --git a/test/image/oci/registry/registry_ut.cc b/test/image/oci/registry/registry_ut.cc -index 182e28aa..fc944a5f 100644 ---- a/test/image/oci/registry/registry_ut.cc -+++ b/test/image/oci/registry/registry_ut.cc -@@ -143,6 +143,10 @@ int invokeHttpRequestV1(const char *url, struct http_get_options *options, long - if (token_count == 2) { - file = data_path + "token_body2"; - } else { -+ if (strstr(url, "quay.io registry") == NULL) { -+ ERROR("invalid url %s", url); -+ return -1; -+ } - file = data_path + "token_body"; - } - } else if (util_has_prefix(url, "https://quay.io/v2/coreos/etcd/blobs/sha256")) { --- -2.25.1 - diff --git a/0085-check-return-value-to-valid-use-NULL-pointer.patch b/0085-check-return-value-to-valid-use-NULL-pointer.patch deleted file mode 100644 index edc0e61..0000000 --- a/0085-check-return-value-to-valid-use-NULL-pointer.patch +++ /dev/null @@ -1,84 +0,0 @@ -From 64ba80d5f9faec9a0a6400fd5f4e21943271cf03 Mon Sep 17 00:00:00 2001 -From: WangFengTu -Date: Fri, 23 Apr 2021 15:35:13 +0800 -Subject: [PATCH 085/104] check return value to valid use NULL pointer - -Signed-off-by: WangFengTu ---- - src/cmd/isula/isula_host_spec.c | 5 +++++ - .../modules/image/oci/storage/image_store/image_store.c | 8 +++++++- - src/daemon/modules/spec/specs.c | 2 +- - src/utils/http/certificate.c | 4 ++++ - 4 files changed, 17 insertions(+), 2 deletions(-) - -diff --git a/src/cmd/isula/isula_host_spec.c b/src/cmd/isula/isula_host_spec.c -index 1a2ad4ed..85451dd4 100644 ---- a/src/cmd/isula/isula_host_spec.c -+++ b/src/cmd/isula/isula_host_spec.c -@@ -1021,6 +1021,11 @@ static int parse_security_opts(const isula_host_config_t *srcconfig, host_config - - for (i = 0; i < srcconfig->security_len; i++) { - items = util_string_split_n(srcconfig->security[i], '=', 2); -+ if (items == NULL) { -+ COMMAND_ERROR("Invalid --security-opt: %s", srcconfig->security[i]); -+ ret = -1; -+ goto out; -+ } - if (util_array_len((const char **)items) == 1) { - if (strcmp(items[0], "no-new-privileges") != 0) { - ret = -1; -diff --git a/src/daemon/modules/image/oci/storage/image_store/image_store.c b/src/daemon/modules/image/oci/storage/image_store/image_store.c -index 83345ab3..9db158d4 100644 ---- a/src/daemon/modules/image/oci/storage/image_store/image_store.c -+++ b/src/daemon/modules/image/oci/storage/image_store/image_store.c -@@ -2089,6 +2089,12 @@ static int pack_repo_digest(char ***old_repo_digests, const char **image_tags, c - continue; - } - tag_pos = util_tag_pos(ref); -+ if (tag_pos == NULL) { -+ ERROR("invalid ref %s", ref); -+ free(ref); -+ ref = NULL; -+ continue; -+ } - *tag_pos = '\0'; - - nret = asprintf(&tmp_repo_digests, "%s@%s", ref, digest); -@@ -3581,4 +3587,4 @@ out: - } - free(root_dir); - return ret; --} -\ No newline at end of file -+} -diff --git a/src/daemon/modules/spec/specs.c b/src/daemon/modules/spec/specs.c -index d056b005..d8d05ba0 100644 ---- a/src/daemon/modules/spec/specs.c -+++ b/src/daemon/modules/spec/specs.c -@@ -1929,7 +1929,7 @@ static int generate_security_opt(host_config *hc) - - for (i = 0; i < hc->security_opt_len; i++) { - char **items = util_string_split(hc->security_opt[i], '='); -- if (*items == NULL) { -+ if (items == NULL) { - ERROR("Out of memory"); - return -1; - } -diff --git a/src/utils/http/certificate.c b/src/utils/http/certificate.c -index 117bc15c..64f35bdb 100644 ---- a/src/utils/http/certificate.c -+++ b/src/utils/http/certificate.c -@@ -49,6 +49,10 @@ static void check_algo(X509 *cert) - } - const char *sig_algo = OBJ_nid2ln(OBJ_obj2nid(cert->sig_alg->algorithm)); - #endif -+ if (sig_algo == NULL) { -+ ERROR("sig algo is NULL"); -+ return; -+ } - - for (i = 0; i < len; i++) { - if (strcmp(g_weak_algos[i], sig_algo) == 0) { --- -2.25.1 - diff --git a/0086-move-reinstall_thinpool-to-helper.sh.patch b/0086-move-reinstall_thinpool-to-helper.sh.patch deleted file mode 100644 index 945c11d..0000000 --- a/0086-move-reinstall_thinpool-to-helper.sh.patch +++ /dev/null @@ -1,192 +0,0 @@ -From a86e5ede7866a18c681ab95d83cc3ae875a71930 Mon Sep 17 00:00:00 2001 -From: gaohuatao -Date: Mon, 26 Apr 2021 10:09:46 +0800 -Subject: [PATCH 086/104] move reinstall_thinpool to helper.sh - -Signed-off-by: gaohuatao ---- - .../container_cases/graph_root_test.sh | 38 --------- - .../container_cases/storage_opts_dm.sh | 30 ------- - CI/test_cases/helpers.sh | 79 +++++++++++++++++++ - 3 files changed, 79 insertions(+), 68 deletions(-) - -diff --git a/CI/test_cases/container_cases/graph_root_test.sh b/CI/test_cases/container_cases/graph_root_test.sh -index 678d176e..4beb5d9e 100644 ---- a/CI/test_cases/container_cases/graph_root_test.sh -+++ b/CI/test_cases/container_cases/graph_root_test.sh -@@ -22,44 +22,6 @@ - declare -r curr_path=$(dirname $(readlink -f "$0")) - source ../helpers.sh - --function reinstall_thinpool() --{ -- local ret=0 -- -- cat /etc/isulad/daemon.json | grep driver | grep devicemapper -- if [[ $? -ne 0 ]]; then -- return ${ret} -- fi -- -- dev_disk=`pvs | grep isulad | awk '{print$1}'` -- rm -rf /var/lib/isulad/* -- dmsetup remove_all -- lvremove -f isulad/thinpool -- lvremove -f isulad/thinpoolmeta -- vgremove -f isulad -- pvremove -f $dev_disk -- mount | grep $dev_disk | grep /var/lib/isulad -- if [ x"$?" == x"0" ]; then -- umount /var/lib/isulad -- fi -- touch /etc/lvm/profile/isulad-thinpool.profile -- cat > /etc/lvm/profile/isulad-thinpool.profile < /etc/lvm/profile/isulad-thinpool.profile < /etc/lvm/profile/isulad-thinpool.profile < -Date: Mon, 26 Apr 2021 15:06:35 +0800 -Subject: [PATCH 087/104] CI:activate vg isulad - -Signed-off-by: gaohuatao ---- - CI/test_cases/helpers.sh | 8 +++++++- - 1 file changed, 7 insertions(+), 1 deletion(-) - -diff --git a/CI/test_cases/helpers.sh b/CI/test_cases/helpers.sh -index 7f4a286d..c8e7bb8a 100755 ---- a/CI/test_cases/helpers.sh -+++ b/CI/test_cases/helpers.sh -@@ -196,6 +196,10 @@ function do_install_thinpool() - { - local ret=0 - -+ systemctl restart lvm2-lvmetad.service -+ systemctl restart systemd-udevd.service -+ udevadm control --reload-rules && udevadm trigger -+ - dev_disk=`pvs | grep isulad | awk '{print$1}'` - rm -rf /var/lib/isulad/* - dmsetup remove_all -@@ -240,6 +244,8 @@ EOF - lvconvert -y --zero n -c 512K --thinpool isulad/thinpool --poolmetadata isulad/thinpoolmeta - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - lvconvert failed" && ((ret++)) - -+ lvchange --activate ay isulad -+ - lvchange --metadataprofile isulad-thinpool isulad/thinpool - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - lvchange failed" && ((ret++)) - -@@ -251,7 +257,7 @@ EOF - # Delete all containers and stop isulad before executing this func - function reinstall_thinpool() - { -- retry_limit=3 -+ retry_limit=10 - retry_interval=2 - state="fail" - --- -2.25.1 - diff --git a/0088-CI-devicemapper-add-filter.patch b/0088-CI-devicemapper-add-filter.patch deleted file mode 100644 index 723d15d..0000000 --- a/0088-CI-devicemapper-add-filter.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 4e9f8ec1f3229e6992ab2750fac61a062bae64ed Mon Sep 17 00:00:00 2001 -From: gaohuatao -Date: Tue, 27 Apr 2021 16:31:08 +0800 -Subject: [PATCH 088/104] CI devicemapper add filter - -Signed-off-by: gaohuatao ---- - CI/test_cases/helpers.sh | 7 ++++--- - 1 file changed, 4 insertions(+), 3 deletions(-) - -diff --git a/CI/test_cases/helpers.sh b/CI/test_cases/helpers.sh -index c8e7bb8a..d40e61d9 100755 ---- a/CI/test_cases/helpers.sh -+++ b/CI/test_cases/helpers.sh -@@ -196,9 +196,10 @@ function do_install_thinpool() - { - local ret=0 - -- systemctl restart lvm2-lvmetad.service -- systemctl restart systemd-udevd.service -- udevadm control --reload-rules && udevadm trigger -+ cat /etc/isulad/daemon.json | grep driver | grep devicemapper -+ if [[ $? -ne 0 ]]; then -+ return ${ret} -+ fi - - dev_disk=`pvs | grep isulad | awk '{print$1}'` - rm -rf /var/lib/isulad/* --- -2.25.1 - diff --git a/0089-syslog-tag-support-dynamic-tag-values.patch b/0089-syslog-tag-support-dynamic-tag-values.patch deleted file mode 100644 index 101e6e1..0000000 --- a/0089-syslog-tag-support-dynamic-tag-values.patch +++ /dev/null @@ -1,555 +0,0 @@ -From 8048944dcc7a23be2a449dc597abe8f82c02fa05 Mon Sep 17 00:00:00 2001 -From: haozi007 -Date: Thu, 21 Jan 2021 11:12:49 +0800 -Subject: [PATCH 089/104] syslog tag support dynamic tag values - -1. {{.ID}} : first 12 character of the container id -2. {{.FullID}} : full container id -3. {{.Name}} : container name -4. {{.ImageID}} : first 12 character of container's image id -5. {{.ImageFullID}} : container's image id -6. {{.ImageName}} : container's image name -7. {{.DaemonName}} : name of isulad program 'iSulad' - -Signed-off-by: haozi007 ---- - src/cmd/options/opt_log.c | 68 +++++ - src/cmd/options/opt_log.h | 13 + - .../executor/container_cb/execution_create.c | 247 +++++++++++++++--- - .../graphdriver/devmapper/deviceset.c | 2 +- - 4 files changed, 289 insertions(+), 41 deletions(-) - -diff --git a/src/cmd/options/opt_log.c b/src/cmd/options/opt_log.c -index f6c18b23..c11792f3 100644 ---- a/src/cmd/options/opt_log.c -+++ b/src/cmd/options/opt_log.c -@@ -25,6 +25,7 @@ - #include "utils_array.h" - #include "utils_convert.h" - #include "utils_string.h" -+#include "buffer.h" - - #define DRIVER_MAX 2 - -@@ -160,6 +161,7 @@ bool parse_container_log_opt(const char *key, const char *val, json_map_string_s - } - } - nret = append_json_map_string_string(opts, support_parsers[i].real_key, parsed_val); -+ free(parsed_val); - return true; - } - } -@@ -274,3 +276,69 @@ bool check_opt_container_log_driver(const char *driver) - return false; - } - -+int parse_container_log_opt_syslog_tag(const char *tag, tag_parser op, map_t *tag_maps, char **parsed_tag) -+{ -+ Buffer *bf = NULL; -+ char *work_tag = NULL; -+ char *prefix = NULL; -+ char *curr = NULL; -+ int ret = 0; -+ -+ if (tag == NULL || op == NULL || parsed_tag == NULL) { -+ ERROR("Invalid arguments"); -+ return -1; -+ } -+ bf = buffer_alloc(strlen(tag)); -+ if (bf == NULL) { -+ ERROR("Out of memory"); -+ return -1; -+ } -+ -+ work_tag = util_strdup_s(tag); -+ prefix = work_tag; -+ while (prefix != NULL && strlen(prefix) != 0) { -+ char *parsed_item = NULL; -+ curr = strstr(prefix, "{{"); -+ if (curr == NULL) { -+ ret = buffer_append(bf, prefix, strlen(prefix)); -+ break; -+ } -+ *curr = '\0'; -+ ret = buffer_append(bf, prefix, strlen(prefix)); -+ if (ret != 0) { -+ ERROR("OUt of memory"); -+ goto out; -+ } -+ *curr = '{'; -+ -+ curr = curr + 2; -+ prefix = strstr(curr, "}}"); -+ if (prefix == NULL) { -+ ERROR("invalid tag item: %s", tag); -+ ret = -1; -+ goto out; -+ } -+ // get item in '{{' and '}}', to parse to expected string -+ *prefix = '\0'; -+ if (op(curr, tag_maps, &parsed_item) != 0) { -+ ERROR("invalid tag item: %s", tag); -+ ret = -1; -+ goto out; -+ } -+ DEBUG("parse syslog tag item: %s --> %s", curr, parsed_item); -+ *prefix = '}'; -+ ret = buffer_append(bf, parsed_item, strlen(parsed_item)); -+ free(parsed_item); -+ if (ret != 0) { -+ ERROR("OUt of memory"); -+ goto out; -+ } -+ prefix = prefix + 2; -+ } -+ -+ *parsed_tag = util_strdup_s(bf->contents); -+out: -+ buffer_free(bf); -+ free(work_tag); -+ return ret; -+} -\ No newline at end of file -diff --git a/src/cmd/options/opt_log.h b/src/cmd/options/opt_log.h -index f9daa02d..d87851b0 100644 ---- a/src/cmd/options/opt_log.h -+++ b/src/cmd/options/opt_log.h -@@ -17,11 +17,22 @@ - - #include - #include -+#include "map.h" - - #ifdef __cplusplus - extern "C" { - #endif - -+struct logger_info { -+ char *id; -+ char *name; -+ char *img_id; -+ char *img_name; -+ char *daemon_name; -+}; -+ -+typedef int (*tag_parser)(const char *, map_t *, char **); -+ - bool check_raw_log_opt(const char *key); - - bool check_opt_container_log_opt(const char *driver, const char *opt); -@@ -32,6 +43,8 @@ bool parse_container_log_opt(const char *key, const char *val, json_map_string_s - - bool parse_container_log_opts(json_map_string_string **opts); - -+int parse_container_log_opt_syslog_tag(const char *tag, tag_parser op, map_t *tag_maps, char **parsed_tag); -+ - #ifdef __cplusplus - } - #endif -diff --git a/src/daemon/executor/container_cb/execution_create.c b/src/daemon/executor/container_cb/execution_create.c -index 9136348e..71d29b2c 100644 ---- a/src/daemon/executor/container_cb/execution_create.c -+++ b/src/daemon/executor/container_cb/execution_create.c -@@ -257,8 +257,7 @@ static int merge_container_log_config_opts(const char *daemon_driver, const json - return 0; - } - --static int do_set_default_log_path_for_json_file(const char *id, const char *root, bool file_found, -- container_config *spec) -+static int do_set_default_log_path_for_json_file(const char *id, const char *root, container_config *spec) - { - int nret = 0; - char default_path[PATH_MAX] = { 0 }; -@@ -277,10 +276,150 @@ static int do_set_default_log_path_for_json_file(const char *id, const char *roo - return 0; - } - --static int do_check_container_log_config_opts(const char *id, const char *root, container_config *spec) -+int syslog_tag_parser(const char *tag, map_t *tag_maps, char **parsed) -+{ -+ char *tmp_tag = NULL; -+ int ret = 0; -+ char *target = NULL; -+ -+ if (tag == NULL) { -+ ERROR("empty tag is invalid."); -+ return -1; -+ } -+ -+ tmp_tag = util_strdup_s(tag); -+ tmp_tag = util_trim_space(tmp_tag); -+ target = map_search(tag_maps, (void *)tmp_tag); -+ if (target == NULL) { -+ ERROR("Invalid tag: %s", tag); -+ ret = -1; -+ goto out; -+ } -+ -+ *parsed = util_strdup_s(target); -+ -+out: -+ free(tmp_tag); -+ return ret; -+} -+ -+static int do_update_container_log_config_syslog_tag(map_t *tag_maps, const char *driver, size_t idx, -+ json_map_string_string *annotations) -+{ -+ char *parsed_tag = NULL; -+ -+ if (driver == NULL || strcmp(driver, CONTAINER_LOG_CONFIG_SYSLOG_DRIVER) != 0) { -+ return 0; -+ } -+ -+ if (annotations->keys[idx] == NULL || strcmp(annotations->keys[idx], CONTAINER_LOG_CONFIG_KEY_SYSLOG_TAG) != 0) { -+ return 0; -+ } -+ -+ if (parse_container_log_opt_syslog_tag(annotations->values[idx], syslog_tag_parser, tag_maps, &parsed_tag) != 0) { -+ return -1; -+ } -+ DEBUG("new syslog tag: %s", parsed_tag); -+ -+ free(annotations->values[idx]); -+ annotations->values[idx] = parsed_tag; -+ return 0; -+} -+ -+static map_t *make_tag_mappings(const struct logger_info *p_info) -+{ -+#define SHORT_ID_LEN 12 -+ map_t *tag_maps = NULL; -+ char *short_id = NULL; -+ char *short_img_id = NULL; -+ -+ tag_maps = map_new(MAP_STR_STR, MAP_DEFAULT_CMP_FUNC, MAP_DEFAULT_FREE_FUNC); -+ if (tag_maps == NULL) { -+ ERROR("Out of memory"); -+ return NULL; -+ } -+ -+ short_id = util_sub_string(p_info->id, 0, SHORT_ID_LEN); -+ if (short_id == NULL) { -+ goto err_out; -+ } -+ if (!map_replace(tag_maps, (void *)".ID", (void *)short_id)) { -+ goto err_out; -+ } -+ if (!map_replace(tag_maps, (void *)".FullID", (void *)p_info->id)) { -+ goto err_out; -+ } -+ if (!map_replace(tag_maps, (void *)".Name", (void *)p_info->name)) { -+ goto err_out; -+ } -+ -+ if (p_info->img_id != NULL) { -+ short_img_id = util_sub_string(p_info->img_id, 0, SHORT_ID_LEN); -+ if (short_img_id == NULL) { -+ goto err_out; -+ } -+ if (!map_replace(tag_maps, (void *)".ImageID", (void *)short_img_id)) { -+ goto err_out; -+ } -+ if (!map_replace(tag_maps, (void *)".ImageFullID", (void *)p_info->img_id)) { -+ goto err_out; -+ } -+ } else { -+ WARN("Empty image id"); -+ } -+ -+ if (p_info->img_name != NULL) { -+ if (!map_replace(tag_maps, (void *)".ImageName", (void *)p_info->img_name)) { -+ goto err_out; -+ } -+ } else { -+ WARN("Empty image name"); -+ } -+ -+ if (!map_replace(tag_maps, (void *)".DaemonName", (void *)p_info->daemon_name)) { -+ goto err_out; -+ } -+ -+ free(short_img_id); -+ free(short_id); -+ return tag_maps; -+err_out: -+ free(short_img_id); -+ free(short_id); -+ map_free(tag_maps); -+ return NULL; -+} -+ -+static int do_set_default_container_log_opts(bool set_file, bool set_rotate, bool set_size, const char *id, -+ const char *root, container_config *spec) -+{ -+ if (!set_rotate && append_json_map_string_string(spec->annotations, CONTAINER_LOG_CONFIG_KEY_ROTATE, "7") != 0) { -+ return -1; -+ } -+ if (!set_size && append_json_map_string_string(spec->annotations, CONTAINER_LOG_CONFIG_KEY_SIZE, "1MB") != 0) { -+ return -1; -+ } -+ if (set_file) { -+ return 0; -+ } -+ return do_set_default_log_path_for_json_file(id, root, spec); -+} -+ -+static int do_parse_container_log_config_opts(const struct logger_info *p_info, const char *root, -+ container_config *spec) - { - size_t i; -- bool file_found = false; -+ bool set_file = false; -+ bool set_rotate = false; -+ bool set_size = false; -+ map_t *tag_maps = NULL; -+ int ret = 0; -+ -+ tag_maps = make_tag_mappings(p_info); -+ if (tag_maps == NULL) { -+ ERROR("Out of memory"); -+ return -1; -+ } - - // check log opts is support by driver - for (i = 0; i < spec->annotations->len; i++) { -@@ -292,23 +431,40 @@ static int do_check_container_log_config_opts(const char *id, const char *root, - DEBUG("check log opt key: %s for driver: %s", tmp_key, spec->log_driver); - if (!check_opt_container_log_opt(spec->log_driver, tmp_key)) { - isulad_set_error_message("container log driver: %s, unsupport: %s", spec->log_driver, tmp_key); -- return -1; -+ ERROR("container log driver: %s, unsupport: %s", spec->log_driver, tmp_key); -+ ret = -1; -+ goto out; -+ } -+ -+ if (do_update_container_log_config_syslog_tag(tag_maps, spec->log_driver, i, spec->annotations) != 0) { -+ isulad_set_error_message("container syslog tag: unsupport: %s", spec->annotations->values[i]); -+ ERROR("container syslog tag: unsupport: %s", spec->annotations->values[i]); -+ ret = -1; -+ goto out; - } - - if (strcmp(CONTAINER_LOG_CONFIG_KEY_FILE, tmp_key) == 0) { -- file_found = true; -+ set_file = true; -+ } -+ if (strcmp(CONTAINER_LOG_CONFIG_KEY_ROTATE, tmp_key) == 0) { -+ set_rotate = true; -+ } -+ if (strcmp(CONTAINER_LOG_CONFIG_KEY_SIZE, tmp_key) == 0) { -+ set_size = true; - } - } - -- if (!file_found && strcmp(spec->log_driver, CONTAINER_LOG_CONFIG_JSON_FILE_DRIVER) == 0) { -- return do_set_default_log_path_for_json_file(id, root, file_found, spec); -+ if (strcmp(spec->log_driver, CONTAINER_LOG_CONFIG_JSON_FILE_DRIVER) == 0) { -+ ret = do_set_default_container_log_opts(set_file, set_rotate, set_size, p_info->id, root, spec); - } - -- return 0; -+out: -+ map_free(tag_maps); -+ return ret; - } - --static int set_container_log_config_to_container_spec(const char *id, const char *runtime_root, -- container_config *container_spec) -+static int update_container_log_config_to_container_spec(const struct logger_info *p_info, const char *runtime_root, -+ container_config *spec) - { - int ret = 0; - isulad_daemon_configs_container_log *daemon_container_opts = NULL; -@@ -317,30 +473,42 @@ static int set_container_log_config_to_container_spec(const char *id, const char - return -1; - } - -- set_container_log_config_driver(daemon_container_opts, container_spec); -+ set_container_log_config_driver(daemon_container_opts, spec); - -- if (container_spec->annotations == NULL) { -- container_spec->annotations = util_common_calloc_s(sizeof(json_map_string_string)); -+ if (spec->annotations == NULL) { -+ spec->annotations = util_common_calloc_s(sizeof(json_map_string_string)); - } -- if (container_spec->annotations == NULL) { -+ if (spec->annotations == NULL) { - ERROR("Out of memory"); - ret = -1; - goto out; - } - -- ret = merge_container_log_config_opts(daemon_container_opts->driver, daemon_container_opts->opts, container_spec); -+ ret = merge_container_log_config_opts(daemon_container_opts->driver, daemon_container_opts->opts, spec); - if (ret != 0) { - goto out; - } -- ret = do_check_container_log_config_opts(id, runtime_root, container_spec); -+ ret = do_parse_container_log_config_opts(p_info, runtime_root, spec); - - out: - free_isulad_daemon_configs_container_log(daemon_container_opts); - return ret; - } - --static container_config *get_container_spec(const char *id, const char *runtime_root, -- const container_create_request *request) -+static int do_update_container_log_configs(char *id, char *name, char *image_name, char *image_id, -+ const char *runtime_root, container_config *spec) -+{ -+ struct logger_info l_info = { 0 }; -+ l_info.id = id; -+ l_info.name = name; -+ l_info.img_name = image_name; -+ l_info.img_id = image_id != NULL ? image_id : image_name; -+ l_info.daemon_name = "iSulad"; -+ -+ return update_container_log_config_to_container_spec(&l_info, runtime_root, spec); -+} -+ -+static container_config *get_container_spec(const container_create_request *request) - { - container_config *container_spec = NULL; - -@@ -349,15 +517,7 @@ static container_config *get_container_spec(const char *id, const char *runtime_ - return NULL; - } - -- if (set_container_log_config_to_container_spec(id, runtime_root, container_spec)) { -- goto error_out; -- } -- - return container_spec; -- --error_out: -- free_container_config(container_spec); -- return NULL; - } - - static oci_runtime_spec *generate_oci_config(host_config *host_spec, const char *real_rootfs, -@@ -542,14 +702,13 @@ out: - return ret; - } - --static int register_new_container(const char *id, const char *runtime, host_config *host_spec, -+static int register_new_container(const char *id, const char *image_id, const char *runtime, host_config *host_spec, - container_config_v2_common_config *v2_spec) - { - int ret = -1; - bool registered = false; - char *runtime_root = NULL; - char *runtime_stat = NULL; -- char *image_id = NULL; - container_t *cont = NULL; - - runtime_root = conf_get_routine_rootdir(runtime); -@@ -562,11 +721,6 @@ static int register_new_container(const char *id, const char *runtime, host_conf - goto out; - } - -- if (strcmp(v2_spec->image_type, IMAGE_TYPE_OCI) == 0) { -- if (conf_get_image_id(v2_spec->image, &image_id) != 0) { -- goto out; -- } -- } - cont = container_new(runtime, runtime_root, runtime_stat, image_id, host_spec, v2_spec, NULL); - if (cont == NULL) { - ERROR("Failed to create container '%s'", id); -@@ -589,7 +743,6 @@ static int register_new_container(const char *id, const char *runtime, host_conf - out: - free(runtime_root); - free(runtime_stat); -- free(image_id); - if (ret != 0) { - /* fail, do not use the input v2 spec and host spec, the memeory will be free by caller*/ - if (cont != NULL) { -@@ -911,8 +1064,8 @@ out: - return ret; - } - --static int get_basic_spec(const container_create_request *request, const char *id, const char *runtime_root, -- host_config **host_spec, container_config **container_spec) -+static int get_basic_spec(const container_create_request *request, host_config **host_spec, -+ container_config **container_spec) - { - *host_spec = get_host_spec(request); - if (*host_spec == NULL) { -@@ -923,7 +1076,7 @@ static int get_basic_spec(const container_create_request *request, const char *i - return -1; - } - -- *container_spec = get_container_spec(id, runtime_root, request); -+ *container_spec = get_container_spec(request); - if (*container_spec == NULL) { - return -1; - } -@@ -1309,6 +1462,7 @@ int container_create_cb(const container_create_request *request, container_creat - char *real_rootfs = NULL; - char *image_type = NULL; - char *runtime_root = NULL; -+ char *image_id = NULL; - char *oci_config_data = NULL; - char *runtime = NULL; - char *name = NULL; -@@ -1340,7 +1494,7 @@ int container_create_cb(const container_create_request *request, container_creat - goto clean_nameindex; - } - -- if (get_basic_spec(request, id, runtime_root, &host_spec, &container_spec) != 0) { -+ if (get_basic_spec(request, &host_spec, &container_spec) != 0) { - cc = ISULAD_ERR_INPUT; - goto clean_container_root_dir; - } -@@ -1390,6 +1544,18 @@ int container_create_cb(const container_create_request *request, container_creat - goto clean_rootfs; - } - -+ if (strcmp(v2_spec->image_type, IMAGE_TYPE_OCI) == 0) { -+ if (conf_get_image_id(v2_spec->image, &image_id) != 0) { -+ cc = ISULAD_ERR_EXEC; -+ goto clean_rootfs; -+ } -+ } -+ -+ if (do_update_container_log_configs(id, name, image_name, image_id, runtime_root, v2_spec->config)) { -+ cc = ISULAD_ERR_EXEC; -+ goto clean_rootfs; -+ } -+ - if (verify_container_config(v2_spec->config) != 0) { - cc = ISULAD_ERR_EXEC; - goto clean_rootfs; -@@ -1453,7 +1619,7 @@ int container_create_cb(const container_create_request *request, container_creat - goto umount_channel; - } - -- if (register_new_container(id, runtime, host_spec, v2_spec)) { -+ if (register_new_container(id, image_id, runtime, host_spec, v2_spec)) { - ERROR("Failed to register new container"); - cc = ISULAD_ERR_EXEC; - goto umount_channel; -@@ -1490,6 +1656,7 @@ pack_response: - free(image_type); - free(image_name); - free(name); -+ free(image_id); - free(id); - free_oci_runtime_spec(oci_spec); - free_host_config(host_spec); -diff --git a/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/deviceset.c b/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/deviceset.c -index 6ed546bc..2b54634d 100644 ---- a/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/deviceset.c -+++ b/src/daemon/modules/image/oci/storage/layer_store/graphdriver/devmapper/deviceset.c -@@ -2405,7 +2405,7 @@ static int do_check_all_devices(struct device_set *devset) - struct stat st; - int nret = 0; - -- // Equal to "dmsetup ls" . That is to say, devices_len is not zero, because isulad-thinpool exists. -+ // Equal to "dmsetup ls" . That is to say, devices_len is not zero, because isulad-thinpool exists. - if (dev_get_device_list(&devices_list, &devices_len) != 0) { - ERROR("devicemapper: failed to get device list"); - ret = -1; --- -2.25.1 - diff --git a/0090-add-testcase-for-contailer-log-opts.patch b/0090-add-testcase-for-contailer-log-opts.patch deleted file mode 100644 index 725fd44..0000000 --- a/0090-add-testcase-for-contailer-log-opts.patch +++ /dev/null @@ -1,218 +0,0 @@ -From 62b09ccf7a3a20694d906020fe6e02c61c75bcac Mon Sep 17 00:00:00 2001 -From: haozi007 -Date: Wed, 28 Apr 2021 19:25:42 +0800 -Subject: [PATCH 090/104] add testcase for contailer log opts - -Signed-off-by: haozi007 ---- - CI/test_cases/container_cases/log_test.sh | 133 ++++++++++++++++-- - .../container_cases/test_data/daemon.json | 1 + - 2 files changed, 125 insertions(+), 9 deletions(-) - -diff --git a/CI/test_cases/container_cases/log_test.sh b/CI/test_cases/container_cases/log_test.sh -index 08abf212..119a005a 100755 ---- a/CI/test_cases/container_cases/log_test.sh -+++ b/CI/test_cases/container_cases/log_test.sh -@@ -12,6 +12,7 @@ function do_pre() - { - mv /etc/isulad/daemon.json /etc/isulad/daemon.bak - cp ${data_path}/daemon.json /etc/isulad/daemon.json -+ TC_RET_T=0 - } - - function do_post() -@@ -23,8 +24,9 @@ function do_post() - - function do_check_item() - { -- cat ${ISULAD_ROOT_PATH}/engine/lcr/$1/config | grep console | grep "$2" -+ cat ${ISULAD_ROOT_PATH}/engines/lcr/$1/config | grep console | grep "$2" - if [ $? -ne 0 ]; then -+ cat ${ISULAD_ROOT_PATH}/engines/lcr/$1/config | grep console - msg_err "expect $2" - TC_RET_T=$(($TC_RET_T+1)) - fi -@@ -61,6 +63,112 @@ function do_test_syslog_helper() - return $TC_RET_T - } - -+function do_test_syslog_tag() -+{ -+ local cid -+ msg_info "this is $0 do_test" -+ -+ crictl pull busybox -+ if [ $? -ne 0 ]; then -+ msg_err "Failed to pull busybox image" -+ TC_RET_T=$(($TC_RET_T+1)) -+ fi -+ -+ isula run -ti --log-opt="syslog-tag={{.xxx}}" busybox date -+ if [ $? -eq 0 ]; then -+ msg_err "run container success with invalid syslog-tag" -+ TC_RET_T=$(($TC_RET_T+1)) -+ fi -+ -+ isula run -ti --log-opt="syslog-tag={{" busybox date -+ if [ $? -eq 0 ]; then -+ msg_err "run container success with invalid syslog-tag" -+ TC_RET_T=$(($TC_RET_T+1)) -+ fi -+ -+ isula run -ti --log-opt="syslog-tag=aab{{cd" busybox date -+ if [ $? -eq 0 ]; then -+ msg_err "run container success with invalid syslog-tag" -+ TC_RET_T=$(($TC_RET_T+1)) -+ fi -+ -+ cid=$(isula run -tid --log-opt="syslog-tag={{.DaemonName}}" busybox sh) -+ if [ $? -ne 0 ]; then -+ msg_err "Failed to run container" -+ TC_RET_T=$(($TC_RET_T+1)) -+ fi -+ do_check_item ${cid} "logdriver = syslog" -+ do_check_item ${cid} "syslog_tag = iSulad" -+ -+ cid=`isula run -tid --log-opt="syslog-tag={{.ID}}" busybox sh` -+ if [ $? -ne 0 ]; then -+ msg_err "Failed to run container" -+ TC_RET_T=$(($TC_RET_T+1)) -+ fi -+ do_check_item ${cid} "logdriver = syslog" -+ do_check_item ${cid} "syslog_tag = ${cid: 0: 12}" -+ -+ cid=`isula run -tid --name=haozi --log-opt="syslog-tag={{.ID}}xx{{.Name}}" busybox sh` -+ if [ $? -ne 0 ]; then -+ msg_err "Failed to run container" -+ TC_RET_T=$(($TC_RET_T+1)) -+ fi -+ do_check_item ${cid} "logdriver = syslog" -+ do_check_item ${cid} "syslog_tag = ${cid: 0: 12}xxhaozi" -+ isula rm -f haozi -+ -+ cid=`isula run -tid --log-opt="syslog-tag={{.FullID}}" busybox sh` -+ if [ $? -ne 0 ]; then -+ msg_err "Failed to run container" -+ TC_RET_T=$(($TC_RET_T+1)) -+ fi -+ do_check_item ${cid} "logdriver = syslog" -+ do_check_item ${cid} "syslog_tag = ${cid}" -+ -+ cid=`isula run -tid --name haozi --log-opt="syslog-tag={{.Name}}" busybox sh` -+ if [ $? -ne 0 ]; then -+ msg_err "Failed to run container" -+ TC_RET_T=$(($TC_RET_T+1)) -+ fi -+ do_check_item ${cid} "logdriver = syslog" -+ do_check_item ${cid} "syslog_tag = haozi" -+ isula rm -f haozi -+ -+ cid=`isula run -tid --name haozi --log-opt="syslog-tag=xx{{.Name}}yy" busybox sh` -+ if [ $? -ne 0 ]; then -+ msg_err "Failed to run container" -+ TC_RET_T=$(($TC_RET_T+1)) -+ fi -+ do_check_item ${cid} "logdriver = syslog" -+ do_check_item ${cid} "syslog_tag = xxhaoziyy" -+ isula rm -f haozi -+ -+ cid=`isula run -tid --log-opt="syslog-tag={{.ImageName}}" busybox sh` -+ if [ $? -ne 0 ]; then -+ msg_err "Failed to run container" -+ TC_RET_T=$(($TC_RET_T+1)) -+ fi -+ do_check_item ${cid} "logdriver = syslog" -+ do_check_item ${cid} "syslog_tag = busybox" -+ -+ cid=`isula run -tid --log-opt="syslog-tag={{.ImageID}}" busybox sh` -+ if [ $? -ne 0 ]; then -+ msg_err "Failed to run container" -+ TC_RET_T=$(($TC_RET_T+1)) -+ fi -+ img_id=`isula inspect -f '{{.image.id}}' busybox` -+ do_check_item ${cid} "logdriver = syslog" -+ do_check_item ${cid} "syslog_tag = sha256:${img_id:0:5}" -+ -+ isula rm -f `isula ps -aq` -+ if [ $? -ne 0 ]; then -+ msg_err "Failed to remove container" -+ TC_RET_T=$(($TC_RET_T+1)) -+ fi -+ -+ return $TC_RET_T -+} -+ - function do_test_json_file_helper() - { - msg_info "this is $0 do_test" -@@ -96,6 +204,8 @@ function do_test_json_file_helper() - function do_test_container_log() - { - msg_info "this is $0 do_test" -+ cat /etc/isulad/daemon.json -+ ps aux | grep -i isulad - - cid=`isula run -tid --log-driver=json-file busybox sh` - if [ $? -ne 0 ]; then -@@ -129,7 +239,7 @@ function do_test_container_log() - msg_err "Failed to run container" - TC_RET_T=$(($TC_RET_T+1)) - fi -- cat ${ISULAD_ROOT_PATH}/engine/lcr/${cid}/config | grep console | grep "logfile =" -+ cat ${ISULAD_ROOT_PATH}/engines/lcr/${cid}/config | grep console | grep "logfile =" - if [ $? -eq 0 ]; then - msg_err "Failed to disable log" - TC_RET_T=$(($TC_RET_T+1)) -@@ -139,14 +249,20 @@ function do_test_container_log() - return $TC_RET_T - } - -+function do_test_container_syslog() { -+ do_test_syslog_helper "xxxx" -+ -+ do_test_syslog_tag -+} -+ - function do_test() { - check_valgrind_log -- start_isulad_with_valgrind --log-opts="syslog-tag=xxxx" -+ start_isulad_with_valgrind --container-log-opts="syslog-tag=xxxx" - -- do_test_syslog_helper "xxxx" -+ do_test_container_syslog - - check_valgrind_log -- start_isulad_with_valgrind --log-driver=json-file --log-opts="max-size=10MB" --log-opts="max-file=3" -+ start_isulad_with_valgrind --container-log-driver=json-file --container-log-opts="max-size=10MB" --container-log-opts="max-file=3" - do_test_json_file_helper "3" "10MB" - - check_valgrind_log -@@ -157,10 +273,9 @@ function do_test() { - ret=0 - - do_pre --if [ $? -ne 0 ];then -- let "ret=$ret + 1" --fi -+ -+do_test - - do_post - --show_result $ret "cni base test" -+show_result $TC_RET_T "container log test" -diff --git a/CI/test_cases/container_cases/test_data/daemon.json b/CI/test_cases/container_cases/test_data/daemon.json -index f8914ed4..aa88c9da 100644 ---- a/CI/test_cases/container_cases/test_data/daemon.json -+++ b/CI/test_cases/container_cases/test_data/daemon.json -@@ -23,6 +23,7 @@ - "overlay2.override_kernel_check=true" - ], - "registry-mirrors": [ -+ "docker.io" - ], - "insecure-registries": [ - ], --- -2.25.1 - diff --git a/0091-CI-run-the-containers-one-by-one.patch b/0091-CI-run-the-containers-one-by-one.patch deleted file mode 100644 index c1d3cad..0000000 --- a/0091-CI-run-the-containers-one-by-one.patch +++ /dev/null @@ -1,40 +0,0 @@ -From 8003284bbf9d679e2d3f52cb55cdd4ee70d22977 Mon Sep 17 00:00:00 2001 -From: lifeng68 -Date: Thu, 29 Apr 2021 12:38:44 +0800 -Subject: [PATCH 091/104] CI: run the containers one by one - -Signed-off-by: lifeng68 ---- - CI/build.sh | 9 ++++----- - 1 file changed, 4 insertions(+), 5 deletions(-) - -diff --git a/CI/build.sh b/CI/build.sh -index cf7691d9..5ebe8ea3 100755 ---- a/CI/build.sh -+++ b/CI/build.sh -@@ -415,18 +415,17 @@ rm -rf ${cptemp} - # wait for copy files become effective - sleep 3 - -+docker exec ${copycontainer} tail -f --retry /tmp/runflag/${CONTAINER_NAME}.scripts.log 2>/dev/null & -+tailpid=$! -+ - for container in ${containers[@]} - do - { - exec_script ${container} ${testcase_script} -- }& -- pids="$! $pids" -+ } - done - --docker exec ${copycontainer} tail -f --retry /tmp/runflag/${CONTAINER_NAME}.scripts.log 2>/dev/null & --tailpid=$! - trap "kill -9 $tailpid; exit 0" 15 2 --wait $pids - - pid_dev="NULL" - if [[ "x$disk" != "xNULL" ]] && [[ "x${enable_gcov}" == "xON" ]]; then --- -2.25.1 - diff --git a/0092-completion-isula-images.patch b/0092-completion-isula-images.patch deleted file mode 100644 index 2768d65..0000000 --- a/0092-completion-isula-images.patch +++ /dev/null @@ -1,102 +0,0 @@ -From 03f7d19ef75af75cdc8cb15cb022e5fe367c4760 Mon Sep 17 00:00:00 2001 -From: yin-xiujiang -Date: Thu, 6 May 2021 14:32:32 +0800 -Subject: [PATCH 092/104] completion isula images - ---- - src/contrib/completion/isula | 64 ++++++++++++++++++++++++++---------- - 1 file changed, 47 insertions(+), 17 deletions(-) - -diff --git a/src/contrib/completion/isula b/src/contrib/completion/isula -index a12d90a5..a2adc083 100644 ---- a/src/contrib/completion/isula -+++ b/src/contrib/completion/isula -@@ -1,5 +1,7 @@ - #!/usr/bin/env bash --_isula_isula() { -+ -+_isula_isula() -+{ - local isula_management_commands=( - volume - ) -@@ -65,32 +67,60 @@ _isula_isula() { - esac - } - --_isula_default() -+_isula_default() - { - COMPREPLY=( $( compgen -d -f -- $cur ) ) - } - --_isula() { -+_isula_isula_list_images_with_tag() -+{ -+ local images_with_tag=() -+ case "$cur" in -+ *:*) -+ front=${cur%:*} -+ #先去掉第一行,然后过滤指定镜像名 -+ images_with_tag=($(isula images |awk 'NR>1'|grep -w "$front"| awk '{print $2}')) -+ cur=${cur##*:} -+ ;; -+ *) -+ images_with_tag=($(isula images |awk 'NR>1{printf "%s:%s\n",$1,$2}')) -+ ;; -+ esac -+ -+ COMPREPLY=( $( compgen -W "${images_with_tag[*]}" -- "$cur" ) ) -+} -+ -+_isula_isula_rmi() -+{ -+ _isula_isula_list_images_with_tag -+} -+ -+_isula_isula_tag() -+{ -+ _isula_isula_list_images_with_tag -+} -+ -+_isula_isula_images() -+{ -+ _isula_isula_list_images_with_tag -+} -+ -+_isula() -+{ - COMPREPLY=() - -- #An array variable consisting of the individual words in the current command line -- local words=(${COMP_WORDS[*]}) -- #An index into ${word} of the word containing the current cursor position -- local cword=$COMP_CWORD -- local cur="${words[$cword]}" -- local prev="${words[$cword-1]}" -+ local cur prev words cword -+ _get_comp_words_by_ref -n : cur prev words cword - local command='isula' -- -+ if [ $cword -gt 1 ] ; then -+ command="isula_${words[1]}" -+ fi - local completions_func=_isula_${command//-/_} -- -- #The completion of the secondary command will be added later -- if [ $cword -lt 2 ] ; then -- completions_func=_isula_${command//-/_} -+ if declare -F $completions_func >/dev/null; then -+ $completions_func - else -- completions_func=_isula_default -+ _isula_default - fi -- -- declare -F $completions_func >/dev/null && $completions_func - return 0 - } - --- -2.25.1 - diff --git a/0093-fix-memory-leak-when-pulling-image.patch b/0093-fix-memory-leak-when-pulling-image.patch deleted file mode 100644 index 920ef5f..0000000 --- a/0093-fix-memory-leak-when-pulling-image.patch +++ /dev/null @@ -1,110 +0,0 @@ -From 90b3ae01ff05140cb00baeaf63491bba19ceade6 Mon Sep 17 00:00:00 2001 -From: WangFengTu -Date: Thu, 6 May 2021 16:22:17 +0800 -Subject: [PATCH 093/104] fix memory leak when pulling image - -Signed-off-by: WangFengTu ---- - .../modules/image/oci/registry/http_request.c | 5 +++++ - src/daemon/modules/image/oci/registry/registry.c | 14 ++++++++++++++ - src/daemon/modules/image/oci/registry_type.c | 3 +++ - src/daemon/modules/image/oci/registry_type.h | 2 ++ - 4 files changed, 24 insertions(+) - -diff --git a/src/daemon/modules/image/oci/registry/http_request.c b/src/daemon/modules/image/oci/registry/http_request.c -index 2127795e..e86f37f0 100644 ---- a/src/daemon/modules/image/oci/registry/http_request.c -+++ b/src/daemon/modules/image/oci/registry/http_request.c -@@ -23,6 +23,7 @@ - #include - #include - #include -+#include - - #include "isula_libutils/log.h" - #include "buffer.h" -@@ -371,8 +372,10 @@ static int setup_auth_challenges(pull_descriptor *desc, char ***custom_headers) - goto out; - } - } else if (!strcasecmp(desc->challenges[i].schema, "Bearer")) { -+ (void)pthread_mutex_lock(&desc->challenges_mutex); - ret = get_bearer_token(desc, &desc->challenges[i]); - if (ret != 0) { -+ (void)pthread_mutex_unlock(&desc->challenges_mutex); - ERROR("get bearer token failed"); - isulad_try_set_error_message("authentication failed"); - goto out; -@@ -380,9 +383,11 @@ static int setup_auth_challenges(pull_descriptor *desc, char ***custom_headers) - - auth_header = auth_header_str("Bearer", desc->challenges[i].cached_token); - if (auth_header == NULL) { -+ (void)pthread_mutex_unlock(&desc->challenges_mutex); - ret = -1; - goto out; - } -+ (void)pthread_mutex_unlock(&desc->challenges_mutex); - } else { - WARN("Unsupported schema %s", desc->challenges[i].schema); - continue; -diff --git a/src/daemon/modules/image/oci/registry/registry.c b/src/daemon/modules/image/oci/registry/registry.c -index bd8e8fd0..cc5f6805 100644 ---- a/src/daemon/modules/image/oci/registry/registry.c -+++ b/src/daemon/modules/image/oci/registry/registry.c -@@ -1910,6 +1910,13 @@ static int prepare_pull_desc(pull_descriptor *desc, registry_pull_options *optio - } - desc->mutex_inited = true; - -+ ret = pthread_mutex_init(&desc->challenges_mutex, NULL); -+ if (ret != 0) { -+ ERROR("Failed to init challenges mutex for pull"); -+ goto out; -+ } -+ desc->challenges_mutex_inited = true; -+ - ret = pthread_cond_init(&desc->cond, NULL); - if (ret != 0) { - ERROR("Failed to init cond for pull"); -@@ -2166,6 +2173,13 @@ int registry_login(registry_login_options *options) - desc->username = util_strdup_s(options->auth.username); - desc->password = util_strdup_s(options->auth.password); - -+ ret = pthread_mutex_init(&desc->challenges_mutex, NULL); -+ if (ret != 0) { -+ ERROR("Failed to init challenges mutex for login"); -+ goto out; -+ } -+ desc->challenges_mutex_inited = true; -+ - ret = login_to_registry(desc); - if (ret != 0) { - ERROR("login to registry failed"); -diff --git a/src/daemon/modules/image/oci/registry_type.c b/src/daemon/modules/image/oci/registry_type.c -index 3e0c5e19..51fc1697 100644 ---- a/src/daemon/modules/image/oci/registry_type.c -+++ b/src/daemon/modules/image/oci/registry_type.c -@@ -150,6 +150,9 @@ void free_pull_desc(pull_descriptor *desc) - if (desc->mutex_inited) { - pthread_mutex_destroy(&desc->mutex); - } -+ if (desc->challenges_mutex_inited) { -+ pthread_mutex_destroy(&desc->challenges_mutex); -+ } - - free(desc); - -diff --git a/src/daemon/modules/image/oci/registry_type.h b/src/daemon/modules/image/oci/registry_type.h -index 86449543..11135250 100644 ---- a/src/daemon/modules/image/oci/registry_type.h -+++ b/src/daemon/modules/image/oci/registry_type.h -@@ -102,6 +102,8 @@ typedef struct { - bool skip_tls_verify; - bool insecure_registry; - char *scope; -+ pthread_mutex_t challenges_mutex; -+ bool challenges_mutex_inited; - challenge challenges[CHALLENGE_MAX]; - // This is temporary field. Once http request is performed, it is cleared - char **headers; --- -2.25.1 - diff --git a/0094-isula-fix-help-xx-coredump.patch b/0094-isula-fix-help-xx-coredump.patch deleted file mode 100644 index dfd663c..0000000 --- a/0094-isula-fix-help-xx-coredump.patch +++ /dev/null @@ -1,51 +0,0 @@ -From db774e5fc3f6c12d302ef643feec9403b07da47f Mon Sep 17 00:00:00 2001 -From: zhangxiaoyu -Date: Thu, 6 May 2021 18:45:41 +0800 -Subject: [PATCH 094/104] isula: fix --help=xx coredump - -Signed-off-by: zhangxiaoyu ---- - src/cmd/command_parser.c | 4 ++++ - src/cmd/isula/client_arguments.h | 4 +++- - 2 files changed, 7 insertions(+), 1 deletion(-) - -diff --git a/src/cmd/command_parser.c b/src/cmd/command_parser.c -index f900ceac..e925aa32 100644 ---- a/src/cmd/command_parser.c -+++ b/src/cmd/command_parser.c -@@ -360,6 +360,10 @@ static int command_parse_long_arg(command_t *self, const char *arg) - if (command_get_option_data(self, opt, &opt_arg)) { - return -1; - } -+ if (strcmp(opt->large, "help") == 0 && *(bool *)opt->data) { -+ command_help(self); -+ exit(0); -+ } - return 0; - } - COMMAND_ERROR("Unknown flag found:'--%s'\n", arg); -diff --git a/src/cmd/isula/client_arguments.h b/src/cmd/isula/client_arguments.h -index a155b863..6bd99cb0 100644 ---- a/src/cmd/isula/client_arguments.h -+++ b/src/cmd/isula/client_arguments.h -@@ -256,6 +256,8 @@ struct client_arguments { - - char *host_channel; - -+ bool help; -+ - // lcr create - char *external_rootfs; - char *create_rootfs; -@@ -387,7 +389,7 @@ struct client_arguments { - &(cmdargs).key_file, \ - "Path to TLS key file (default \"/root/.iSulad/key.pem\")", \ - NULL }, \ -- { CMD_OPT_TYPE_STRING, false, "help", 0, NULL, "Print usage", NULL }, -+ { CMD_OPT_TYPE_BOOL, false, "help", 0, &(cmdargs).help, "Print usage", NULL }, - - #define VERSION_OPTIONS(cmdargs) \ - { CMD_OPT_TYPE_BOOL, false, "version", 0, NULL, "Print version information and quit", NULL }, --- -2.25.1 - diff --git a/0095-workdir-must-be-absolute-path.patch b/0095-workdir-must-be-absolute-path.patch deleted file mode 100644 index 8d3709f..0000000 --- a/0095-workdir-must-be-absolute-path.patch +++ /dev/null @@ -1,30 +0,0 @@ -From d2de6b5d8607f50c2b9b324197d670922bc94fbe Mon Sep 17 00:00:00 2001 -From: WangFengTu -Date: Fri, 7 May 2021 16:13:11 +0800 -Subject: [PATCH 095/104] workdir must be absolute path - -Signed-off-by: WangFengTu ---- - src/cmd/isula/stream/exec.c | 6 ++++++ - 1 file changed, 6 insertions(+) - -diff --git a/src/cmd/isula/stream/exec.c b/src/cmd/isula/stream/exec.c -index 3c8601f2..aa702b90 100644 ---- a/src/cmd/isula/stream/exec.c -+++ b/src/cmd/isula/stream/exec.c -@@ -434,6 +434,12 @@ int cmd_exec_main(int argc, const char **argv) - custom_cfg->open_stdin = false; - } - -+ if (custom_cfg->workdir != NULL && util_validate_absolute_path(custom_cfg->workdir) != 0) { -+ COMMAND_ERROR("exec failed: workdir is not validate absolute path"); -+ ret = ECOMMON; -+ goto out; -+ } -+ - g_cmd_exec_args.exec_suffix = generate_exec_suffix(); - if (g_cmd_exec_args.exec_suffix == NULL) { - ERROR("Failed to generate exec suffix"); --- -2.25.1 - diff --git a/0096-check-if-pull-option-is-valid.patch b/0096-check-if-pull-option-is-valid.patch deleted file mode 100644 index ca6f6a5..0000000 --- a/0096-check-if-pull-option-is-valid.patch +++ /dev/null @@ -1,42 +0,0 @@ -From 160a8a6660e1839f72ea625ebe2b30b5bebb46c3 Mon Sep 17 00:00:00 2001 -From: WangFengTu -Date: Fri, 7 May 2021 18:46:32 +0800 -Subject: [PATCH 096/104] check if pull option is valid - -Signed-off-by: WangFengTu ---- - src/cmd/isula/base/create.c | 11 ++++++----- - 1 file changed, 6 insertions(+), 5 deletions(-) - -diff --git a/src/cmd/isula/base/create.c b/src/cmd/isula/base/create.c -index 48dc29be..2083dcf5 100644 ---- a/src/cmd/isula/base/create.c -+++ b/src/cmd/isula/base/create.c -@@ -1568,11 +1568,6 @@ int cmd_create_main(int argc, const char **argv) - exit(ECOMMON); - } - -- if (!valid_pull_option(g_cmd_create_args.pull)) { -- COMMAND_ERROR("invalid --pull option, only \"always\"|\"missing\"|\"never\" is allowed"); -- exit(ECOMMON); -- } -- - ret = client_create(&g_cmd_create_args); - if (ret != 0) { - ERROR("Container \"%s\" create failed", g_cmd_create_args.name); -@@ -2177,6 +2172,12 @@ int create_checker(struct client_arguments *args) - goto out; - } - -+ if (!valid_pull_option(args->pull)) { -+ COMMAND_ERROR("invalid --pull option, only \"always\"|\"missing\"|\"never\" is allowed"); -+ ret = -1; -+ goto out; -+ } -+ - if (create_check_rootfs(args)) { - ret = -1; - goto out; --- -2.25.1 - diff --git a/0097-fix-memory-usage-of-stats-not-right-when-runtime-is-.patch b/0097-fix-memory-usage-of-stats-not-right-when-runtime-is-.patch deleted file mode 100644 index a1f03ed..0000000 --- a/0097-fix-memory-usage-of-stats-not-right-when-runtime-is-.patch +++ /dev/null @@ -1,28 +0,0 @@ -From e61687773922c3aaae63a8cd7b4f488bf6c967b6 Mon Sep 17 00:00:00 2001 -From: WangFengTu -Date: Wed, 12 May 2021 11:31:01 +0800 -Subject: [PATCH 097/104] fix memory usage of stats not right when runtime is - kata - -Signed-off-by: WangFengTu ---- - src/daemon/modules/runtime/isula/isula_rt_ops.c | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/src/daemon/modules/runtime/isula/isula_rt_ops.c b/src/daemon/modules/runtime/isula/isula_rt_ops.c -index 3b55ac88..f6067ca1 100644 ---- a/src/daemon/modules/runtime/isula/isula_rt_ops.c -+++ b/src/daemon/modules/runtime/isula/isula_rt_ops.c -@@ -562,6 +562,9 @@ static int runtime_call_stats(const char *workdir, const char *runtime, const ch - info->mem_used = stats->data->memory->usage->usage; - info->mem_limit = stats->data->memory->usage->limit; - } -+ if (stats != NULL && stats->data != NULL && stats->data->memory != NULL && stats->data->memory->raw) { -+ info->inactive_file_total = stats->data->memory->raw->total_inactive_file; -+ } - - out: - free_shim_client_runtime_stats(stats); --- -2.25.1 - diff --git a/0098-log-adjust-log-level-to-reduce-log.patch b/0098-log-adjust-log-level-to-reduce-log.patch deleted file mode 100644 index c31246d..0000000 --- a/0098-log-adjust-log-level-to-reduce-log.patch +++ /dev/null @@ -1,207 +0,0 @@ -From 3b05de4f3ecbe8e9fd8c37b61aa20273a9477127 Mon Sep 17 00:00:00 2001 -From: Li Feng -Date: Thu, 13 May 2021 15:07:03 +0800 -Subject: [PATCH 098/104] log: adjust log level to reduce log - -Signed-off-by: Li Feng ---- - src/daemon/entry/connect/grpc/runtime_runtime_service.cc | 8 ++++---- - src/daemon/executor/container_cb/execution_extend.c | 6 +++--- - src/daemon/modules/events/collector.c | 4 ++-- - src/daemon/modules/image/image.c | 4 ++-- - src/daemon/modules/image/image_rootfs_handler.c | 5 +++-- - src/daemon/modules/image/oci/oci_common_operators.c | 4 ++-- - src/daemon/modules/service/service_container.c | 4 ++-- - src/utils/cutils/utils_file.c | 2 +- - 8 files changed, 19 insertions(+), 18 deletions(-) - -diff --git a/src/daemon/entry/connect/grpc/runtime_runtime_service.cc b/src/daemon/entry/connect/grpc/runtime_runtime_service.cc -index c9702401..7cceefc9 100644 ---- a/src/daemon/entry/connect/grpc/runtime_runtime_service.cc -+++ b/src/daemon/entry/connect/grpc/runtime_runtime_service.cc -@@ -260,7 +260,7 @@ grpc::Status RuntimeRuntimeServiceImpl::ExecSync(grpc::ServerContext *context, - { - Errors error; - -- EVENT("Event: {Object: CRI, Type: sync execing Container: %s}", request->container_id().c_str()); -+ WARN("Event: {Object: CRI, Type: sync execing Container: %s}", request->container_id().c_str()); - - rService->ExecSync(request->container_id(), request->cmd(), request->timeout(), reply, error); - if (!error.Empty()) { -@@ -268,7 +268,7 @@ grpc::Status RuntimeRuntimeServiceImpl::ExecSync(grpc::ServerContext *context, - return grpc::Status(grpc::StatusCode::UNKNOWN, error.GetMessage()); - } - -- EVENT("Event: {Object: CRI, Type: sync execed Container: %s}", request->container_id().c_str()); -+ WARN("Event: {Object: CRI, Type: sync execed Container: %s}", request->container_id().c_str()); - - return grpc::Status::OK; - } -@@ -390,7 +390,7 @@ RuntimeRuntimeServiceImpl::UpdateContainerResources(grpc::ServerContext *context - { - Errors error; - -- EVENT("Event: {Object: CRI, Type: Updating container resources: %s}", request->container_id().c_str()); -+ WARN("Event: {Object: CRI, Type: Updating container resources: %s}", request->container_id().c_str()); - - rService->UpdateContainerResources(request->container_id(), request->linux(), error); - if (error.NotEmpty()) { -@@ -399,7 +399,7 @@ RuntimeRuntimeServiceImpl::UpdateContainerResources(grpc::ServerContext *context - return grpc::Status(grpc::StatusCode::UNKNOWN, error.GetMessage()); - } - -- EVENT("Event: {Object: CRI, Type: Updated container resources: %s}", request->container_id().c_str()); -+ WARN("Event: {Object: CRI, Type: Updated container resources: %s}", request->container_id().c_str()); - - return grpc::Status::OK; - } -diff --git a/src/daemon/executor/container_cb/execution_extend.c b/src/daemon/executor/container_cb/execution_extend.c -index 77f29fe8..028a3dea 100644 ---- a/src/daemon/executor/container_cb/execution_extend.c -+++ b/src/daemon/executor/container_cb/execution_extend.c -@@ -1223,15 +1223,15 @@ static int container_update_cb(const container_update_request *request, containe - - id = cont->common_config->id; - isula_libutils_set_log_prefix(id); -- EVENT("Event: {Object: %s, Type: updating}", id); -+ WARN("Event: {Object: %s, Type: updating}", id); - - if (do_update_resources(request, cont) != 0) { - cc = ISULAD_ERR_EXEC; - goto pack_response; - } - -- EVENT("Event: {Object: %s, Type: updated}", id); -- (void)isulad_monitor_send_container_event(id, CREATE, -1, 0, NULL, NULL); -+ WARN("Event: {Object: %s, Type: updated}", id); -+ (void)isulad_monitor_send_container_event(id, UPDATE, -1, 0, NULL, NULL); - - pack_response: - pack_update_response(*response, cc, id); -diff --git a/src/daemon/modules/events/collector.c b/src/daemon/modules/events/collector.c -index 67a823f1..1a867354 100644 ---- a/src/daemon/modules/events/collector.c -+++ b/src/daemon/modules/events/collector.c -@@ -481,7 +481,7 @@ static int write_events_log(const struct isulad_events_format *events) - - len = calculate_annaotation_info_len(events); - if (len == 1) { -- EVENT("Event: {Object: %s, Type: %s}", events->id, events->opt); -+ WARN("Event: {Object: %s, Type: %s}", events->id, events->opt); - } else { - annotation = (char *)util_common_calloc_s(len); - if (annotation == NULL) { -@@ -499,7 +499,7 @@ static int write_events_log(const struct isulad_events_format *events) - } - (void)strcat(annotation, ")"); - -- EVENT("Event: {Object: %s, Type: %s %s}", events->id, events->opt, annotation); -+ WARN("Event: {Object: %s, Type: %s %s}", events->id, events->opt, annotation); - } - - out: -diff --git a/src/daemon/modules/image/image.c b/src/daemon/modules/image/image.c -index 8e663863..6832aec3 100644 ---- a/src/daemon/modules/image/image.c -+++ b/src/daemon/modules/image/image.c -@@ -842,7 +842,7 @@ int im_list_images(const im_list_request *ctx, im_list_response **response) - return -1; - } - -- EVENT("Event: {Object: list images, Type: listing}"); -+ WARN("Event: {Object: list images, Type: listing}"); - - for (i = 0; i < g_numbims; i++) { - if (g_bims[i].ops->list_ims == NULL) { -@@ -862,7 +862,7 @@ int im_list_images(const im_list_request *ctx, im_list_response **response) - images_tmp = NULL; - } - -- EVENT("Event: {Object: list images, Type: listed}"); -+ WARN("Event: {Object: list images, Type: listed}"); - - if (g_isulad_errmsg != NULL) { - (*response)->errmsg = util_strdup_s(g_isulad_errmsg); -diff --git a/src/daemon/modules/image/image_rootfs_handler.c b/src/daemon/modules/image/image_rootfs_handler.c -index f9250a8d..f7bc9bc9 100644 ---- a/src/daemon/modules/image/image_rootfs_handler.c -+++ b/src/daemon/modules/image/image_rootfs_handler.c -@@ -275,7 +275,8 @@ static int append_additional_groups(const struct group *grp, struct group **grou - struct group *new_groups = NULL; - size_t new_len = *len + 1; - -- ret = util_mem_realloc((void **)&new_groups, new_len * sizeof(struct group), *groups, (*len) * sizeof(struct group)); -+ ret = util_mem_realloc((void **)&new_groups, new_len * sizeof(struct group), *groups, -+ (*len) * sizeof(struct group)); - if (ret != 0) { - ERROR("Out of memory"); - return -1; -@@ -414,7 +415,7 @@ static int read_user_file(const char *basefs, const char *user_path, FILE **stre - - *stream = util_fopen(real_path, "r"); - if (*stream == NULL) { -- ERROR("Failed to open %s: %s", real_path, strerror(errno)); -+ WARN("Failed to open %s: %s", real_path, strerror(errno)); - ret = 0; - goto out; - } -diff --git a/src/daemon/modules/image/oci/oci_common_operators.c b/src/daemon/modules/image/oci/oci_common_operators.c -index 845e1fde..09405651 100644 ---- a/src/daemon/modules/image/oci/oci_common_operators.c -+++ b/src/daemon/modules/image/oci/oci_common_operators.c -@@ -488,7 +488,7 @@ int oci_status_image(im_status_request *request, im_status_response *response) - goto pack_response; - } - -- EVENT("Event: {Object: %s, Type: statusing image}", resolved_name); -+ WARN("Event: {Object: %s, Type: statusing image}", resolved_name); - - image_info = storage_img_get(resolved_name); - if (image_info == NULL) { -@@ -501,7 +501,7 @@ int oci_status_image(im_status_request *request, im_status_response *response) - response->image_info->image = image_info; - image_info = NULL; - -- EVENT("Event: {Object: %s, Type: statused image}", resolved_name); -+ WARN("Event: {Object: %s, Type: statused image}", resolved_name); - - pack_response: - free(resolved_name); -diff --git a/src/daemon/modules/service/service_container.c b/src/daemon/modules/service/service_container.c -index 561f24eb..c8e2b1d8 100644 ---- a/src/daemon/modules/service/service_container.c -+++ b/src/daemon/modules/service/service_container.c -@@ -1926,7 +1926,7 @@ int exec_container(const container_t *cont, const container_exec_request *reques - } - - id = cont->common_config->id; -- EVENT("Event: {Object: %s, Type: execing}", id); -+ WARN("Event: {Object: %s, Type: execing}", id); - - get_exec_command(request, exec_command, sizeof(exec_command)); - (void)isulad_monitor_send_container_event(id, EXEC_CREATE, -1, 0, exec_command, NULL); -@@ -1984,7 +1984,7 @@ int exec_container(const container_t *cont, const container_exec_request *reques - goto pack_response; - } - -- EVENT("Event: {Object: %s, Type: execed}", id); -+ WARN("Event: {Object: %s, Type: execed with exit code %d}", id, exit_code); - (void)isulad_monitor_send_container_event(id, EXEC_DIE, -1, 0, NULL, NULL); - - pack_response: -diff --git a/src/utils/cutils/utils_file.c b/src/utils/cutils/utils_file.c -index d2e342a5..302e4e32 100644 ---- a/src/utils/cutils/utils_file.c -+++ b/src/utils/cutils/utils_file.c -@@ -862,7 +862,7 @@ int64_t util_file_size(const char *filename) - } - - if (stat(filename, &st)) { -- ERROR("stat file %s failed: %s", filename, strerror(errno)); -+ WARN("stat file %s failed: %s", filename, strerror(errno)); - return -1; - } - --- -2.25.1 - diff --git a/0099-CI-use-ali-registry-instead-of-docker.io.patch b/0099-CI-use-ali-registry-instead-of-docker.io.patch deleted file mode 100644 index 8654778..0000000 --- a/0099-CI-use-ali-registry-instead-of-docker.io.patch +++ /dev/null @@ -1,26 +0,0 @@ -From 65a13abeb6315985cf43522597ec3494d762e029 Mon Sep 17 00:00:00 2001 -From: Li Feng -Date: Fri, 14 May 2021 09:21:10 +0800 -Subject: [PATCH 099/104] CI: use ali registry instead of docker.io - -Signed-off-by: Li Feng ---- - CI/test_cases/container_cases/test_data/daemon.json | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/CI/test_cases/container_cases/test_data/daemon.json b/CI/test_cases/container_cases/test_data/daemon.json -index aa88c9da..27b0e7ce 100644 ---- a/CI/test_cases/container_cases/test_data/daemon.json -+++ b/CI/test_cases/container_cases/test_data/daemon.json -@@ -23,7 +23,7 @@ - "overlay2.override_kernel_check=true" - ], - "registry-mirrors": [ -- "docker.io" -+ "https://3laho3y3.mirror.aliyuncs.com" - ], - "insecure-registries": [ - ], --- -2.25.1 - diff --git a/0100-do-not-check-key-s-case-when-parse-http-header.patch b/0100-do-not-check-key-s-case-when-parse-http-header.patch deleted file mode 100644 index 0ae7e8d..0000000 --- a/0100-do-not-check-key-s-case-when-parse-http-header.patch +++ /dev/null @@ -1,60 +0,0 @@ -From 7311814a1cbe1fbb767ab3879e26e06a4837bfff Mon Sep 17 00:00:00 2001 -From: WangFengTu -Date: Sat, 15 May 2021 11:18:53 +0800 -Subject: [PATCH 100/104] do not check key's case when parse http header - -fix pull docker.io/library/busybox:latest failed. -It seems that docker.io registry changes it's -http response header to be all lower case. - -Signed-off-by: WangFengTu ---- - .../modules/image/oci/registry/registry_apiv2.c | 11 ++++------- - src/utils/http/parser.c | 2 +- - 2 files changed, 5 insertions(+), 8 deletions(-) - -diff --git a/src/daemon/modules/image/oci/registry/registry_apiv2.c b/src/daemon/modules/image/oci/registry/registry_apiv2.c -index b26e42ba..ea9e8dc5 100644 ---- a/src/daemon/modules/image/oci/registry/registry_apiv2.c -+++ b/src/daemon/modules/image/oci/registry/registry_apiv2.c -@@ -205,7 +205,7 @@ static int parse_auths(pull_descriptor *desc, struct parsed_http_message *m) - int ret = 0; - - for (i = 0; i < m->num_headers; i++) { -- if (!strcmp(m->headers[i][0], "Www-Authenticate") || !strcmp(m->headers[i][0], "WWW-Authenticate")) { -+ if (!strcasecmp(m->headers[i][0], "Www-Authenticate")) { - ret = parse_auth(desc, (char *)m->headers[i][1]); - if (ret != 0) { - WARN("parse auth %s failed", (char *)m->headers[i][1]); -@@ -294,12 +294,9 @@ static int parse_ping_header(pull_descriptor *desc, char *http_head) - - version = get_header_value(message, "Docker-Distribution-Api-Version"); - if (version == NULL) { -- version = get_header_value(message, "Docker-Distribution-API-Version"); -- if (version == NULL) { -- ERROR("Docker-Distribution-Api-Version not found in header, registry may can not support registry API V2"); -- ret = -1; -- goto out; -- } -+ ERROR("Docker-Distribution-Api-Version not found in header, registry may can not support registry API V2"); -+ ret = -1; -+ goto out; - } - - if (!util_strings_contains_word(version, "registry/2.0")) { -diff --git a/src/utils/http/parser.c b/src/utils/http/parser.c -index eb626485..5ea1677c 100644 ---- a/src/utils/http/parser.c -+++ b/src/utils/http/parser.c -@@ -320,7 +320,7 @@ char *get_header_value(const struct parsed_http_message *m, const char *header) - char *ret = NULL; - - for (i = 0; i < m->num_headers; i++) { -- if (strcmp(m->headers[i][0], header) == 0) { -+ if (strcasecmp(m->headers[i][0], header) == 0) { - ret = (char *)m->headers[i][1]; - break; - } --- -2.25.1 - diff --git a/0101-CI-use-docker.io-registry.patch b/0101-CI-use-docker.io-registry.patch deleted file mode 100644 index 58b7259..0000000 --- a/0101-CI-use-docker.io-registry.patch +++ /dev/null @@ -1,57 +0,0 @@ -From af1622cb04ffdbfd489a1c9ae2a692b9f61a0db9 Mon Sep 17 00:00:00 2001 -From: WangFengTu -Date: Sat, 15 May 2021 14:06:46 +0800 -Subject: [PATCH 101/104] CI: use docker.io registry - -Now we can pull images from docker.io again - -Signed-off-by: WangFengTu ---- - CI/test_cases/container_cases/test_data/daemon.json | 2 +- - CI/test_cases/image_cases/integration_check.sh | 2 +- - CI/test_cases/image_cases/registry.sh | 3 +++ - 3 files changed, 5 insertions(+), 2 deletions(-) - -diff --git a/CI/test_cases/container_cases/test_data/daemon.json b/CI/test_cases/container_cases/test_data/daemon.json -index 27b0e7ce..aa88c9da 100644 ---- a/CI/test_cases/container_cases/test_data/daemon.json -+++ b/CI/test_cases/container_cases/test_data/daemon.json -@@ -23,7 +23,7 @@ - "overlay2.override_kernel_check=true" - ], - "registry-mirrors": [ -- "https://3laho3y3.mirror.aliyuncs.com" -+ "docker.io" - ], - "insecure-registries": [ - ], -diff --git a/CI/test_cases/image_cases/integration_check.sh b/CI/test_cases/image_cases/integration_check.sh -index fe342cc2..7c2af949 100755 ---- a/CI/test_cases/image_cases/integration_check.sh -+++ b/CI/test_cases/image_cases/integration_check.sh -@@ -27,7 +27,7 @@ image="busybox" - function test_image_info() - { - local ret=0 -- local uimage="nats" -+ local uimage="docker.io/library/nats" - local test="list && inspect image info test => (${FUNCNAME[@]})" - local lid - local cid -diff --git a/CI/test_cases/image_cases/registry.sh b/CI/test_cases/image_cases/registry.sh -index 332af223..36990f30 100755 ---- a/CI/test_cases/image_cases/registry.sh -+++ b/CI/test_cases/image_cases/registry.sh -@@ -77,6 +77,9 @@ function isula_pull() - isula pull hub.c.163.com/public/centos:6.7-tools - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - --pull hub.c.163.com/public/centos:6.7-tools failed" && ((ret++)) - -+ isula pull docker.io/library/busybox:latest -+ [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - --pull docker.io/library/busybox:latest failed" && ((ret++)) -+ - isula pull 3laho3y3.mirror.aliyuncs.com/library/busybox - fn_check_eq "$?" "0" "isula pull 3laho3y3.mirror.aliyuncs.com/library/busybox" - --- -2.25.1 - diff --git a/0102-CI-fix-integration_check.sh.patch b/0102-CI-fix-integration_check.sh.patch deleted file mode 100644 index ea74526..0000000 --- a/0102-CI-fix-integration_check.sh.patch +++ /dev/null @@ -1,45 +0,0 @@ -From 1e76bdb3a7adc95631b692e9068a6131aa0ed622 Mon Sep 17 00:00:00 2001 -From: Li Feng -Date: Sat, 15 May 2021 17:21:16 +0800 -Subject: [PATCH 102/104] CI: fix integration_check.sh - -Signed-off-by: Li Feng ---- - CI/test_cases/image_cases/integration_check.sh | 7 +++---- - 1 file changed, 3 insertions(+), 4 deletions(-) - -diff --git a/CI/test_cases/image_cases/integration_check.sh b/CI/test_cases/image_cases/integration_check.sh -index 7c2af949..01f683c5 100755 ---- a/CI/test_cases/image_cases/integration_check.sh -+++ b/CI/test_cases/image_cases/integration_check.sh -@@ -46,9 +46,6 @@ function test_image_info() - isula images | grep busybox - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - missing list image: ${image}" && ((ret++)) - -- isula images | grep ${uimage} -- [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - missing list image: ${uimage}" && ((ret++)) -- - lid=$(isula inspect -f '{{.image.top_layer}}' ${image}) - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - invalid image top layer: ${image}" && ((ret++)) - -@@ -83,7 +80,7 @@ function test_image_info() - isula images | grep busybox - [[ $? -eq 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - invalid image: ${image} exist" && ((ret++)) - -- isula images | grep ${uimage} -+ isula images | grep nats - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - valid image: ${uimage} do not exist" && ((ret++)) - - isula rm ${ucid} -@@ -98,6 +95,8 @@ function test_image_info() - isula rm ${ucid} - [[ $? -ne 0 ]] && msg_err "${FUNCNAME[0]}:${LINENO} - remove container failed" && ((ret++)) - -+ isula rm -f `isula ps -aq` -+ - msg_info "${test} finished with return ${ret}..." - return ${ret} - } --- -2.25.1 - diff --git a/0103-optimize-token-generation.patch b/0103-optimize-token-generation.patch deleted file mode 100644 index ae55641..0000000 --- a/0103-optimize-token-generation.patch +++ /dev/null @@ -1,83 +0,0 @@ -From e98585c5a8e890eb27bebe0acc8d113b4a326019 Mon Sep 17 00:00:00 2001 -From: wujing -Date: Mon, 17 May 2021 20:33:14 +0800 -Subject: [PATCH 103/104] optimize token generation - -Signed-off-by: wujing ---- - src/daemon/entry/cri/request_cache.cc | 41 +++++++++------------------ - 1 file changed, 14 insertions(+), 27 deletions(-) - -diff --git a/src/daemon/entry/cri/request_cache.cc b/src/daemon/entry/cri/request_cache.cc -index b502715a..71984289 100644 ---- a/src/daemon/entry/cri/request_cache.cc -+++ b/src/daemon/entry/cri/request_cache.cc -@@ -18,10 +18,10 @@ - #include - #include - #include --#include - #include --#include - #include "isula_libutils/log.h" -+#include "utils.h" -+#include "utils_base64.h" - - std::atomic RequestCache::m_instance; - std::mutex RequestCache::m_mutex; -@@ -93,40 +93,27 @@ void RequestCache::GarbageCollection() - std::string RequestCache::UniqueToken() - { - const int maxTries { 50 }; -- std::random_device r; -- std::default_random_engine e1(r()); -- std::uniform_int_distribution uniform_dist(1, 254); - // Number of bytes to be TokenLen when base64 encoded. -- const int tokenSize = ceil(static_cast(TokenLen) * 6 / 8); -- char rawToken[tokenSize + 1]; -- (void)memset(rawToken, 0, sizeof(rawToken)); -+ const int rawTokenSize = ceil(static_cast(TokenLen) * 6 / 8); - for (int i {}; i < maxTries; ++i) { -- char buf[TokenLen + 1]; -- (void)memset(buf, 0, sizeof(buf)); -- for (int j {}; j < tokenSize; ++j) { -- rawToken[j] = (char)uniform_dist(e1); -- } -- lws_b64_encode_string(rawToken, (int)strlen(rawToken), buf, (int)sizeof(buf)); -- buf[sizeof(buf) - 1] = '\0'; -- if (strlen(buf) < TokenLen) { -+ char rawToken[rawTokenSize + 1] = { 0x00 }; -+ if (util_generate_random_str(rawToken, (size_t)rawTokenSize)) { -+ ERROR("Generate rawToken failed"); - continue; - } -- std::string token(buf, buf + TokenLen); -- if (token.length() != TokenLen) { -+ -+ char *b64_encode_buf = nullptr; -+ if (util_base64_encode((unsigned char *)rawToken, strlen(rawToken), &b64_encode_buf) < 0) { -+ ERROR("Encode raw token to base64 failed"); - continue; - } - -- bool ok { true }; -- std::string subDelims { R"(-._:~!$&'()*+,;/=%@)" }; -- for (const auto &t : token) { -- if ((subDelims.find(t) != std::string::npos)) { -- ok = false; -- break; -- } -- } -- if (!ok) { -+ std::string token(b64_encode_buf); -+ free(b64_encode_buf); -+ if (token.length() != TokenLen) { - continue; - } -+ - auto it = m_tokens.find(token); - if (it == m_tokens.end()) { - return token; --- -2.25.1 - diff --git a/0104-fix-string-array-initialization-failure.patch b/0104-fix-string-array-initialization-failure.patch deleted file mode 100644 index ce57b54..0000000 --- a/0104-fix-string-array-initialization-failure.patch +++ /dev/null @@ -1,35 +0,0 @@ -From 8c7599117d7da3e97e0d9a937243a0dee44d83ac Mon Sep 17 00:00:00 2001 -From: wujing -Date: Tue, 18 May 2021 09:29:20 +0800 -Subject: [PATCH 104/104] fix string array initialization failure - -Signed-off-by: wujing ---- - src/daemon/entry/cri/request_cache.cc | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - -diff --git a/src/daemon/entry/cri/request_cache.cc b/src/daemon/entry/cri/request_cache.cc -index 71984289..46fef289 100644 ---- a/src/daemon/entry/cri/request_cache.cc -+++ b/src/daemon/entry/cri/request_cache.cc -@@ -96,7 +96,8 @@ std::string RequestCache::UniqueToken() - // Number of bytes to be TokenLen when base64 encoded. - const int rawTokenSize = ceil(static_cast(TokenLen) * 6 / 8); - for (int i {}; i < maxTries; ++i) { -- char rawToken[rawTokenSize + 1] = { 0x00 }; -+ char rawToken[rawTokenSize + 1]; -+ (void)memset(rawToken, 0, sizeof(rawToken)); - if (util_generate_random_str(rawToken, (size_t)rawTokenSize)) { - ERROR("Generate rawToken failed"); - continue; -@@ -110,6 +111,7 @@ std::string RequestCache::UniqueToken() - - std::string token(b64_encode_buf); - free(b64_encode_buf); -+ b64_encode_buf = nullptr; - if (token.length() != TokenLen) { - continue; - } --- -2.25.1 - diff --git a/iSulad.spec b/iSulad.spec index 6ef71dc..60fcb54 100644 --- a/iSulad.spec +++ b/iSulad.spec @@ -1,6 +1,7 @@ -%global _version 2.0.8 -%global _release 20210518.144540.git5288ed92 +%global _version 2.0.10 +%global _release 1 %global is_systemd 1 +%global enable_shimv2 0 Name: iSulad Version: %{_version} @@ -12,110 +13,6 @@ Source: https://gitee.com/openeuler/iSulad/repository/archive/v%{version}.tar BuildRoot: {_tmppath}/iSulad-%{version} ExclusiveArch: x86_64 aarch64 -Patch1: 0001-make-thread-detach-to-avoid-resource-leak.patch -Patch2: 0002-devmapper-fix-udev-wait-thread-resource-leak.patch -Patch3: 0003-clean-code-fix-clean-code.patch -Patch4: 0004-judge-isula-load-file-exists.patch -Patch5: 0005-modify-image_load.sh-CI-to-test-file-not-exist.patch -Patch6: 0006-do-not-pause-container-when-copy.patch -Patch7: 0007-add-testcases-for-isula-cp.patch -Patch8: 0008-image_cb-rename-the-function-isula_-docker_-to-do_.patch -Patch9: 0009-fix-small-probability-of-coredump-in-CRI-streaming-s.patch -Patch10: 0010-fix-ramdom-coredump-if-pull-failed.patch -Patch11: 0011-shim-optimize-io-stream.patch -Patch12: 0012-add-CI-to-test-shim-io.patch -Patch13: 0013-CI-add-testcase-for-exec-without-pty.patch -Patch14: 0014-adapt-for-sparse-file-when-tar-file.patch -Patch15: 0015-driver-do-not-unlock-and-destroy-lock-when-clean-up.patch -Patch16: 0016-driver-do-not-set-g_graphdriver-to-NULL.patch -Patch17: 0017-ignore-error-if-get-ip-failed.patch -Patch18: 0018-GC-add-log-container-info-when-add-into-gc.patch -Patch19: 0019-log-use-the-same-function-to-init-log-in-export-paus.patch -Patch20: 0020-init-log-config-should-before-command-parse.patch -Patch21: 0021-spec-add-verify-for-device-cgroup-access-mode.patch -Patch22: 0022-log-change-log-level-from-warn-to-error.patch -Patch23: 0023-Fix-create-env-path-dir-if-dir-exist.patch -Patch24: 0024-iSulad-calculate-memusage-with-used-total_inactive_f.patch -Patch25: 0025-fix-container-exit-health-check-residue-and-multiple.patch -Patch26: 0026-CI-supplementary-testcase-for-health-check-monitor.patch -Patch27: 0027-add-container-lock-when-clean-container-resource.patch -Patch28: 0028-sleep-some-time-before-calculate-to-make-sure-fd-clo.patch -Patch29: 0029-stats-fix-wrong-memory-usage-info-in-stats.patch -Patch30: 0030-save-health-check-log-to-disk-before-unhealthy.patch -Patch31: 0031-unpack-try-to-remove-and-replace-dst_path-while-unpa.patch -Patch32: 0032-fd-leak-check-in-cp.sh-should-not-include-pull-fd-ch.patch -Patch33: 0033-devmapper-modify-log-msg.patch -Patch34: 0034-name_id_index-fix-restore-fail-to-remove-name-index.patch -Patch35: 0035-thread-function-calls-DAEMON_CLEAR_ERRORMSG-to-preve.patch -Patch36: 0036-modify-resume-task-name.patch -Patch37: 0037-cleadcode-Remove-extra-semicolons.patch -Patch38: 0038-restart-policy-add-support-unless-stopped-policy.patch -Patch39: 0039-CI-add-testcase-for-unless-stopped-restart-policy.patch -Patch40: 0040-bugfix-for-embedded-image.patch -Patch41: 0041-console-client-ignore-stdin-close-event.patch -Patch42: 0042-delete-lxc-from-runc-CI-test.patch -Patch43: 0043-add-embedded-testcases.patch -Patch44: 0044-fix-the-error-of-ContainerStats-interface-field-valu.patch -Patch45: 0045-rollback-setuped-network-if-mult-network-failed.patch -Patch46: 0046-add-testcase-for-rollback-mutlnetworks.patch -Patch47: 0047-log-adjust-log-level-from-EVENT-to-WARN-to-reduce-lo.patch -Patch48: 0048-isulad-shim-fix-shim-exit-bug.patch -Patch49: 0049-support-pull-option-when-create-run-container.patch -Patch50: 0050-add-testcase-for-pull-option.patch -Patch51: 0051-remove-redundant-code.patch -Patch52: 0052-devicemapper-umount-when-resize2fs-command-failed.patch -Patch53: 0053-support-isula-exec-workdir.patch -Patch54: 0054-add-testcase-for-isula-exec-workdir.patch -Patch55: 0055-ignore-to-create-mtab-when-runtime-is-kata-runtime.patch -Patch56: 0056-remove-unchecked-layer-ignore-rootfs-layer.patch -Patch57: 0057-add-test-to-check-running-container-with-image-integ.patch -Patch58: 0058-fix-coredump-when-inspect-container-when-daemon-sets.patch -Patch59: 0059-Readme-add-related-resouces-in-readme.patch -Patch60: 0060-update-docs-build_guide_zh.md.patch -Patch61: 0061-fix-health_check.sh-execute-failure.patch -Patch62: 0062-support-cgroup-v2.patch -Patch63: 0063-add-testcases-for-cgroup-v2.patch -Patch64: 0064-Readme-add-configure-image-registry-address.patch -Patch65: 0065-add-iSulad-experiment-in-README.patch -Patch66: 0066-CI-add-testcase-for-long-label.patch -Patch67: 0067-event-fix-memory-leak-when-pack-annotation-failed.patch -Patch68: 0068-Readme-add-script-to-install-iSulad-on-Centos7.patch -Patch69: 0069-cri-fix-residual-IO-copy-thread-in-CRI-exec-operatio.patch -Patch70: 0070-CI-add-testcase-for-cri-stream.patch -Patch71: 0071-stats-show-cpu-usage-normal-when-stats-with-no-strea.patch -Patch72: 0072-Readme-add-script-to-install-iSulad-on-Ubuntu-20.04-.patch -Patch73: 0073-update-libarchive-requirement-to-v3.4.patch -Patch74: 0074-correct-the-mistake-package-libarchive-dev.patch -Patch75: 0075-Added-autocomplete-in-isula-command-line-mode.patch -Patch76: 0076-iSulad-fix-bugs-of-isula-runtime-ops.patch -Patch77: 0077-Compatible-with-registry-URL-ending-in.patch -Patch78: 0078-CI-fix-CI-to-fit-run-on-2-cpu-4G-memory-environment.patch -Patch79: 0079-added-default-completion.patch -Patch80: 0080-fix-coredump-when-poweroff.patch -Patch81: 0081-CI-keep-container-when-build-failed-for-debug.patch -Patch82: 0082-devmapper-decrease-log-level-of-check-dm-device.patch -Patch83: 0083-fix-bugs-when-pulling-image.patch -Patch84: 0084-add-testcase-for-pulling-image.patch -Patch85: 0085-check-return-value-to-valid-use-NULL-pointer.patch -Patch86: 0086-move-reinstall_thinpool-to-helper.sh.patch -Patch87: 0087-CI-activate-vg-isulad.patch -Patch88: 0088-CI-devicemapper-add-filter.patch -Patch89: 0089-syslog-tag-support-dynamic-tag-values.patch -Patch90: 0090-add-testcase-for-contailer-log-opts.patch -Patch91: 0091-CI-run-the-containers-one-by-one.patch -Patch92: 0092-completion-isula-images.patch -Patch93: 0093-fix-memory-leak-when-pulling-image.patch -Patch94: 0094-isula-fix-help-xx-coredump.patch -Patch95: 0095-workdir-must-be-absolute-path.patch -Patch96: 0096-check-if-pull-option-is-valid.patch -Patch97: 0097-fix-memory-usage-of-stats-not-right-when-runtime-is-.patch -Patch98: 0098-log-adjust-log-level-to-reduce-log.patch -Patch99: 0099-CI-use-ali-registry-instead-of-docker.io.patch -Patch100: 0100-do-not-check-key-s-case-when-parse-http-header.patch -Patch101: 0101-CI-use-docker.io-registry.patch -Patch102: 0102-CI-fix-integration_check.sh.patch -Patch103: 0103-optimize-token-generation.patch -Patch104: 0104-fix-string-array-initialization-failure.patch %ifarch x86_64 aarch64 Provides: libhttpclient.so()(64bit) @@ -140,6 +37,9 @@ BuildRequires: libcurl libcurl-devel sqlite-devel libarchive-devel device-mapper BuildRequires: http-parser-devel BuildRequires: libseccomp-devel libcap-devel libselinux-devel libwebsockets libwebsockets-devel BuildRequires: systemd-devel git chrpath +%if 0%{?enable_shimv2} +BuildRequires: lib-shim-v2 lib-shim-v2-devel +%endif Requires: lcr lxc clibcni Requires: grpc protobuf @@ -147,6 +47,9 @@ Requires: libcurl Requires: sqlite http-parser libseccomp Requires: libcap libselinux libwebsockets libarchive device-mapper Requires: systemd +%if 0%{?enable_shimv2} +Requires: lib-shim-v2 +%endif %description This is a umbrella project for gRPC-services based Lightweight Container @@ -158,7 +61,12 @@ Runtime Daemon, written by C. %build mkdir -p build cd build + +%if 0%{?enable_shimv2} +%cmake -DDEBUG=ON -DLIB_INSTALL_DIR=%{_libdir} -DCMAKE_INSTALL_PREFIX=/usr -DENABLE_SHIM_V2=ON ../ +%else %cmake -DDEBUG=ON -DLIB_INSTALL_DIR=%{_libdir} -DCMAKE_INSTALL_PREFIX=/usr ../ +%endif %make_build %install @@ -318,6 +226,12 @@ fi %endif %changelog +* Thu Nov 11 2021 gaohuatao - 2.0.10-1 +- Type: sync from upstream +- ID: NA +- SUG: NA +- DESC: update from master + * Tue May 18 2021 wangfengtu - 2.0.8-20210518.144540.git5288ed92 - Type: sync from upstream - ID: NA @@ -342,7 +256,7 @@ fi - SUG: NA - DESC: update from master -* Mon Jan 18 2020 lifeng - 2.0.8-20210118.195254.git077e10f2 +* Mon Jan 18 2021 lifeng - 2.0.8-20210118.195254.git077e10f2 - Type: sync from upstream - ID: NA - SUG: NA diff --git a/v2.0.8.tar.gz b/v2.0.10.tar.gz similarity index 52% rename from v2.0.8.tar.gz rename to v2.0.10.tar.gz index a804420bd30646ee0304bb815aa20b71cd9312d4..d0cd06c4a640e3a679ca173cb6f137bf9a753bfa 100644 GIT binary patch delta 2076667 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

jus1hCSrD z7jgxYPxS%9(~9vj0lO&4d}7jJgr)ct;NxvnvJ&7jJFzTDzPYC=|GcEC~SlYZ8jIvUgrxz z0fYSeF6eFuNmAAaE~K?Kn`jrfoC~!#_qSR+nfIRRn6VJY22c9kUBB{Vk~b7HpLU=A zpzxe{2O=_ zM%6MT9F>|r^{^3N^TcZ zzRdCrNRq27;n+-jZJE}97ick{1r%`{ImGrcf{CF+0?;>?@!BRk5h%m{8KvhW1Cj$QcAW%`C=PV-B7dpr(FrgI1=`KMnVh~>f zfn$=?{Jp%1MW-l*~C?(lKyQT(7SZ-9_NRzlEb+X_NOT^wJ*XqS2#HS-mT)6 zI!+8&l%kI6zh}w`H7X^F!%Hk9k=5pZg?eb8WUz?%$L#41t9&Kz>-_4j8U43s4|Y@( z*7kHBk^P~SykcTaVapJ#_wisr@>k$?g8_8>?I?fxdGNO)pgI(G{?Iv%w1O~zo)0RT zp7S6%%uw>70Iq*?>fobppg|#sK|=;4u#b^>&YkI}dZ5AJBs}Ggv|0bm^5SfNHwoi@ z9%xIlY?t#ShO-6kjjD3^xaCM5wtm#p0;EF6ctv^tuQjO*O!s+6v8VnN#r zOE<6P;zTCOqm!5P-6m&2%{$gk@7J%F$YMN)qNMN_uv>qG3+)T=ly@a1aRM^4CCH)` z(W63&38&pv8dH^EJ(mZWINLBTaZ# z4a4y2-oCW&O=x*9FKKE^EzQASRl=IazS7oR;Y?|N_LJKlM|I8jZBk1(c25g zl&EH^(A1S7$Es<+(~bwLx6`%+6A@hD{?r-w0znAfPONI&u&9Hajn`7`!?1c5)gC<&&f5Up^ z=MD6D1-w>SRYB+GN5E2$+5QA6G(FRpM(bEHlzHdIH7TClfQ4AO)SjLa6aksZNxuH& z1<6NkD{0Dug5$~n z(i)n$ieP)-xdmkM^f!j!x`3VJeNZ3(`sb|${6%1;rx!}Jn1EK&xTDgrf1-n=Uv1({ zGzjLzEJ&@YE$UFI%jKL0`)X@1AE-~- z0Lvh(!)qkGqJ+;3-Pu=>qg=09`c|5}&l2JxE$mWdx3x+7L1IG+dr=bH7x>zhq|0GM zElGMe@g}vID+hQxhGbHx$lg1bZR-_XyId`8gVMC47Iruv=09z zLQh);lnC4sYCLAY3!;S(vyfek=@2QK7bn9W5t1ruJ}-t-cm{2@zrZWXei95D=b!{i z9tA;xYf4NJwzA3=fp3o5(&b?!E^Z|4L+^So#vH`>7qQq}tCS3Le|W8oO{9^9k4sl) zS%S%+m~>3VIc;H}h0hW?;#{m?O?U;1*!C~HWseZCXdJk|ZJY<=PiQ;i>?f!gxtQ;--1w7_ahn>1 z`>-j6ilSYdok&VO2hN1QR@z)P#!wV7mxh0*oJ-`T;o zLtchs4JM{(Y^F6-;&vfLag^7i3Pr$I3U?)=JI-v1t7yMQf7A}85x5r&tF|6gh$bs? zwOKF5>9&_!uR}>`b7g0rVhPose+z6RL1%X+LphJQE$E!!FPXmD4^~UlXWRDq$enLB zK6u7Oz0Xvosn=*|ZZG##l(pH9&ggbQ-zb6xn3=H|#Gfr!u^?b-cf{!82&xNH7*1}{ z)}ZKT8(jYBf9zIZ5a?}#^aW<}&sM>K?Ajd}Jlebpd=GJkTD#5&>Bx2)SXmwv?ax-2 zx+z`cxxFepFainIkHm_4>xhMJ6QOb4DA8Pcqr`&&BV{wG&N6xA$>!CRma?8qAw(DI zP!LV)6zLHbq_n_>`al`?NKmBWlO@*GSvrwM^2#atek**On!OEn~e|44Z=1DZ1ad3Pt1t)ic-oCthf$~B& zS(St$w?C-^kr72o{c^KcPfgWn#b)Fp+s+DGxwO3V?JD|XYpZFxVFJ`_rIh^Pz(9gX zebaW`_WabBP4EVr5YHH0yns20zy|)B$T3H^Hc8)wj$spI{|(*A&&UgMOs%lIslV(T ze{(|pY-?yZOkEg%y{(6{uds86@n~(uumdwz)cM=_S%ZM(1`ydYu*m`ySI|#?>+i{V zW?xl9B4J_;EHfiI_ z^tv^8$kZUK(}^71t`iH2z#NpPo|>GIe*~D}@q0}!NCc|^x=$0R5~AfF4#6q1MykbmP&L1f=}e<~nS zK*u3BI$EfU`50eeUlDfUmnaRQLo1L=J5f!6w}Gh5p~l&)Q@vjb!3$q)*~E=(isu{` z8Pl12#x`}YXx`kj{uy9As&;L+>gNeYiXi(uCyl2XFiN+XTKQp#Tam0(C(`MrIy_t$ z3YAXN8LrJDGx78!!gG|GDOfyre;gU1!pu zr_weZ{yi)ag0f#wGogkW%k&D#DuMF4X8b22ie$J@Rp(@)2%bqb#-BvMf7FnN+*&Bq z%PxV4WiGP4%WynS|APs4I->&uFkytsH>RcmWY)9~h+Qk__Q zY6bufHFyDA2#p4JT;R5(e`PxTLpbsM%G!t|twM%%CyyV+uukL1iOocyUlR`#1HK_5 z(~&=_EJqYunm`roWb_+1>-0?MdXwmS(}+a#5{ECFSnjxGJ`gy2C>+b{)-3{Or`3Q2 zxeP<2hy9$XjIk3!v?A`k7IRw)0|ve{)j3x;XLM6+P!6 zJH0n2No-7otjdpM@|mAaGY5D&U% zJ^hbhT{*#ClGf)&1?ww6rnjU(g+J+{SBAUGZ=p&Ii~?RffAC2jf|t22un}H9275XB zK&sM}mvLa2#THnSe5@)+MOu|1ZDbLihu5F4vXp^Q%5;(7QIX^~WJRU_j< zGFn-PElkjV-jf(@Uf&v2y**m(kWYM`GG;0jjp#p`~F*8LK)4^R;KVF39Fg?d9L z+|!SVu*Xq-Lzx3?IDllR3u|aC8S# z?mDD@xR5h&dQ~gO;+Mwrg&99Ix0Hd_aLg>yu}9B)*DB=y!-4Qu%f7B^WwU+d_&MSB zQYTjLW3wnXBJ~5imgy&ctfvx&wx)H3t#0}ze^_c1h1fWPltgO3epm%7$>uA!7&B;U z8P?~lB`M^o@t2I4-@T@%=${scN(M_QzkQQ``6TuV52|W#QRNvF2Fa;>Bihzqd8!Po z_KgZAh~ddEO#H5g)%E1perrra0j0~&J8ZKf@WBHi^hgomM4*b~+~uH49W${NM?<3i zOM@%!=cY~9S95ga=Bu7wv0Thtws+0dqOny)h3P(oWkgt)Tx%T>X72XR#izQXi9)D7#~ zn=3b#cCH=c>h@h#D~r;8o?AUNtW`WMI|xa7i)#lrwwAi$y7SBmgTt#29*JhQ)v&h?+`vi3HTR^{?XNMEph7?qaOC`$IXb98Ko#ZeCq4=EDeWn{*^H zT26l=f*rlKdx);X*$OA5P59*Fp5=e!513KtkMw#Fw=SF@Sr2+S`N#9 zM&*+FM)eC)#0V(fgIPdKh_YJLS@e}EC)Ccx%P#CwlQl~eonHRbBF#!w`05)lmvnIT zwAg(AMfJOuCS{L-mh{VJlB;{Sbbs~2R`=F$jKnfT*6S#0z`NdAj-@@Sv*x{mO?E!F zd#JX50IdjPfOvLrGT1M=9^Ju0ax%_UiJaZC8y$%goDVdTlhy@3vNcDGb# z+J^>WVO{L0GkskJ{R@}fG#k+-G5M##*})?%Ea1r z`G=|O?_ZZi@+KAz6v z@^X2kpoj4n1VebaKge)wtG__4G6ipFDW+R&91uV+h=ey-4!1 zTPWU+%mGOe7vAZlh$Zdc>HMbtyUx0vz8-bbM8afH2*i^@P%T1k9(&HgCQ<^n$bTMQ zq}W)yY~XE0=LX0%TS--ftziFhbR^oAZ|)S-j~Fk5Qb&eUK;`(<2=%Q7N&nqMGw>IQ zkmkx*?vP&rI8-0&;N(ulW2X$l73&-ko~%f+V(o5apWt@+b7`q7uvyf4%H|cooN381 zNjr|TY;StXRBswKl5@galixGDrGGeZ^?<|H)wi|>oAVh~mcc4DJwlq`I98)k-ywRjuB}sKbEliDLF)|7md>$Lnx+C778)mL6o30hf-?O) zC^q>CNbt(NIAyYF!5!poJ5k9-^BfW=$~O%1H3Bwc16zNlVE37>4YXRA(#S@=Z4F$@m$Eri5B_#V zXzVWybkzi;&y%90Qs(yXQ-1*7exo2|Ndi4>G_E&5yCF7=lCDuc;JpU2oo)715l8vAcek^SU0#gHYzl4jD9}Vg}viWc9TI4NO$?pk=q~wy2X*A41p1-(&&&@ z2RH#|_?p}C_kb_}X0|-xVf&eqpL{{;A7-{3yH$bQGLQTffNHy#OMi5-QvHO0>?S7q zF#4%M942!qj~VM-eTo!_<#y#)?w>vF8eHsqwX1){MU~if=2~B5y?7~cO<#f#;Xa>HMz2mon zq~pj@M!TN7{M7WT{(oD;F6of?j&2n_{?+#Q-Ud<>t~`+dKtR90L*t?R5O67bk(mo= z!<)m6IQbZ`{cqkaNnnIwe9!wa03GpkMxF!FZhh4mWkXZ_oGs_{M*SWG}NL(D>a{ zrL+gfZoTr~Ww$MzqS&|od=3l6IqdizqPF+v zfR90~L8pv!Xms_71CV`x%bo>uY;4lU5j zZZ0>%C~N?zdszx_5`)kji8drTY(To~$EO|e-DDTDx2kMD6ST(!*w2+DjsMI?KG@fe z2~KyiMvvPz2b?U(P6v01&hW?pTlG-UCmHbRmhlz+zo;rCvpV@k zi1m5LB?_#h?B-YSDfK)VFh@y^o?1SMj^mW~056BFfMSWQrdv*1dna;o<%vvTG|kh&cS|;nhH+ zy>xNq2~ZokSB((wze2hlzQX~xe8!(+Jlk4uA-9wL#FnE`f!msvqmtgYlTX>jy!vok z6~U4Va=$?l%}NZJ?ljQ4Et3QFchk@DC8=}ax>HhHeVFdV(7Id41-Pj74VV->`WS6( zm>8~qWHf)H0OX+Q+xgtJ;bfr4ucvXBL&<^ExA^%p+?<$az5MC5UhYhHtjS)bGQf6y z{O-9^c_3Tv{t)>U=aXeX04tDDZtyorG@L>CkTM|o-F&59sMLH5lCO~PJJe^Rl6uuq z`GlWsF7OP1fK*{pp_p9fwQ*zIBjFQjTg~22^)JlHP7|;Cj9R`Osg4 z)`$Hn1#cOSy11DzIvzA7GApV69#jfWF^lOne{2;>{7XR|4ig6n@hb@Y;Amc-iwwvv+@NoWrLlztR<6?ar=!yF6&M?L}_>^3xRH zxhqGxI#kbZ;U}o%%=B|t*c5Qtm#ZY!!p0iarWs=RY(Q>(eWclc+ncNO(abY_z!+Um zHYD2Uc9IHY?oVEVvvlEV`RSCZL3@Q}Yv;?2o({Cxo2-Pl@~~>Y;b~u*3+AQ|t?+-e zouZUeHb18fyTz`_pTFv3+-vSHIJ6_V(x*`-Lv(FPaOw|zS9V*LqCgnzn>>K*_QWcxrE(1`0Y(zgYv3TqmCA(-u_oAT|5etJ{vE8#o@{*4Uzz=dajwmomAlAPS0pIHbtvyx=Kd>-sG52li-HjFnt_I+>N znA@6GJriVUU9OSzHvbP!fo)~V9JY3vzVLi)COg?69; z0558gqMV_R83X!=El_O^Qq1Zg*vOb+16_=|1b`gu&<=(;0X%qt{}d$OpK0h&;p0?i zuSwqQ&IB6&Y}T|yHXGu~pQ*%0DqW2W{_P-{a=1uZn-AXOY8+0l>}i%|uZLVYD!D9? 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

V;D+8CH^ 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ɶCR`svu6)51jQ1gwj2OdP(^S+@@!^H_Z*KGL+ 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

>Fp{I)I^oEEmXiDzzhk_dFQC%>iC759mB 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�b=@obus;@zfnu>a;bvcQsf=d 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

~LVXkEgu+{bBzqGrN39A)1L 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�q<)^bN>1<98VxVLaZ^C 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%0ATe% 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%0DoeSk>4yHg5wV>5nqrcra-Q|~cb9ir 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
-$;LplWG@y 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 z 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 Rfy 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
SBgK6goAsy)OnII;f|kLAyT`6Qc1p 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 wllhf4pe(niGvxg=Aj;r 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%0DxZfVDO@5 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

6N4SXoC{8dpSODzs(g#U0EP+_>D5k?W_GLS(45 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

TD;_66o2SYzh;h>tpK$u|ZYmU}F+<-_c~e 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�{NzgvW)G` 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≪}q(^-Fz?wQDanj3e_ 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

h%gr~{ka5Dc1=A|VO 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%0Da9gH;OC! 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

h|Hj8RK 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�eu(*dT-f1D05z9TxI9l(o0bky08K5S9ZpN3P);f+zJ z$ZIVho=vWjaT+Dv?r_Xv)z8YqXSlLTGlSiA)&t(S}v zTu@g?Te+A_MlaUaInJQo=H33puiP;^?G()ao>d zSe-O=s7N;^E{8A>y%b2;&#C0jbaH_^=}9uU&d$=oIdKnJkX|s(*xX#*_&Yw`OY`nH zv?S1 z^4C}7MChJIlgV{-mYqSDBH&&ls4JC;yQeXfiP?q;oxNh1TFEG_v1^U>XbN8*Zvn~D z59t6CkaMb^auTy0Tsj)|`xKr84gC1Wvd^B>)&E<`w*8YCH z-)bGjAa?fl8}V)nWZdD2?GqGJc*?6-jVZq+1|u-Z#b%J78aUC$Jk9Kb?6Qo)&IRCD z;~U-C(QdFFJ?z$_P5t^xtawEsquyWuSG=%+kh1duNJ&0AwA=DWiYcQNVeT^;RHVVD zVrn4rh%OE?njw(#f2KX2w({6DqZlUtV-!oSV)4`oy9O zB+>#Ac6}E@i*-T|+cQT*6n1;0$`T<@u4U*Eq>2?@#`j9Me@Cjfbo%YT8?s>ub|7n& zz&6IwySXrlfy9RSAYuV`EjlyTqI$KYBSkBcdsjuRIiz01s5jsFLW39i4|aakLlSvz z^v|&d`4^w-K^HBCFrWP^lJf=)lz~@heY~S}OkPCdmRhC#S2#L1;b9ASfKsFe1lNy;_6o_lf1fRQ1<^ony6Sm5phUpzJ;1tO zKo|U?s#+JY?%j4l>K-7y_R@YjVSnGd=;O&v`0LMvu7E34m~vTH2sWrOBldLq9P}R_Fc9( zf8c}T6A0{;l@E^(ku~!StJ~%K!LX;ZRwr&!-~Wr>+9#bh`}PBTgAGnE{XmX)*6xOB zQ8fM}C>uXEJI96AHflGz91gMx<%K#M&dOZ=OIOCm$EIJ8tt&qIu~)_P6IZh*?!7vo zexJ(ze6(}?E{4sGb_4t4hMC`30@k;re>^ydYBYKk30MW`y|Te*I{B*FWi+=5J5y1? zHErx6R?>Mz_S)hHkGBYqh{E~fu+=y`wq=sTBj+hyH|#SBEP_S}*VW(L17?%>>fhgrq3TfrzPKwp#Uk8?`HG(Uut2+dN9Q=hrQIA<8HXGP^d4O#wma%y_qHq25iRNc zVfTHIps^@%W6I)hZu>Z+Cj0NJlDnA9jNk5z%Ki6i{TSn;1JZBeAKLr7JWU6^Kqa}0 zuR4v!cNn)xdxuB%no38{*qx6Jf31HM1PZMX6!vNVyL$An|K8nHz;Gr5W?vA)n$c-h zm$dq%kGq;{Tzd!E05sX&aPSQU(imgXDjaVCiC<^g2|=?!v8(nZnH_3s#ABX#hOJ@| zT+3_@fIV5=%+;M*WGp9FBZUP6mILrnG|7g!V0n5H;}dD(6DB%#ei^NFf2Xk1!xFX) zj~AF+;t_9dTjlgXn_p#lGMQW>DjpHh8KvFqECc>M>%EA+`MUQFjv-~BL_^_{W%LQJ zUXw1Y2N*J!I7s1LD3)*u!J_GacWD6236Nz1qn%d>s%h)%oE%V8QBJs8o?$SaadHKl zXjY1Y=fBpv@en6{^xv0Jf9t5#Io{U$mTP@G-tFwX*+1#LL)U5!%17DM)2Co?RT zK{MEh7EJ4Xo}8tz0u?5Gk;bpp=gqHfTKZeyQc*+JWG53ItyA8ce^YtqjzRKbF4a^7 zvEuQp00b_%gF)Jdbr2s;u7(V|JjySI(>_|Gqft7>xDjkRkH&N|AwUlYsWAEoNZeBN zF~iv);$@+|h&+v;AYTbsafFGY2==!r2B@ZU4gsBIV#IpcfZo8aFV71pxw&C)jRK@> zlZlBCVrD0zDqxcie|R)6mcW^{i<{1IGRV(>W@>Kx!&GUj3c-Y>03Hz-wvQ)=9rl#0 z{xo+`?C|K^Y)FkV^xM|IXcCZ{1C&5tWfldCBf)?0*7z?D zm)0atzZ4AF|nM zu#AUWm-ydfGPu5;$UL*xJs2f1Zz^eNF2@K#PjHcH4>;yH1*yt6r2`mklwD^tZ?m@a54X+fxVq%xK1Z|QnU4Zxu zaG-ta&`&0VKgtHgtCUn8k&u$I@FA(DuXx9#gy7m-Q3O|7Kox=;)2)o)UUj50!9(iF z!U`i9`|OnI{xEV)uU%T@(7 ze^2%LQw4p`TvSc%?{nYByz5WF{omb#a*f@c99*da^yp=CMc#x-)n(!s-f3$ZyH2wben_HGm;-eh~cDHrZpa&L+=Ai@; zL?i_0bCdmx`Bb?7e{s_`O6LEQ=bKNR`~Oe3?&tqqeD3f6-{1egzyBZl;QjwI;J35r zHsU z8ul!XyQBUz$NwL|#xDh3cxiVD^zXl>Ffq>1CBU)=Dm$aGjgcp-eB)+V6CLBHZcj1l ztF3k^0JZ%$AgH}#DFn5jWkuIlq6VFPMS1$~DS4nF>;8MnPx$e;9|*A)H855&K03XQ zUPQZ-aUV7>x$r)U$-D1S^l#xFf2N-S%a-1te-3&lC*${cDTI6lV1m#Mk|;ItSkpo2 zC#eh^9V@#>oUo;VjTah?aj4V5^fLO*G^^Du3laT>4WjyucPIIePkw{+_Jcphoe^I@ z3SHfO6$*X3eHCVRw+%s=)5jFRl{f)f4Su;!6+T42uwxpI;!NI>+g@q?e@TjH{&x=j z&!hk67s=MsXNwE}Hc$Mw4c!0V$A7#1Pk8*2F)_A>WCNRY?{x4wPQpb@FPXF%0|1nhpAv zbhX>~l&=3bj{aJ<{%<~ey7k0e|L^U;ck=oC>;Jv|_kR5^u>WpWe_#HEYiz#g)gP9B zxx&Y94^Q|BBiit=w`YLybPW4@Ts@4FE-#?5 zHJ(xm@a#nB;>jY!e~C;3y0)U-@Z(RcZ~*7RM-&rTdG1f34+y&rA|7(z7Tb%9Jj3UN zr8}IQC4I8b7Im3!3zT+R*KeSkmdp77qY_iQXwho(qCv;H2IJf6dpFp)$mL& zXAr_6g1WxQTKS5{qImcayWG7TvFG(@X(^ay?EF7;^-Isce?*mB?^wHChvZc?TTWrF z$?qQjs1k8Z2YGfrfCY(4UnKd(&%D@P^KGMZ9Pc*{-yXj+qjJ!2VR=v@N1#Wt9n4^>`v{`h3nL#y{gN@EC+>mp(Z z62&a~25$t{f3W`;TvX-zupPX7U37fCl=Hfb(PK~w$N?~sF!ks$hUwYZ`Uq@LlY;?O zmT4?}esJiP_gDnR^u#H0Xk|}bbJRkEhU4|kzc#)x6Q8hbSCesXI*N0%SIa@3thiVE z^4U~ET;T(0h$xK7WrpZ7ZZPN)Fmh5P3X&9f^^3a(engWWUMbi?9;&0CsyHz+gpB}P8lS`Iz8os=wF|y*Yu6k^ z`7oL#w=1ehDSFOR*`l1c7kYQR@H3!wjWWT)O7jM4FUu8`u&zgDf4qYyAe|8)QE^k& z1xfU#f4Sd)QRQo5$T`^!2y70up#TU(dC$V(K+*W`_buRr-MEkL=x0_A}vh))#JIG@WbWF*YIuH5UOCjy`Fbsjtb zZ|;BHGv_>de>;Bo3tr@;Pq%;io&SfOC7bgue5_g?=9_BL{y24shBr+oE zu16s%UXHz}d4!bG-g&y@q=E^Puhy)GXCpVh8#g7+wbW(CQkRUA%PMk~upp9zmm@-8 zRM7O99XX1)a{=p+B!@>iQgBJT*KifJg80&W;-$_gF5sN&r+YWzlYQHP$4?qr+3;BF zf7@O@Dm9>oE_`}3&!1IKx(mHsX(yi*Txn{sO`-{`-D}n;sDp6Ii1>c<gVtef|%n@AJRj$>&z@fAZ3HG7?Dswg+>RRud%joA&dL5xe+&pQmrbVx z$O+U%8izZt@w)oE=0W`Z*7Ae@>BID>?HmCvdy$uL|0BD~E19tWhXE%iz#4DlZTn~! z?+hMNW|d`XzqB2puKevcs_t}vQwH$ZJ#24yo!=3g|R0r?YpV1o+#-FV94zZvGQv$|c zvJ_jvF?w&8{Mjy8Bp|kM2MDG0El5nQWol)WKGEqk>!UZ`DftHRf2STAcl#M=6wAcl zV&;C|XgA;d)mub$`)m=$iSQ&t}G52ATs!x{Y3ii>-YoM43gblpWl<}xS2i52T7btSS+248FLB@zV zZlm#VgrqP~Y6HRBf8-s=b|vUkBYT6{L^z4`T9)vJzir@FNu9=i^YG+H`>`cNt+$%A zci$ZEwC$%#7+EiN+dmy0w~VI&@r>n*`)P`10aD|jphPZ#yZS@FzPg&^tAjM{!ESuD zpHF(-M~~*J{I}m=5RY50Pu^%KR)#Ye8lb2%M@KR6!anq;e+iOG0M*{wkM!S1ZJknT zNhl>Xlja&ICi}Gq{|DdI@6~>gOjeLC;JT4$Ku$VJYO7K(6$0n9vb8`bc=G%#f=z9>!1@jM__5 zrhRw^iI2nHP6IWK!l6;5)*g{^U3GQis2XbI}FVBd<$b4k^f@FlL2oPM~Z_z-_6rZY&)1@_zB*7v38 z0Y%Qcf5Q*el+@CqQe3iv5-b0T8eDfN^BQc7PqP8+2StI^2mE;rB>daPaYt%gfDtD} zwAbhy!+sqJ%H$@jTb<*b{e4`X;=RV3os<3JPZ8|14w{_~lJ!c{!#j(L0@qeB?zK{QN zC!d1xXTM@tpr@B91r40Djgs^Kr<+f#@!tXo@cjP#?=C){|Nj4d{GUJj{r~u3>yN()vA4P;%|x31+6yIDM*4kj7Kz8t09 zP-vm>#eSw^$6Vqw`ET9pFKF{(IDB7R`eK+*IM|s&&x*jMbXBspf+G!6N-at8McN<5 zlV!R~iSCFzgrZZBI|haTM0DGVesG^ge-7xkh_Zp+2C?l86SKSCFr5PGqbRtWYJ}_pC>-I7tF%T{a*>8RmI?IqaqO zsKHD0T-I*=4JOZ?#OT`mF-GK#H}n)?nTP>}^9f2ymX8-PTl+N!^f+qFOV&4EqZKSi zzj6g^oL<5x;>stPUUN?7UhpgMf9`|2d=0<4EOIc5RBBHel&-blR6}4GvXmyRTbUe) zODl_pk%@uk!_g!jC1ZF}Qq}b9AJU>hf`Rc4=b2n2;FJ`K^x$pR|3ZZ zB#t1YC67~L?Gsh$B)SPuh6c~E>#lv zwP^FCm*dU>!Hgo>e$2JyRovUL{bWJm*|&~PjX83XNIJ8FxEQ^a8tw1V9lf>tUA(im z*N&E^gX|;B!u1cycpdt~e;a0h;_NaxPuFm}wB$hJM@{kJ&Oswu>UYOWa%ZV6ihNJW zMsts0WtijZ79s~d(kc$q3ILdl-mlgCgs{l+Nz(2+{3U?r$ z5@Xl_i6XshY-i@cu?|>+-v_!PevR1e3qSGF3-S%Vfa{ zch6xoMldg?@pw`bJIfXJJ07LuY{*h*7|+!pSN=59@7vmkT|i!KK_RBVsK zELvCs-Q8lC^iVSAe?#$jE7s61F>pw#<;e${V0kG?H~>ynsgO3p!3$uK;Qx4|VG z53=6WLbjci5q$|&o@pPtqBfw0*+q3sx9HRqBWj!o3Rf4Sf3c3!b6}3~HSvhIs8hnv z)PrOK^E#ehCi(kXnD_Yv9VK{^(pOGUf)mkKPvLw%W!;kB{`0a0KcocD*PNx#BOFxvuU8c^?!uSX!Qa}h z)%My2HMkCd=a-g6z!SQ?*hpY()UC~ZPdnV5F?u{Ze?}>aAul512?d>_Db%S66lLc; zWjci$Fi!+bWm*J4^2G0%T#jNE?#X=xO*2Ku^Ac~UhAMUw>RqT-;2r5+`YYx^O<03^ zk`6x9mbgZ7yx$QaZLsI7uaq*l`ij-4;U6;$J06I^Qxk6oyM1A~O57)~<<& zqK1nPf4}`(h?c5f(|&o8gDz?eSvI)eu{F?>5@U@zKulJ3R=dDy||F3B>rT zWhd;Y&JJemQ9}s~#U2e;mraUbMOKfre)?(7rf&37wiPf1Xk}NHy%C}DEOK~OT76lg zWid)_#49tLF^|lorW2t>>0N&vW`mlfT3y=qe|C3b47{qLAZwSmhX2y}brIUDuQCSKc#S#8ntCoPqX;DF}-jGXb;O zsA+wW-&Hs?o|-|0f5rA?=XeV|p4d2L;nL=JwSZ;KwqWnK-o~w?;|>OFjvhYU~N``{Bc!ad3nTU>E4mjm*ef}$#a2YZg5Qz~Yydd}UatZ=sW z(BX0t@R*rhjui>7AUl#rhQ*UEgE14SODQ~n2y!J^odVP?s+Ej_D^a`EVvAm|I?Dqe zsNOl=Ic^l!Md&2z#>H-7Ws2$p!TQbUZ-chff*bF;f1# z@r!4E56@STc~{Y?u$+TMr@XK>o^5PY0YS)YdH`G|A6Ki*B#DO)%=5}fYz2@&e=e8- z2_KlvgV!bm!+jH%Frb$HUbtk!tLOG}#0Q>lZfrdPmc&2G$r4v-%_5kJUo! zlYRPDI9-B%f{XoBK(tsUT3rtYwQYrR#ds%ffX@8L++_{RDPV1s^}@`C4!L;X5?XnN z@U)*?Z-pV~XGl){lY^bkcX6k&e|yqy1R<~^AFcv=R3x{oc0AL6O{3!c?xRSc6Rxwt}Rh2Y684^8;8xqxA9S{eH`TYw4V*8ANiSl&mxoBf8mHOtNbs% z%nbo2aDLvXhTGZ^t*?lhx^Wk3qI>=gyvwyv)5W`=z!p;MX^gq5ZFICvkXDP|4zSlF z*Gj|UZzExuhxsYv>!2Z{Z>HfsfWd6X)SReHRBcO&ddu)Cbz$_-%~(# zfH@23c%dJG3&!#s@XeFufAAEVVU8(Q<7+p}b#_`!cV8BI6`{lg%|x$l_$3v`Z<;oq zs=EM6c<^VF;Uwu>gO3w{p`}|gLsP~>tLjZAlnM_`wvF9b>%j}R^v)n`~?_~Jq zAR?gZeESkp3zne3h+w62(%WD(g<|ZdAST+2FUDv-tw-Oy{Dv1+e;w)#DJ=n4SFni0 zn1iTDBi8#G8;E6Ic@@!8Z30x@Y?eb)@J_Wx^?mD&wOBe}a3~ZQZ75z6PLHC^GLS%= zpP{JA^`!{-2vlKXIk4P2*bE@Y4e6{QP!Val&}{F>6V2LRu%Z6SE3*L&b{{A9@74>p ziWaUWgGnO11R9uDe?55Xx92V7#t|16zKLB7XEd}$DyG9@Pp$iP5kA$ZzM}o6mu8AQ zK;qFOgFw9FbP?~<+*hRZDz|h&$`rnad>r z%`RiURgzJ*Rl!^N3Hr#n}QSZ3V29?Tk0iH^el6Y+`Z37LpVHU9p(X zMt)lnT`_ghf9|hHTQHAlAw`SA=Wem4S z#&1tC^hVN);crz;M_sHpT6Htm4%1o}bK8?k#gg^Jx0?9Y5_2Wd))8|RA*>6UtgVcU ztszT0WGnx_uUtD{;-|p>b79#)%JTm_-FR-_|J>TRfA{~qlh5ts|5@ke?|3pC@$^5K z%z)+k;ji#<^ta!vf}cDkvjLS1w#HK>a4%{nw~*FeFei{!UrR0IU=ghUxrcG?Pv!gH z^E!Y3rDXnZKHl2cvh)8uf3k5O|LaaZpWpxc{{Hv9|M&0W{&%^@^S9Fhs7v;R?CX3T z{bfp{e|lB*DED6bX4*%hi4Mx9y#ycdC>~Hib!qqNT$Ie5FSke_#+1ZJPd|1|7E>-|y^4Tk_@WlQ(ZL zHQRCHAU-@f=tP?v(mCIAJ^nn_er=0_z2WqjKa+v{O5Q zae|l3Om~d4q?6)`w(KzushL-b4SizGjk4oQ|E?rJ(*5@| zgFOPrnxmUdQp{ETK0Gky8E0|#Ss0Ik?u$4dvvi-=xrOet%u);MJquA%(0dWXWR~9Z zIydb7IPIrNZuWkjj?Wr;h4++0G5cT!eIlYVwK)~Ui-h+okhCNse-v+smBL4cD;mBk zM%`Vt3%J)gtK|Jtjfs1C46>g#N~p48>X;jU`>xga-f1qr72R<(>X^rTLD0+kRW254 zx-deIMiSAOGs66?kBHdi8Db}(VN4X`3YC4;@ma7Y?)sS7#&Yj~clg|mg&$;^&}e@Gn@1Br-g=T6YgHOFRQI}ZVpMU1Fa|& z!|j^{;+RDpM#~J3cABgZ$IxC18?b36G?4wjN*D7DnE< z5B9O6?WB1>(G)0!tf%k(8yPE+Ch1pSNdS+cb@-p3e-ZItg7olfLl_G+86D`wtSY)s z^1dZ$dtb~62Da>Z$R({ zM!>J;*CQ2-SRg*Ts8u$doC{sV&5^H`c=buwId}AhqE>{oE|9f_v9v#{u>IYLQXYMz z>J>Fhe;`tAO(M=L0|`Jt28w|UStdG!`hvwCM`&i5R(AVq;qqvHdE*r})bGWJ67j{q0m znZD0o;jxSC{r~8XGsu!Wm)Uqc9OvS$YT?CKf3`Kk+b9_kFv?)!SAz{@%{wV0uK~%f z`g8V+5&|Uce2j^o({Y--S7krRZv*XSnQ=w(A-jn>S~gn{r_LL83uOu(eynf;HJ-si zFXHf)pW3PupXQx2*pe&hcz}+=$rFm}e?N-?(M~v>vUH&nDFD9WT=LZZlBUy5rb?Bm zf9UPOg69%Hmk)15oa{S)V7+0sokB&ufvMYz(Hr=1@q85#=BtS4a5^|{p41k;Ywc8- z%22#BEcmm~`@J50-h%}GD$OxDurbsHCklFACoxnNjue`M4@p1kVH^n{z$6`)?TV~D zgW1`-+~u$>1SeaM=%(3>ty|dErh)Gne+rE4?8br^z#bdHz%IhebdtCx+nK#FxUIkt z%z%Z20;SW6SURmD2Gf&n{egu8>*D2rwpR<55jyNeZ!!32vRHCPrtX4KHIo<_qbh>Z z{XvG+47FErSp9+dihkIu+Dxn6v+zD(FS~()tn}A`oEJj(+kW;#m3* zKzJ`h=O6n(QXN%xx|SgmI?owC7V^t5;>ut%?`A@!1xmz`hl) zLR%YfO*Dww0jc04BFTtN4^kD+NIeJ{VnU(xs1S`=Wd+BF5PT8QJd#aSK(SOxEKn?X z+Aoz1Mu+NN_FssvoLp_IfAgCXbr1Mk%^+gR9((ecWv%h5E?0_g-F-_!jIsYmNy{qB)y>IK7sZFD6e=7PcR|ErQ`?3U3zU7s7 zx&+#`?@V>3EVbQGA}axN_N`d8*eMMD>Z`!)!v2ew8dmIaD8-;~cM`|K3L}T}LTH(d zumpIoY<6Lo^Ty`Sp=gpi+^s4^_Y>ajrRpiyDlHEvtM87V6D2SyOgW+Vrf$Ha^mo}W z=0l#&F8jruf0wt_?*}1XvG`F3_4WJxNx_!Os&?V8tXc!AQmXXjDwpQ zH4_wJe?}CgRe7fVc|b{4n+=c+>eH;%!=P%MZ?J=cpp~&xpl*bb0`)1nxt7M(U;j!;Oo-_i&uImT z*Gu5ue1iGm;z!>dE)uTR#U2ZbNkaO@aLM*Gf9|R|xFCG-quW;&1($ceXcHt!wOl$$ zOgb>wiy*|^&|&qJ*IO2blf9WoMtGO8)mJRrAZwI;myct)vgyB39B-GyO$Q%DUHU2> z>OkdB2Gd6eyq^jZ8_xz10RK5Vu^C)c3}&uc0WN;@bYy7MC7zpeZMOMLWU6A^&lcDD ze;Ce$y8waXz`gNW6oAX;8lt=~`OEfPw8BNW!bQNom;f4gRi1Tkgh7Lo@nm_nT9`d} z-fF{vtf1z6W z8WhSWQM9(XmNH`}Rd~>h|5n(`_?y?y&CE?p`QbL}9V3kxK%$YfR9ROxZ3|!EmZb(& z4DfA$9gZBR%8(a=%>w;-Ny)Wjdw*#Um9AC>Tpu`NSSRD$s>s?3G1JP34Qq%AzwCH~ z-BWv>Z5Sos#!i|vwr#s{W1Ed_^NEedwrx9U)Y!IdYx2#^#vHRT^9SDJ*?KqbYpruN zY6@wZ1Q>VT82veXPZ0iBTvTF!2PiFoYY3Spuw?a%n*WsRTsq3nE5G_zp z95?ujSg&cIM~n%dIe@R+6Q`)&VqSh5gzb`bQvQNFZG!11`p66ECy9O%2#}PFl>onC zIttF9n%<8*{LNC@k1N%6cLAvqGs)^L>T98lluWG0q2k9)n9Kf(0er=;ch0f3NV$=hK4Mvn}r0wZ)ZZl|Q2BW0$n2st7AzeGgF^<^_o z^nZVME7gCL)kT}BE`-%a<4*=tqvW*DvDNl!Vbpi1U8E%bIfOJ6Z(RO%FcQMrH~amr zpQxjCC4|9%n;gVm2oL_tI1GyCs?}5FrjVZ0${H)35LfRYa=iFSXa%rz&#Tx+7jG@C zk-}(jW!;(((}-}SX#H!Rv>%M~&kE9C;t>A_dvod`n4pVtN=JCC##QT`+I>LQ z>?s2mVY970kZmWj&_MDkRAITl0L3hmcL&%1RS)ZN;HyRgGm0=GRF z-fbU)7Yb1tsWmt*+`~)>q_){L&)gVr0AJk&pUUmH4StvTe9|1|ZsX<=HQ1C0u032z z3@HwusveR|Xoo;DA=ZybjgY&U7X(JVKL#T@yb7Hy{uON;SwJgbao^U0`v9)$Rj|>d zWwv3}gwy`@Vjy=dXj#22+tvwrr14TfBHxg#a+ik0HRNP+S>?X^+8~yv#W-MS7}d?g z&)-*3&IyvgviMvV6!3E>+bQK0e|TffGDl0`_R9M0ed0qRf8mEqr}*pGKDOExct{a7 zKiN?$Y3rdtClE}D<{7s%p*bcRO&C(HkqF&6!}8D?jmfL4#q7)xq%Jr=#HeUTz>i*? zM_(avM&UTH6{FfVd!53!?fj&xP)5fbE_v3v+>;AGLt~>Jdu0@fYTPr=Kce zK3}gD8a3rliZ7PWz-|n)_UW`RNDaMRsV8&e>p4?W0zj@{DQ>@`WgGO>L9n- zxGQacdZ4OKsv~+YeNzIL@3-tC+c>T;`;pyJ37+3qa{-*E51U#l7Y{xOLlpHl_V^76FB_M* zEi{+7W=hz}8Hry6D9DD(OyE>P45>weB2%rr2@}Z-EZ*8z_AGb^`VP_cSx2_g0)PF5 zBf8bS8iX}EIxF!iXZF3RuWlh*!M$#)qinUAa^Yao#-OuzBlHw#!M=a^ZaKne`g7}6 zg#y2XG0m3jY7wWr;Wj`%I&;99gHB1?q=yd8BflbatHZth`d%9ZS>*5G25X+Vw3`22 zE)6eo(Qb#t)nTW7xaoZp*aVF{b&&3DT1#vpeo6dgK}OqG;`7QvRdt5t zem{z(`h*Slw+rw#f2*43`f66voY}>54oD+k8>bzPxc@T{(;*MATnOVnUl;f$7I3^z z72$QoX0w617yf=z`fJ7L6v2>vQ+X2Xf+*N=Nywcy3^v4RL zbp-dA&7Zqhe_S)kBDld$qJReS`y|Q5X`KV+jaxxls;>_NQNjF!(svx9K}0nftbuqT zjXggGhNr9OC1l;YrcH~x7``+Qw;~s8#NCP+UH?f+xn`4!PY)*j(rWtUKbnUcZlQHQ zo>mX(*+5ZXCv9tAavhd-SWq+e_)CoKFmjC+7blQU9az%h$x*XW{9A7j3@4S}$f7jC zHG78aG2(QQ_Q}t^0=XkRr8!tXh1?V6$BO>JzG-70u6)rbKvB|`3Q zUC@cnkfWvZ`K&E~O*IRfKo>fGP21=oe9v#bM^HnJP*c!B7Cp}f(yX*8T&B;1s|hHp zgnQ634xpa)@lGRztoxvKc{ZkooR9{#e%=b9-mEUm#aJvSwP(8#w~b)mk8*PycFt-3 ze#heZW&&JSPWu4FW}ht`rXhCeAK0pF4%-hqzSu0NrbJV~c0rB6Z2&^Jrhv}e|uGPEgF2Q&CpAY zndi6&r~%4Eg+4ipNfgxMNQRf4TT#iPD#dpTT!O~7>jH@nX zZC-@@O`fqKKLZnbHl9+5c?tQU5!XRkBaC!~q5L0@)=$ze?=m5h4j^ee4AC=24eBP$ zT)B}z?oxA>(rb_{nw^)vZt=Vq$}GRo8UVZw{d}zg?+#1p z53^q03jZ$wVKU3=<4ZuG1P|v|V!aia2K1)ll>fJY!1_TD{C;fg;mDrym65aNUvDA! zY=2V5{QRg%zguj(ZT16uJ6n$LdHU&d<8@oh_A!}l#s4bRP}^b?{1dpj*3;8CIuvX` zIY<1pxO?_y0GjT%f3(ipDp`NTd9Di|{JzbVb$E%mcryJ_(2Q3=_8S5WoaG0q5MB& zgth*4<|A))*SKhgTS}}y4=bZ7IIP_Y=RuyS+Q0ghoTMUAN?6*8DssL`@`4BsK~C)v zBSv=y-kG}{3jp5#Pe}Ox0tqi5Bnbrg95|UJ_mKbIQN0&=*UEoIk&~N8WBr#dF>gP=!Mt)Mt`X(WM;uXOWn>oy z+>Ru0hS1w~6IQ9OKMkD>I(oHzd06&hhdvB>({4{hr`K+X0CHGS=t$|275C9ifA0YE z{eMhCfDHgU?vpO(v21s~llWYcow+hO#lM>%9PsD)dlL>A96nO8KL44qn}-R%;R8o` z?AI~1QtnBa&m=X;P~eB_8ds=OkF|v7q&Ox;{+O5S!1%A^kzp@iHR*ARl+0J=pO3zI zbmf<=gek8;FqYtTR7YC(=F0kVOtjP%@y`rQA8P7T!%^ zVZWn-F_<@$J z`f>OU#f(2i;xdro%|@TBgzPdyI1XLmQ)%*tUsGd&p*ox-4+7hWzGWd{{LN+^l$fKLCxox4Oz_7_4WU{I2QHp3ToELKgfL=K zS)BD;RS9w`th*tEnIA;S)V>{eN)1Viyv91P0Pg%GpK2)LpB95Ms5~o1&B|?K#j)-) zCKwBmn&UR?V?sJ^!gdl{Lv$OQfTfX-)HobzVkY{ycKu~cPPJIx+~lJEJ%AT(n;MZ% z`D$wAnjZwa=Q+}QT(|DEY<>w=T}1K(NRm(Vki~y`&Vti zzQfZFwVR7;tuh@hu^Np1O6yp*QT}MqObWa)X^m-qxR4Zy#<1OQ77LLgL_MmHhSIxI zi(5luPS~Ji^iiG}e_o`}!!KBaZUG>IvmpzFv4Ls(feD5NA`QM0M<>)QE<10QolBuf zzsm~Jk9@NNIuTsI^({l;+$rtelgX;3wL}arHFRUX?}{?xzWBvsOWIXcMBp|sF6aV$ zV~eQkUF<0v>;yS@I@>eVJWYsT^%?sTAp_|*j<(JN&6&GE(un9AO+`Dl@G`)xGuOhV zP;ey1nTa5%t~>C2Z~PPIx6>r&CE~AA0TKJWeGt7!(i#?B&{VTX};J#i#gJJj+kJ?VPjn?x_6%+MnuL*;CGA$e_i1Eik8Fd#$ zgqcw=j5huG&tgI4lD_&KES($>H|(K_nEk!3iu0B@IzS#sx!dz86d-nZ{!1%J__##5 zOYfLgYzY1{rU0Ja3zc~4(Lsat5M*mv#Jmy`19V>H35uP&mTZZ7td(Wl;*a?9sN0fX zSoZxr<*^>wV(Y~b@_zpjHJQ|n$_zk&FcX8ReucWqAEXgAE8O_E4!Q>L_M@9n;lIIB zcF)T!vbxoou3G?OBg3d$tzZWH6hnjwgPV&>g$&N|7^wU#XBvFy3+)WXk^FzDxqUsuI| zRP^A~Lnl~xevuC)IbTDchso!?>YS@9S+Z$$6)?peYh!;wn1YaN!mtoqv%EZwms!E* z@7c}1uWum+H~Jcc-foSw90euXx9LWR!jgw9<<73RDlp5^k20kE6Fj)4_V!d}`>SbQ zeO>tvl{KK0raWWRuKurVapEJ|z}iM5l&vR?6A=aVgb8tOPe(w+3j9_AYeSyZw6=dpTp7(6A;RCQiu)aiQp~u6 zlN~r!{DMru7AYX|*mk0!EcASAX(?x_AE1n1Pa|6e;7Dq6a|@CTAJe5L+&)OT!;ijZqLexD8wquJy>gDRv}WtZN{*Xi>N?ar*Io{ zW%f0O^TJU)ovfo))=r@!`HFB8lV&=3&0XbGwe$I+kED|@I zCiKI4^zyB(gBdLzg?eJQ#2$9iq@k~A z*fH5j1NV1}(N&KSe%U2qylEtl>}51#RfWWwaWDKWvxGDR{ho^+tQ6Wdw*~)ndC15l-G}~X0Fj; z)#rbzheV=SH-W)9I5;Bq&q7Vc5)zj)MJcw^qx{S9N%B^v(9Y_tvhPkb#oO6W&bQV3 zx2L^P#@xL)^Dmv0!z79-SJ8%DN^(zcjJ2?X>|k$&y29a?(h3qPb=Wf-nV^6wZ) zFUrp7qu8_Nyu7mF*>gpM9MAD+=n6pmKEgxv7`9vK?7^ip)xv%N#P7SDIGLf5o!slpN|Jx(3I1IIc_HkMyAF&BHCh4 z`Z5|kEZs&GBZV6vN2890S=-5?YiUr_33PXu%NmC1lTc!|V}EEu=y7`Wgnwo4GXBvT zOLS_K^r2et9Vwu7G37CE?GJC@bJ~+PCl4A*@|Trgp}^(1LRR|sr3R-ZTW2X{L>-F)N9ej z{>(Xvx3u%x?FQyH+ws}{wY0wb@o|~y^&z={GS(d?Yitn^hg7_4lcp3r@FvJS0Kf1= znj~rgyjnm0K5Q53_{!ZH;?Kwerv;r-hw|BD%itA>hKh?$in~7wXE)AypR&8(4^Ut4 zwt#3C%!c&^h27rIl>4-h3f&t0=9feAD~yj)ug_0|ukyyh=fZ3h-Q&mS!uwly#AM!= z3ZVC;0(|H>yl;BGZhAga_^pWcxL|`(mz-Pr`TT4(`w-mt+BbRAd?&+tDV|2Uf~*eVy60DhKW}nmzp6 z6*>&u-REy@573nR%RbCe8L6-}p&f`6szM_AkN_9tSfT1rpdNi3l<<%8;?$|JVkft##Vo4e-uSC;g-VR{in4fgrV zek@gTo20VJG! zDbprcJV>1qJA_r2D`>ecp3}|H#MNjbd$S*HK~ndoBUXJcdp-PpMc9-=%lh)t*P9z; zQ=(2$!FTb`OqHHUH|#Z_joLt>-DB>yGNu_nwrFAY@&!<9nKe~6w_)|wEiFx&fXGhP zqKA4;+l@4@iX@fr@(3aZ1jkia7^Q+F=?KW&C6$6aUXlk@sL!N9&586^BN64o{E+*BC=s)+`OCS@qYVT6%n?%U>9kOqoovb)SVuMbA-lK zkiqbMOnD1Aa-{If7oAU(IiX;5#7V&YjM+X_-AMT~$Z+8pxbEgeL^JL)q%A5i`<4P@ zva z-KL+-B5C#6tA!svvK%C!FC8SHBZG`_I^1YbXvA}u<`@42^1ZEs4^%6dfG2q%SH5iw zpEuyiBZK5^kkvSWG*>&9cOE-Gxs<8p42oWzirLZtd+9+Ebj`tgS`>WZFKvL7#w@v=2J{Tm~=|!o6XOD;AR{!vY`6-3Bm% zqUB3~+cyEb%Y7R2B^X9z(}fHq`e^5*W?a3=ao>vWMNWflnBcHow37}q8G~?d73*;ph;FDkzFF;)8`RY}d8m`z}BN$+`n$)0j)x zvBqfZ)7HXg)QP(3_PsO>UYw$aLj}<7cbF)S_ud@`xID>^jg}n7mKo3$NB%i(Qc%_h zkE2J)#};p;HFlZ>_jx90R>(Xn{3}Z=VkdG0i=gbfo3wl_IETDl#dr!zWJWYJeyex4 z&R!ve2&nN&Qb_v{3^s2|v4;h347<|i3$`vl!UlfGCNe%!(RWcJ#W*$})&P4dSI_L{ z^OO3HQ6$5KDxL^D7%Q3ZP!2?giw-Y~b$?t|G^vIM&x0pxQl_rwD{*B??H+D+1kpFM zjEN=A*up|a8LB#hAVVxd95|-ghH46B9kT1VA}Y!&6ex8JJ{m#kI043gSYoBC`Pz*% zcNyz~rI3RBS zD0@wqfQVN>whrWcp`cN^{=?=?k?W<$x{-Speb8yI9?DLi2h9twPB?k2W!jBf+?&E; z`X6kk(kU9x_UIfg?FcJcaYU#_&X3~2Hw zk^E`eeTCW5)$eqpigi@{0gv;ZyuO%y4)vi#NdUVVK+T4)xM(-r3^?g!pPS$M% ztn@Y9qLuL;+az4NIq!6FzreZj`9T`ubXNLU2Tzv8pVNa&24MMi;LxV!DfYZJWGD86 zy?-QmC0Z`H*!lR-#Q%M*`N*d`JMT4HQA@j91IKOj_Dgo{ePVc8@A!N^TVB}h7Lmi4 z9oU)7e)}+OyiVS9Z~?Py8tox_1e&w>JS_%3mp$MIE-ybfdJpS2Ki9pwU_ak>KTxi+ zA5pGIv9wLy0Jx8zeVlY`_#f zmBk;)%fQlej2dXIjCcHU$F;zgrTn0R7aK!Bzj=05V7)Kl0IpESi3?iwT4K%Dq%-kI z{;Rh-fJ2HZ-*w4wQvuktwT+;GLxh$kWQf@Zr-ylbEEzo|EL>wHVeD!Rg`vwU zcFAy~YrJTz-)&B=4Rc||8fRmXgdR7!wt9!h*^y@s&sm&N%2mA*$7#5Q{Rm6LNkx8U z7>nI7=UVyXj(g&48{P19&Ses-E>EiIf%Q(_evPKkfKkKMS%}yQ4|xNFq(hL((5@yN zpiJ2^n5tY)krBen2va+w$Buz>6E&|JB*N36GTkHL{yEPj@lzYU!? zlDQ}JmZISqT(nO__W=@EkGy8GF|3w3>*WRqT*Vq4SJBQjw!I(juO)7RTi;ebb3D12 z?MiQ#6)-e{Im=(G5hAhzcT&tcIa3}emP@k5#yc~fM}Da-?+K}+dvxf;4hA>20p|j6 z4;)LTC$0%XK|M^?r5L#qT(2hy_MJQp;{3nWJE6x1v~=j^ZJ3T~p3t2B9+*s~#*x@8 zb_%8QMlB__iTvoC&8YChD8+V?UgYVLo(fcssiLpDfJhi3+fT?7$T1{u{+@-PKk6Fv z?LS@;B-jN z2L8|1nDK(I=tMqu50XZoJoOA}QsKOG6O-g%JS|f#`lvFU4v${M4P1xb;+mG22Wh}* zNes~&eNH2|k}GlnwA;_uN7f)?H%`9p9t5&>uOTtIus!CwnUHbb602b|T+!~`s zihs(D(-@`}5mpT!P8$bPig~pcOrz78+wkSUSe|8sBny>@aNZ8B1@e@>{#pKbo=~UQ zjIhk$ACY^r4%qWmqghz*Te+0EJIw*>pG3F&NV`I+D zxge$9@SjydSJo(1Q233pz(E8~agMzG8!mUwx$L2d5}negs!*#-q8^wJZ+Irmw#uCO zhaL(4(le80OrT+!{^tFi(<09rR&ZAD_r!qPYTVVNhyctoAq+0Cc(WkGPAhxc>92Bi zeEP4$PA%sS`P+jJCjNVzcfV=d;G^yNfzu`=1cmU{LDX_r-AoxrplRCLqQ{bBanD97 z436un7V#M0lNzi}kS=DhxsN$(*3xiP$0#EIx%d5k!Cl!+jU#83OoM@A0y6wzCWmj& z$>(8Tir00qJR}HuyxP~7CI8nuBKb{+mYFd%%_@I9Dw%F*{4^!rodptv@bZDgNLJg{L)IS?>xj311cI)cX>a2enI6xd!9zd^nppIk2X>6S`7v96o zzWO4M?A}EUj74-clAHY=Eak*TKq90ujMn!+Yv1KOd*qe-q|B#jKf}}4qMCIYUjn9Q z<=H!AU_Hv>gO^%X?gt#u9#?86B`d*>mnRmUji0<$vbWWBsGFPCDO;bdzDahYyle|)0%qLNPl?1BWZ4B8^7lWL=+@1k;Y@He1f z1DXE9j;Q^C%8YxIi#wdB0~3io#9GlBrhaJ&AZ|o$Ck8>kMi3d?ytP<3j#uNg7@6H& ze(I%|k07>IMY*qA;#YY}%M&Rn#s`@^Lj7yUQ;O@<$e8q1rb~&ftQnT6789wQ&22p= zRo@8$cnyXu-KQX;hh7LDOBV(gYd90m&--11AvQkCTs|4Hqi3!|XbC2q(VPxmv$fK3 z=r*h{=D3A1U~CMfzR7V;8O{8)vd5Ms=rPVl45Wu-|D7ve9pxP>BunO@SEThxI7PjgkC z4X(?yYWam85fusnh{kobIh)8wb-4JW6)OEn!vO|V8l;4Q{9V`c!3kY2JBPI=CK~{s zJtm#!b^Oz^p;@$I+==z?w-in+Y3MsMt--yy4Q=1ZQ^T!Sqd1Y1;r)tcy6$3vdYHQ| z(eezwgi%iM`55)!^alNohbc(O>T{I&}~WMF4Uh{wFK()>mh%{ zHHR;?{8PLbC)#_#^voPYMWsT`jg$NVP5W^BUp3#!BERN+TC4!-qFG=f4hUsSMG_;l zCpTqV*41g57@?@q(|zIAquBH=?`S#m@$*aKyKveem-+j-)BGS& zJl^&GZSzE-GTG;MYRQA7w#|$ zLvGaXJ69pQZ%SOaU02I+;Ag8o@!}i=qErxeZX_%Uo z6|(rM3P!eemCh(RE?UAf%X03Kw!R?i>CG6lEV9L3ujHa)t6L2C=jo-%giBKR9&{si zC2-%vi!>$aC^}Nolif<;dv>pZWSqd{vi`v+w{N-2E7e3sq1T*E?$pDU5#8RCCVgH* z)haabHHT(0@Wdp~%+Db8s3dMei9l$DfI8XYtaVPd4dz5*nC7ed#8J}`-F|Uc`R^B)72t<^%qIEZ+AS(+B+IH5%IBh9jrT_GLMwfxYiEAzX3vA{WjOX&of9@$V0S_7=H}M4wI2xA_7T%@}`e z<4*zE+0#=d9e#UTmGHB3nv$xa3t`tkWbT51M*6&3&U#-~$B#=RAa*2GxW_ zk$5&sllQS6O++gn>ZeTYSCJT{d-BDb9VPQ%^)hXSLi#c$AJpkfB?EQ40JRa<2*kO* zj;`@b)_Vk!mJ?MszH9uZ9fLuJ^2Qm?+!w_@gp zh(rN$n245I0|p4ajq2GuP@g zINd-5!d{%SepzGJ7e0o?c)|b@x9xyJ;$#GUC$+l0yieY&!tdHt^MR&CA|h)F?Y)|8 zd{ekC7>^Q+AE-AZgU~0Pb_47>CNZKR>oP)UdFfV`rDZ`UC{(uVO4jDTh|R5;gE=di zaO42Kw7%paEdeGIf**oIZN;JC(jUdEiK<62k!)kOZ&BlDiZ|DkZ*+a%*jo z)8hPc=(Tb|;mzjI&bAx*EBzOf9zubDq_mS~eMX(Jo*hgoX-3SzK+BbA4P!mJ6aHl5 zVTz)Uz@+mweF_Wl9=uXjIMRRg+N>v&wJUi3XOdc5ip+ely{dR*8ZUs-I(jNUpbDVN z^A1<`<$k$CA@hp{UA4-%m#p2?q|KXRx&ejQrO^(lg=@l zvu$-f_wkqZXm$O#9d3>ID*LWaYhr1vWaoi@F!;h3sh0o(8}pb>Iab_C*USON)HY1J z%rl9ks}0>Y23HhrKfDGhBWxfBeg(*C2OHd?(E``Sa#PU2iDQotDlKEm1QMG#HcnJV zOkNQ=(&D5^NG*>K>PgyrII{jqGIVI~97fK|z*(-|$DBTat2etsyZ20j8aE(efd+;g z+efK9l>G|~f#RW+a&luT=C?xZn(}M3ug;mZ5XTCqQ{v|qM|b)?HIcfwkOU+l6ivTK zx`+U3rfGq1V}gQNB&~UJY_1+OcaHb|mnK4-4g=aG-tttgsOP@+H;$gWYww5TA9@&Q ztCSC)D@!YDYfkUo?3eG|7dwuZpU#(`_aQf*#6LqLMZ+~|Z4J?V>p{fI4_|r(Eia9_ zr*kW>Wp8UhU}r}Z^54DdX94D}uJ{eCdNo@6Ye|OqX$W#77-OWAul2P(-vl4x(6cJl z)~FADyCY17doqG<6Ptkda|wxwp3aA=9YY{URj=0S8V&cPw#6H&XHZq=+tto!41~#$ zx;9h`LWVmjJ(A)>exIFomuxCU_I$vw1GJb>g;vDi0Oc6qZ@-_>#3A7ybdQV|@HDe_ zE>dMskPFr+q0z(`Aq4478Ymhx$NYU4D%zYuc1?he&^XQNGfA)ups9+3X# zl;4gsHEM!!u!qC%VUG@SA#j#i%KT!r%!`1+w?&StC14re@k4_3JeDg+IxCUr3BI<5 zZnX?1=WPmz-Ri9hZFR}>|8c^P8ZJu2fCZ1DeAcDrF&cS=UQFad+!EN#juF;c?8$eb zi++ZU-g0Y$ta|GN!?p%%C^pa)sxaG+JgoJ;}`hgNJ7Y$;QunuQ}Auvr`D6>#|X zc#LIi9Ub2*ep;fB$0948QdF}^7PUZl9*fzagr@oURnf##Ec*H4Ib_wgD_?Nt3rF?q zvWV4E)3eO!tk$mz0Qs24kBvQ(kArISc7#P}7`r-Ow>f2clQC^2FFHQb`Fvwju4%Tf z=MVta92&dl*=W;_RWibuo8iYF_+WyQOP2$l+ojBMN0~i;tkcx;1vEPXIgG3N?BoD1 zFB;s6<2-UW460JcTSf;)3TtGrdg7o{7nuGH?jJ91#=71`fyC13&zUnuc_gJY)iCmkX>#SxTl9C)uW!Vn(6^BWR|@m+DwEgGB%{uC=n2f@TDi z4oP$eB!euVcSpBF3XpK4lKUrz+_W&W4oyBp>38FJxn&fHYmcTo*#cKGt_B@Yl*Hlc zFVK{wUd*OC23ZplkQ26+dmG_usd3}|f3J%68>G-u!$;Zp4e29`!{SEdp|^|qg9@08 zr;2HJ`{W&OcOc+?TNYm~$hL;JF+Bl1DU}q?ABMlBXU8&*MXMH6*Wi%ux3MR{QPPwF z{_^q*rjG_R*=Jog4=gYw6~IAT2<8!bOE^!XUU8@6N~(0xU(_34@{1Z%cHFY>^{{