From 34828df9a1070ba8a4007ce313e6071e586e5ac9 Mon Sep 17 00:00:00 2001 From: "fupan.lfp" Date: Wed, 14 Jul 2021 15:19:46 +0800 Subject: [PATCH] virtiofsd: fix the issue of missing stop virtiofsd The virtiofsd's PID wan't assigned the right pid, which will result skipping kill it. Fixes: #2228 Signed-off-by: fupan.lfp --- src/runtime/virtcontainers/virtiofsd.go | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/runtime/virtcontainers/virtiofsd.go b/src/runtime/virtcontainers/virtiofsd.go index 4f133c8900..2e996e256b 100644 --- a/src/runtime/virtcontainers/virtiofsd.go +++ b/src/runtime/virtcontainers/virtiofsd.go @@ -142,6 +142,8 @@ func (v *virtiofsd) Start(ctx context.Context, onQuit onQuitFunc) (int, error) { } }() + v.PID = cmd.Process.Pid + return cmd.Process.Pid, nil } @@ -216,7 +218,8 @@ func (v *virtiofsd) kill(ctx context.Context) (err error) { defer span.End() if v.PID == 0 { - return errors.New("invalid virtiofsd PID(0)") + v.Logger().WithField("invalid-virtiofsd-pid", v.PID).Warn("cannot kill virtiofsd") + return nil } err = syscall.Kill(v.PID, syscall.SIGKILL)