diff --git a/pkg/kubelet/cm/deviceplugin/device_plugin_handler.go b/pkg/kubelet/cm/deviceplugin/device_plugin_handler.go index 4c9de6b3f81..7303e507d5e 100644 --- a/pkg/kubelet/cm/deviceplugin/device_plugin_handler.go +++ b/pkg/kubelet/cm/deviceplugin/device_plugin_handler.go @@ -92,6 +92,10 @@ func NewHandlerImpl(updateCapacityFunc func(v1.ResourceList)) (*HandlerImpl, err deviceManagerMonitorCallback := func(resourceName string, added, updated, deleted []pluginapi.Device) { var capacity = v1.ResourceList{} kept := append(updated, added...) + + handler.Lock() + defer handler.Unlock() + if _, ok := handler.allDevices[resourceName]; !ok { handler.allDevices[resourceName] = sets.NewString() }