diff --git a/components/ws-daemon/pkg/daemon/daemon.go b/components/ws-daemon/pkg/daemon/daemon.go index c00a3309542000..5518a9b66df464 100644 --- a/components/ws-daemon/pkg/daemon/daemon.go +++ b/components/ws-daemon/pkg/daemon/daemon.go @@ -52,12 +52,17 @@ func NewDaemon(config Config, reg prometheus.Registerer) (*Daemon, error) { if err != nil { return nil, err } - dsptch, err := dispatch.NewDispatch(containerRuntime, clientset, config.Runtime.KubernetesNamespace, nodename, + + listener := []dispatch.Listener{ cpulimit.NewDispatchListener(&config.Resources, reg), - CacheReclaim(config.Resources.CGroupBasePath), cgCustomizer, markUnmountFallback, - ) + } + if _, err := os.Stat("/sys/fs/cgroup/cgroup.controllers"); os.IsNotExist(err) { + listener = append(listener, CacheReclaim(config.Resources.CGroupBasePath)) + } + + dsptch, err := dispatch.NewDispatch(containerRuntime, clientset, config.Runtime.KubernetesNamespace, nodename, listener...) if err != nil { return nil, err }