aboutsummaryrefslogtreecommitdiffstats
path: root/vm/qemu
diff options
context:
space:
mode:
authorGeorge Kennedy <george.kennedy@oracle.com>2022-08-09 19:14:30 +0000
committerAleksandr Nogikh <wp32pw@gmail.com>2022-09-21 11:46:22 +0200
commit97471de4a3c64605bbd90d91688947a2d7fa1d66 (patch)
tree9e591b1eaacd00111d25f3b79ac4ae26be2b2865 /vm/qemu
parentb0234adef324bc03c9679b3004f398b8d100386b (diff)
vm/qemu: move timeout before retry to avoid resource busy
Add "Device or resource busy" check to delay loop in function Create to avoid resource busy caused by qemu "lazy release" of VFs when VMs are restarted. Signed-off-by: George Kennedy <george.kennedy@oracle.com>
Diffstat (limited to 'vm/qemu')
-rw-r--r--vm/qemu/qemu.go3
1 files changed, 3 insertions, 0 deletions
diff --git a/vm/qemu/qemu.go b/vm/qemu/qemu.go
index 602cc4fb4..e57c755c3 100644
--- a/vm/qemu/qemu.go
+++ b/vm/qemu/qemu.go
@@ -341,6 +341,9 @@ func (pool *Pool) Create(workdir string, index int) (vmimpl.Instance, error) {
if i < 1000 && strings.Contains(err.Error(), "ould not set up host forwarding rule") {
continue
}
+ if i < 1000 && strings.Contains(err.Error(), "Device or resource busy") {
+ continue
+ }
return nil, err
}
}