Re: [PATCH v2] Associate target_ops with target_fileio file descriptors

Pedro Alves
2015-03-24T13:22:45Z

On 03/20/2015 04:06 PM, Gary Benson wrote:

> +
> + /* Search for closed handles to reuse. */
> + if (lowest_closed_fd >= 0)
> + {
> + for (index = lowest_closed_fd;
> + VEC_iterate (fileio_fh_t, fileio_fhandles, index, fh);
> + index++)
> + if (is_closed_fileio_fh (fh->fd))
> + break;

You don't really need 'index'. If this walks using
lowest_closed_fd instead, like:

for (;
VEC_iterate (fileio_fh_t, fileio_fhandles,
lowest_closed_fd, fh);
lowest_closed_fd++)
if (is_closed_fileio_fh (fh->fd))
break;

Then the next time around we skip slots we already know are
open.

> + }
> +
> + /* Push a new handle if no closed handles were found. */
> + if (index == total)
> + {
> + fh = VEC_safe_push (fileio_fh_t, fileio_fhandles, NULL);
> + lowest_closed_fd = -1;
> + }
> +
> + /* Fill in the handle and return its index. */
> + fh->t = t;
> + fh->fd = fd;
> +
> + return index;
> +}
> +

Otherwise looks good. Please push.

Thanks,
Pedro Alves