Lines Matching refs:iov
267 static bool iov_empty(const struct iovec iov[], unsigned int num_iov) in iov_empty() argument
272 if (iov[i].iov_len) in iov_empty()
279 struct iovec iov[], unsigned num_iov, in iov_consume() argument
287 used = iov[i].iov_len < len ? iov[i].iov_len : len; in iov_consume()
289 memcpy(dest, iov[i].iov_base, used); in iov_consume()
292 iov[i].iov_base += used; in iov_consume()
293 iov[i].iov_len -= used; in iov_consume()
737 struct iovec iov[], in wait_for_vq_desc() argument
882 iov[*out_num + *in_num].iov_len = desc[i].len; in wait_for_vq_desc()
883 iov[*out_num + *in_num].iov_base in wait_for_vq_desc()
954 struct iovec iov[vq->vring.num]; in console_input() local
957 head = wait_for_vq_desc(vq, iov, &out_num, &in_num); in console_input()
962 len = readv(STDIN_FILENO, iov, in_num); in console_input()
985 if (len != 1 || ((char *)iov[0].iov_base)[0] != 3) { in console_input()
1007 struct iovec iov[vq->vring.num]; in console_output() local
1010 head = wait_for_vq_desc(vq, iov, &out, &in); in console_output()
1015 while (!iov_empty(iov, out)) { in console_output()
1016 int len = writev(STDOUT_FILENO, iov, out); in console_output()
1021 iov_consume(vq->dev, iov, out, NULL, len); in console_output()
1045 struct iovec iov[vq->vring.num]; in net_output() local
1048 head = wait_for_vq_desc(vq, iov, &out, &in); in net_output()
1055 if (writev(net_info->tunfd, iov, out) < 0) in net_output()
1089 struct iovec iov[vq->vring.num]; in net_input() local
1096 head = wait_for_vq_desc(vq, iov, &out, &in); in net_input()
1111 len = readv(net_info->tunfd, iov, in); in net_input()
2941 struct iovec iov[vq->vring.num]; in blk_request() local
2948 head = wait_for_vq_desc(vq, iov, &out_num, &in_num); in blk_request()
2951 iov_consume(vq->dev, iov, out_num, &out, sizeof(out)); in blk_request()
2956 if (iov[i].iov_len > 0) { in blk_request()
2957 in = iov[i].iov_base + iov[i].iov_len - 1; in blk_request()
2958 iov[i].iov_len--; in blk_request()
2981 ret = writev(vblk->fd, iov, out_num); in blk_request()
3014 ret = readv(vblk->fd, iov + out_num, in_num); in blk_request()
3081 struct iovec iov[vq->vring.num]; in rng_input() local
3084 head = wait_for_vq_desc(vq, iov, &out_num, &in_num); in rng_input()
3092 while (!iov_empty(iov, in_num)) { in rng_input()
3093 len = readv(rng_info->rfd, iov, in_num); in rng_input()
3096 iov_consume(vq->dev, iov, in_num, NULL, len); in rng_input()