From 4158671cc50d9feff4f49d8ab27c64ccb75bd2df Mon Sep 17 00:00:00 2001 From: Zexi Li Date: Tue, 4 Jan 2022 18:36:35 +0800 Subject: [PATCH] fix(host): unplugged isolated devices probe not deleted --- pkg/hostman/isolated_device/isolated_device.go | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/pkg/hostman/isolated_device/isolated_device.go b/pkg/hostman/isolated_device/isolated_device.go index 17d6ec71bc..cb692129b8 100644 --- a/pkg/hostman/isolated_device/isolated_device.go +++ b/pkg/hostman/isolated_device/isolated_device.go @@ -111,11 +111,7 @@ func (man *isolatedDeviceManager) GetDevices() []IDevice { } func (man *isolatedDeviceManager) ProbePCIDevices(skipGPUs, skipUSBs bool) error { - if len(man.devices) > 0 { - // already probed, skip - return nil - } - + man.devices = make([]IDevice, 0) if !skipGPUs { gpus, err := getPassthroughGPUS() if err != nil { @@ -196,6 +192,7 @@ func (man *isolatedDeviceManager) StartDetachTask() { go func() { for _, dev := range man.DetachedDevices { for { + log.Infof("Start delete cloud device %s", jsonutils.Marshal(dev)) if _, err := modules.IsolatedDevices.PerformAction(man.getSession(), dev.Id, "purge", nil); err != nil { log.Errorf("Detach device %s failed: %v, try again later", dev.Id, err) time.Sleep(30 * time.Second)