diff --git a/pkg/hostman/guestman/guesttasks.go b/pkg/hostman/guestman/guesttasks.go index 9c3c0bab14..d4011bab62 100644 --- a/pkg/hostman/guestman/guesttasks.go +++ b/pkg/hostman/guestman/guesttasks.go @@ -364,9 +364,10 @@ func (s *SGuestLiveMigrateTask) startMigrate(string) { func (s *SGuestLiveMigrateTask) startMigrateStatusCheck(string) { s.c = make(chan struct{}) - for { + for s.c != nil { select { case <-s.c: // on c close + s.c = nil break case <-time.After(time.Second * 1): s.Monitor.GetMigrateStatus(s.onGetMigrateStatus)