diff --git a/src/runtime-rs/config/configuration-rs-fc.toml.in b/src/runtime-rs/config/configuration-rs-fc.toml.in index 2fbb4f26a9..09899dc4b4 100644 --- a/src/runtime-rs/config/configuration-rs-fc.toml.in +++ b/src/runtime-rs/config/configuration-rs-fc.toml.in @@ -282,6 +282,10 @@ kernel_modules=[] # (default: 45) dial_timeout = 45 +# Confidential Data Hub API timeout value in seconds +# (default: 50) +#cdh_api_timeout = 50 + [runtime] # If enabled, the runtime will log additional debug messages to the # system log diff --git a/src/runtime/config/configuration-acrn.toml.in b/src/runtime/config/configuration-acrn.toml.in index e8e933aec6..d70ac728ca 100644 --- a/src/runtime/config/configuration-acrn.toml.in +++ b/src/runtime/config/configuration-acrn.toml.in @@ -157,6 +157,10 @@ disable_selinux=@DEFDISABLESELINUX@ # (default: 45) dial_timeout = 45 +# Confidential Data Hub API timeout value in seconds +# (default: 50) +#cdh_api_timeout = 50 + [runtime] # If enabled, the runtime will log additional debug messages to the # system log diff --git a/src/runtime/config/configuration-clh.toml.in b/src/runtime/config/configuration-clh.toml.in index f51246f9ca..efbb9bfac4 100644 --- a/src/runtime/config/configuration-clh.toml.in +++ b/src/runtime/config/configuration-clh.toml.in @@ -328,6 +328,10 @@ block_device_driver = "virtio-blk" # (default: 45) dial_timeout = 45 +# Confidential Data Hub API timeout value in seconds +# (default: 50) +#cdh_api_timeout = 50 + [runtime] # If enabled, the runtime will log additional debug messages to the # system log diff --git a/src/runtime/config/configuration-fc.toml.in b/src/runtime/config/configuration-fc.toml.in index 7c5f428801..64697a8a9d 100644 --- a/src/runtime/config/configuration-fc.toml.in +++ b/src/runtime/config/configuration-fc.toml.in @@ -282,6 +282,10 @@ kernel_modules=[] # (default: 45) dial_timeout = 45 +# Confidential Data Hub API timeout value in seconds +# (default: 50) +#cdh_api_timeout = 50 + [runtime] # If enabled, the runtime will log additional debug messages to the # system log diff --git a/src/runtime/config/configuration-qemu-coco-dev.toml.in b/src/runtime/config/configuration-qemu-coco-dev.toml.in index 699bf39c12..2373aabaa6 100644 --- a/src/runtime/config/configuration-qemu-coco-dev.toml.in +++ b/src/runtime/config/configuration-qemu-coco-dev.toml.in @@ -567,6 +567,10 @@ kernel_modules=[] # (default: 45) dial_timeout = 45 +# Confidential Data Hub API timeout value in seconds +# (default: 50) +#cdh_api_timeout = 50 + [runtime] # If enabled, the runtime will log additional debug messages to the # system log diff --git a/src/runtime/config/configuration-qemu.toml.in b/src/runtime/config/configuration-qemu.toml.in index 9c09c887f8..d3aeefbc3a 100644 --- a/src/runtime/config/configuration-qemu.toml.in +++ b/src/runtime/config/configuration-qemu.toml.in @@ -566,6 +566,10 @@ kernel_modules=[] # (default: 45) dial_timeout = 45 +# Confidential Data Hub API timeout value in seconds +# (default: 50) +#cdh_api_timeout = 50 + [runtime] # If enabled, the runtime will log additional debug messages to the # system log diff --git a/src/runtime/config/configuration-stratovirt.toml.in b/src/runtime/config/configuration-stratovirt.toml.in index 9ef58ba507..ff821af539 100644 --- a/src/runtime/config/configuration-stratovirt.toml.in +++ b/src/runtime/config/configuration-stratovirt.toml.in @@ -294,6 +294,10 @@ kernel_modules = [] # (default: 45) dial_timeout = 45 +# Confidential Data Hub API timeout value in seconds +# (default: 50) +#cdh_api_timeout = 50 + [runtime] # If enabled, the runtime will log additional debug messages to the # system log diff --git a/src/runtime/pkg/katautils/config.go b/src/runtime/pkg/katautils/config.go index 0ca94f25c1..b4ba75b987 100644 --- a/src/runtime/pkg/katautils/config.go +++ b/src/runtime/pkg/katautils/config.go @@ -198,6 +198,7 @@ type agent struct { Tracing bool `toml:"enable_tracing"` DebugConsoleEnabled bool `toml:"debug_console_enabled"` DialTimeout uint32 `toml:"dial_timeout"` + CdhApiTimeout uint32 `toml:"cdh_api_timeout"` } func (orig *tomlConfig) Clone() tomlConfig { @@ -736,6 +737,10 @@ func (a agent) dialTimout() uint32 { return a.DialTimeout } +func (a agent) cdhApiTimout() uint32 { + return a.CdhApiTimeout +} + func (a agent) debug() bool { return a.Debug } @@ -1415,6 +1420,7 @@ func updateRuntimeConfigAgent(configPath string, tomlConf tomlConfig, config *oc KernelModules: agent.kernelModules(), EnableDebugConsole: agent.debugConsoleEnabled(), DialTimeout: agent.dialTimout(), + CdhApiTimeout: agent.cdhApiTimout(), } } diff --git a/src/runtime/virtcontainers/kata_agent.go b/src/runtime/virtcontainers/kata_agent.go index 954d202189..02167f7c18 100644 --- a/src/runtime/virtcontainers/kata_agent.go +++ b/src/runtime/virtcontainers/kata_agent.go @@ -283,6 +283,7 @@ type KataAgentConfig struct { KernelModules []string ContainerPipeSize uint32 DialTimeout uint32 + CdhApiTimeout uint32 LongLiveConn bool Debug bool Trace bool @@ -348,6 +349,11 @@ func KataAgentKernelParams(config KataAgentConfig) []Param { params = append(params, Param{Key: kernelParamDebugConsoleVPort, Value: kernelParamDebugConsoleVPortValue}) } + if config.CdhApiTimeout > 0 { + cdhApiTimeout := strconv.FormatUint(uint64(config.CdhApiTimeout), 10) + params = append(params, Param{Key: vcAnnotations.CdhApiTimeoutKernelParam, Value: cdhApiTimeout}) + } + return params } diff --git a/src/runtime/virtcontainers/pkg/annotations/annotations.go b/src/runtime/virtcontainers/pkg/annotations/annotations.go index 8b6adc56fa..ad787b3d84 100644 --- a/src/runtime/virtcontainers/pkg/annotations/annotations.go +++ b/src/runtime/virtcontainers/pkg/annotations/annotations.go @@ -309,6 +309,8 @@ const ( AgentContainerPipeSize = kataAnnotAgentPrefix + ContainerPipeSizeOption ContainerPipeSizeOption = "container_pipe_size" ContainerPipeSizeKernelParam = "agent." + ContainerPipeSizeOption + CdhApiTimeoutOption = "cdh_api_timeout" + CdhApiTimeoutKernelParam = "agent." + CdhApiTimeoutOption // Policy is an annotation containing the contents of an agent policy file, base64 encoded. Policy = kataAnnotAgentPrefix + "policy"