Change-Id: I8acc5c419b6ad01937c3aecec42801463d4a119a
Signed-off-by: Damjan Marion <damarion@cisco.com>
vec_reset_length (f);
f = format (f, "%v/vpd%c", dev_dir_name, 0);
fd = open ((char *) f, O_RDONLY);
vec_reset_length (f);
f = format (f, "%v/vpd%c", dev_dir_name, 0);
fd = open ((char *) f, O_RDONLY);
{
u8 tag[3];
u8 *data = 0;
{
u8 tag[3];
u8 *data = 0;
if (read (fd, &tag, 3) != 3)
break;
if (read (fd, &tag, 3) != 3)
break;
- close (p->config_fd);
- close (p->uio_fd);
+ if (p->config_fd != -1)
+ close (p->config_fd);
+ if (p->uio_fd != -1)
+ close (p->uio_fd);
s = format (s, "/dev/vfio/%u%c", group, 0);
fd = open ((char *) s, O_RDWR);
if (fd < 0)
s = format (s, "/dev/vfio/%u%c", group, 0);
fd = open ((char *) s, O_RDWR);
if (fd < 0)
- clib_error_return_unix (0, "open '%s'", s);
+ return clib_error_return_unix (0, "open '%s'", s);
group_status.argsz = sizeof (group_status);
if (ioctl (fd, VFIO_GROUP_GET_STATUS, &group_status) < 0)
group_status.argsz = sizeof (group_status);
if (ioctl (fd, VFIO_GROUP_GET_STATUS, &group_status) < 0)
- close (dfd);
- close (p->config_fd);
+ if (dfd != -1)
+ close (dfd);
+ if (p->config_fd != -1)
+ close (p->config_fd);