Re: [PATCH] bhyve: don't fail on busy tap devices

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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

[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]