From a1f1c9de04dd3cd2003f06c26b415c4e30fa3a53 Mon Sep 17 00:00:00 2001 From: yangfeiyu Date: Wed, 16 Dec 2020 10:36:39 +0800 Subject: [PATCH] kata-runtime: fix kata-netmon does not exit when container is stopped reason: start a container and stop it, the netmon process will not exit, we should store the netmon info to disk and read it when fetching the sandbox, then the remove netmon operation will be executed. Change-Id: I2d8fd02747eaf208445444bc0c43a7d221ba1715 Conflict:NA Reference:https://gitee.com/holyfei/kata-runtime Signed-off-by: yangfeiyu --- virtcontainers/persist.go | 11 ++++++++++- virtcontainers/persist/api/config.go | 7 +++++++ 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/virtcontainers/persist.go b/virtcontainers/persist.go index efa4506..57b5336 100644 --- a/virtcontainers/persist.go +++ b/virtcontainers/persist.go @@ -192,8 +192,12 @@ func (s *Sandbox) dumpConfig(ss *persistapi.SandboxState) { DisableNewNetNs: sconfig.NetworkConfig.DisableNewNetNs, EnableCompatOldCNI: sconfig.NetworkConfig.EnableCompatOldCNI, InterworkingModel: int(sconfig.NetworkConfig.InterworkingModel), + NetmonConfig: persistapi.NetmonConfig{ + Path: sconfig.NetworkConfig.NetmonConfig.Path, + Debug: sconfig.NetworkConfig.NetmonConfig.Debug, + Enable: sconfig.NetworkConfig.NetmonConfig.Enable, + }, }, - ShmSize: sconfig.ShmSize, SharePidNs: sconfig.SharePidNs, Stateful: sconfig.Stateful, @@ -484,6 +488,11 @@ func loadSandboxConfig(id string) (*SandboxConfig, error) { DisableNewNetNs: savedConf.NetworkConfig.DisableNewNetNs, EnableCompatOldCNI: savedConf.NetworkConfig.EnableCompatOldCNI, InterworkingModel: NetInterworkingModel(savedConf.NetworkConfig.InterworkingModel), + NetmonConfig: NetmonConfig{ + Path: savedConf.NetworkConfig.NetmonConfig.Path, + Debug: savedConf.NetworkConfig.NetmonConfig.Debug, + Enable: savedConf.NetworkConfig.NetmonConfig.Enable, + }, }, ShmSize: savedConf.ShmSize, diff --git a/virtcontainers/persist/api/config.go b/virtcontainers/persist/api/config.go index 28204fc..26f6cf4 100644 --- a/virtcontainers/persist/api/config.go +++ b/virtcontainers/persist/api/config.go @@ -215,6 +215,13 @@ type NetworkConfig struct { DisableNewNetNs bool EnableCompatOldCNI bool InterworkingModel int + NetmonConfig NetmonConfig +} + +type NetmonConfig struct { + Path string + Debug bool + Enable bool } type ContainerConfig struct { -- 2.23.0