!173 runc:fix init error return logic

From: @zhong-jiawei-1 
Reviewed-by: @duguhaotian, @zhangsong234 
Signed-off-by: @duguhaotian
This commit is contained in:
openeuler-ci-bot 2023-09-18 09:10:55 +00:00 committed by Gitee
commit 3486910456
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F
3 changed files with 53 additions and 1 deletions

View File

@ -0,0 +1,45 @@
From a6670de912095206f356b8b7b486d237d1012c88 Mon Sep 17 00:00:00 2001
From: Kir Kolyshkin <kolyshkin@gmail.com>
Date: Wed, 9 Aug 2023 12:04:26 +0900
Subject: [PATCH] libct/init: unify init, fix its error logic
Fix init error handling logic.
The main issues at hand are:
- the "unable to convert _LIBCONTAINER_INITPIPE" error from
StartInitialization is never shown;
- errors from WriteSync and WriteJSON are never shown;
Generally, our goals are:
- if there's any error, do our best to show it;
- but only show each error once;
Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
---
libcontainer/factory_linux.go | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/libcontainer/factory_linux.go b/libcontainer/factory_linux.go
index e4ef518..0b2aa74 100644
--- a/libcontainer/factory_linux.go
+++ b/libcontainer/factory_linux.go
@@ -294,13 +294,14 @@ func (l *LinuxFactory) StartInitialization() (err error) {
// We have an error during the initialization of the container's init,
// send it back to the parent process in the form of an initError.
if werr := utils.WriteJSON(pipe, syncT{procError}); werr != nil {
- fmt.Fprintln(os.Stderr, err)
+ fmt.Fprintln(os.Stderr, werr)
return
}
if werr := utils.WriteJSON(pipe, newSystemError(err)); werr != nil {
- fmt.Fprintln(os.Stderr, err)
+ fmt.Fprintln(os.Stderr, werr)
return
}
+ err = nil
}()
defer func() {
if e := recover(); e != nil {
--
2.33.0

View File

@ -2,7 +2,7 @@
Name: docker-runc
Version: 1.0.0.rc3
Release: 213
Release: 214
Summary: runc is a CLI tool for spawning and running containers according to the OCI specification.
License: ASL 2.0
@ -41,6 +41,12 @@ install -p -m 755 runc $RPM_BUILD_ROOT/%{_bindir}/runc
%{_bindir}/runc
%changelog
* Mon Sep 18 2023 zhongjiawei<zhongjiawei1@huawei.com> - 1.0.0.rc3-214
- Type:bugfix
- ID:NA
- SUG:NA
- DESC:fix init error return logic
* Mon Jun 25 2023 zhongjiawei<zhongjiawei1@huawei.com> - 1.0.0.rc3-213
- Type:bugfix
- CVE:NA

View File

@ -130,3 +130,4 @@
0136-runc-run-resolve-tmpfs-mount-dest-in-container-scope.patch
0137-runc-Prohibit-proc-and-sys-to-be-symlinks.patch
0138-runc-libct-fix-shared-pidns-detection.patch
0139-runc-libct-init-unify-init-fix-its-error-logic.patch