containerd/patch/0004-runv-vendor-runv-compatibility.patch
2019-12-30 12:24:38 +08:00

64 lines
1.7 KiB
Diff

From 5fa863a6ea74ed24cfcc0c16eaa5e5a4e77387ec Mon Sep 17 00:00:00 2001
From: jingrui <jingrui@huawei.com>
Date: Wed, 26 Dec 2018 12:08:20 +0800
Subject: [PATCH 04/27] runv: vendor: runv compatibility
reason: fix manslaughter of runtime delete process
cherry-pick from containerd-0.2.8
reference:
7906753998667b5a9fa9a996f4a0e41d4736d5c1
contaierd-17: fix manslaughter of runtime delete process
fix manslaughter of runtime delete process
f82956a89ca7d7cea3bdd5fcd4d4fd70c313f378
containerd-17: fix qemu remaining when dockerd restart
fix qemu remaining when dockerd restart and container start concurrency
Change-Id: Id23456e90961041194c946a289ae790327b874c8
Signed-off-by: jingrui <jingrui@huawei.com>
---
vendor/github.com/containerd/go-runc/command_linux.go | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/vendor/github.com/containerd/go-runc/command_linux.go b/vendor/github.com/containerd/go-runc/command_linux.go
index 71b52f9..6ad27be 100644
--- a/vendor/github.com/containerd/go-runc/command_linux.go
+++ b/vendor/github.com/containerd/go-runc/command_linux.go
@@ -20,9 +20,17 @@ import (
"context"
"os"
"os/exec"
+ "strings"
"syscall"
)
+func (r *Runc) isrunv() bool {
+ if strings.Contains(r.Command, "runv") {
+ return true
+ }
+ return false
+}
+
func (r *Runc) command(context context.Context, args ...string) *exec.Cmd {
command := r.Command
if command == "" {
@@ -33,7 +41,7 @@ func (r *Runc) command(context context.Context, args ...string) *exec.Cmd {
Setpgid: r.Setpgid,
}
cmd.Env = os.Environ()
- if r.PdeathSignal != 0 {
+ if r.PdeathSignal != 0 && !r.isrunv() {
cmd.SysProcAttr.Pdeathsig = r.PdeathSignal
}
--
2.7.4.3