On 03/23/2014 11:28 AM, Roman Bogorodskiy wrote: > 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; > } > This would leak devpath. ACK with VIR_FREE(devpath) added either before 'continue', or the virAsprintf allocating it. Jan
Attachment:
signature.asc
Description: OpenPGP digital signature
-- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list