!138 containerd:sync some patches

From: @zhong-jiawei-1 
Reviewed-by: @zhangsong234 
Signed-off-by: @zhangsong234
This commit is contained in:
openeuler-ci-bot 2023-12-21 09:22:30 +00:00 committed by Gitee
commit b603a5e691
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F
6 changed files with 146 additions and 2 deletions

View File

@ -2,7 +2,7 @@
%global debug_package %{nil}
Version: 1.2.0
Name: containerd
Release: 314
Release: 315
Summary: An industry-standard container runtime
License: ASL 2.0
URL: https://containerd.io
@ -72,6 +72,12 @@ install -p -m 755 bin/ctr $RPM_BUILD_ROOT/%{_bindir}/ctr
%{_bindir}/ctr
%changelog
* Thu Dec 21 2023 zhongjiawei<zhongjiawei1@huawei.com> - 1.2.0-315
- Type:bugfix
- ID:NA
- SUG:NA
- DESC:sync some patches
* Mon Nov 27 2023 zhongjiawei<zhongjiawei1@huawei.com> - 1.2.0-314
- Type:bugfix
- ID:NA

View File

@ -1 +1 @@
b321eaf0a6a358dab67ebc5f3d5e4795a5e3354d
b57240907ae3e0f3f5251b6f28463ad61976baf4

View File

@ -0,0 +1,46 @@
From 55e0671ff64532964c2de038d98be0e6a73bcfe7 Mon Sep 17 00:00:00 2001
From: Georgi Sabev <georgethebeatle@gmail.com>
Date: Mon, 13 May 2019 16:21:04 +0100
Subject: [PATCH] Bump ttrpc
Co-authored-by: Giuseppe Capizzi <gcapizzi@pivotal.io>
Signed-off-by: Georgi Sabev <georgethebeatle@gmail.com>
---
vendor.conf | 2 +-
vendor/github.com/containerd/ttrpc/server.go | 7 ++++++-
2 files changed, 7 insertions(+), 2 deletions(-)
diff --git a/vendor.conf b/vendor.conf
index 0f76be3b0..35c887dde 100644
--- a/vendor.conf
+++ b/vendor.conf
@@ -36,7 +36,7 @@ github.com/Microsoft/go-winio v0.4.11
github.com/Microsoft/hcsshim v0.7.12
google.golang.org/genproto d80a6e20e776b0b17a324d0ba1ab50a39c8e8944
golang.org/x/text 19e51611da83d6be54ddafce4a4af510cb3e9ea4
-github.com/containerd/ttrpc 699c4e40d1e7416e08bf7019c7ce2e9beced4636
+github.com/containerd/ttrpc f82148331ad2181edea8f3f649a1f7add6c3f9c2
github.com/syndtr/gocapability db04d3cc01c8b54962a58ec7e491717d06cfcc16
gotest.tools v2.1.0
github.com/google/go-cmp v0.1.0
diff --git a/vendor/github.com/containerd/ttrpc/server.go b/vendor/github.com/containerd/ttrpc/server.go
index 263cb4583..ab2fdf2fc 100644
--- a/vendor/github.com/containerd/ttrpc/server.go
+++ b/vendor/github.com/containerd/ttrpc/server.go
@@ -446,7 +446,12 @@ func (c *serverConn) run(sctx context.Context) {
// branch. Basically, it means that we are no longer receiving
// requests due to a terminal error.
recvErr = nil // connection is now "closing"
- if err != nil && err != io.EOF {
+ if err == io.EOF || err == io.ErrUnexpectedEOF {
+ // The client went away and we should stop processing
+ // requests, so that the client connection is closed
+ return
+ }
+ if err != nil {
logrus.WithError(err).Error("error receiving message")
}
case <-shutdown:
--
2.33.0

View File

@ -0,0 +1,38 @@
From 1c93da5ded1b80338ae4014084ce005f89e20a94 Mon Sep 17 00:00:00 2001
From: Shiming Zhang <wzshiming@foxmail.com>
Date: Mon, 31 Oct 2022 17:18:27 +0800
Subject: [PATCH] Fix missing closed fifo
Signed-off-by: Shiming Zhang <wzshiming@foxmail.com>
---
runtime/v1/shim/service_linux.go | 1 +
runtime/v2/runc/service_linux.go | 1 +
2 files changed, 2 insertions(+)
diff --git a/runtime/v1/shim/service_linux.go b/runtime/v1/shim/service_linux.go
index 307e20d..b8b85f6 100644
--- a/runtime/v1/shim/service_linux.go
+++ b/runtime/v1/shim/service_linux.go
@@ -54,6 +54,7 @@ func (p *linuxPlatform) CopyConsole(ctx context.Context, console console.Console
io.CopyBuffer(epollConsole, in, *bp)
// we need to shutdown epollConsole when pipe broken
epollConsole.Shutdown(p.epoller.CloseConsole)
+ in.Close()
}()
}
diff --git a/runtime/v2/runc/service_linux.go b/runtime/v2/runc/service_linux.go
index 195c230..de85993 100644
--- a/runtime/v2/runc/service_linux.go
+++ b/runtime/v2/runc/service_linux.go
@@ -54,6 +54,7 @@ func (p *linuxPlatform) CopyConsole(ctx context.Context, console console.Console
io.CopyBuffer(epollConsole, in, *bp)
// we need to shutdown epollConsole when pipe broken
epollConsole.Shutdown(p.epoller.CloseConsole)
+ in.Close()
}()
}
--
2.33.0

View File

@ -0,0 +1,51 @@
From 99580e0aad981d8be11a0d8e7ad2c24130b2dc8d Mon Sep 17 00:00:00 2001
From: Maksym Pavlenko <pavlenko.maksym@gmail.com>
Date: Thu, 19 Jan 2023 10:52:41 -0800
Subject: [PATCH] Update TTRPC and Protobuild dependencies
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
---
vendor/github.com/containerd/ttrpc/server.go | 9 ++++-----
1 file changed, 4 insertions(+), 5 deletions(-)
diff --git a/vendor/github.com/containerd/ttrpc/server.go b/vendor/github.com/containerd/ttrpc/server.go
index ab2fdf2..7445d93 100644
--- a/vendor/github.com/containerd/ttrpc/server.go
+++ b/vendor/github.com/containerd/ttrpc/server.go
@@ -18,14 +18,15 @@ package ttrpc
import (
"context"
+ "errors"
"io"
"math/rand"
"net"
"sync"
"sync/atomic"
+ "syscall"
"time"
- "github.com/pkg/errors"
"github.com/sirupsen/logrus"
"google.golang.org/grpc/codes"
"google.golang.org/grpc/status"
@@ -446,14 +447,12 @@ func (c *serverConn) run(sctx context.Context) {
// branch. Basically, it means that we are no longer receiving
// requests due to a terminal error.
recvErr = nil // connection is now "closing"
- if err == io.EOF || err == io.ErrUnexpectedEOF {
+ if err == io.EOF || err == io.ErrUnexpectedEOF || errors.Is(err, syscall.ECONNRESET) {
// The client went away and we should stop processing
// requests, so that the client connection is closed
return
}
- if err != nil {
- logrus.WithError(err).Error("error receiving message")
- }
+ logrus.WithError(err).Error("error receiving message")
case <-shutdown:
return
}
--
2.33.0

View File

@ -113,4 +113,7 @@ patch/0104-containerd-bugfix-add-nil-pointer-check-for-cgroup-v1-mem-usage.patch
patch/0105-containerd-fix-allow-attaching-to-any-combination-of-stdin-stdo.patch
# sw_64
sw64_patch/3000-bbolt-add-support-sw_64.patch
patch/0106-containerd-bump-ttrpc.patch
patch/0107-containerd-Fix-missing-closed-fifo.patch
patch/0108-containerd-Update-TTRPC-and-Protobuild-dependencies.patch
# end