[libvirt] [PATCH] bhyve: don't fail on busy tap devices
Roman Bogorodskiy
bogorodskiy at gmail.com
Sun Mar 23 10:28:41 UTC 2014
We use virBhyveTapGetRealDeviceName() to map network interface name
to a real device path, trying to open possible devices and getting
names by ioctl.
Make it skip devices that fail to open with EBUSY because they're
most likely already used by other VMs.
---
src/bhyve/bhyve_command.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/bhyve/bhyve_command.c b/src/bhyve/bhyve_command.c
index 6d64c27..e569aab 100644
--- a/src/bhyve/bhyve_command.c
+++ b/src/bhyve/bhyve_command.c
@@ -69,6 +69,8 @@ virBhyveTapGetRealDeviceName(char *name)
goto cleanup;
}
if ((fd = open(devpath, O_RDWR)) < 0) {
+ if (errno == EBUSY)
+ continue;
virReportSystemError(errno, _("Unable to open '%s'"), devpath);
goto cleanup;
}
--
1.8.4.2
More information about the libvir-list
mailing list