bhyve: don't fail on busy tap devices

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.
This commit is contained in:
Roman Bogorodskiy 2014-03-23 13:44:41 +04:00
parent 139efe758c
commit 425eeed8c4
1 changed files with 4 additions and 0 deletions

View File

@ -69,6 +69,10 @@ virBhyveTapGetRealDeviceName(char *name)
goto cleanup;
}
if ((fd = open(devpath, O_RDWR)) < 0) {
if (errno == EBUSY) {
VIR_FREE(devpath);
continue;
}
virReportSystemError(errno, _("Unable to open '%s'"), devpath);
goto cleanup;
}