vhost: support sending fds via slave channel

This function will be used to send fds to QEMU via slave channel.

Signed-off-by: Tiwei Bie <tiwei.bie@intel.com>
Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
This commit is contained in:
Tiwei Bie 2018-03-06 18:43:26 +08:00 committed by Ferruh Yigit
parent ac860c86e3
commit 71d93e9dd6

View File

@ -1275,13 +1275,13 @@ read_vhost_message(int sockfd, struct VhostUserMsg *msg)
}
static int
send_vhost_message(int sockfd, struct VhostUserMsg *msg)
send_vhost_message(int sockfd, struct VhostUserMsg *msg, int *fds, int fd_num)
{
if (!msg)
return 0;
return send_fd_message(sockfd, (char *)msg,
VHOST_USER_HDR_SIZE + msg->size, NULL, 0);
VHOST_USER_HDR_SIZE + msg->size, fds, fd_num);
}
static int
@ -1295,7 +1295,7 @@ send_vhost_reply(int sockfd, struct VhostUserMsg *msg)
msg->flags |= VHOST_USER_VERSION;
msg->flags |= VHOST_USER_REPLY_MASK;
return send_vhost_message(sockfd, msg);
return send_vhost_message(sockfd, msg, NULL, 0);
}
/*
@ -1598,7 +1598,7 @@ vhost_user_iotlb_miss(struct virtio_net *dev, uint64_t iova, uint8_t perm)
},
};
ret = send_vhost_message(dev->slave_req_fd, &msg);
ret = send_vhost_message(dev->slave_req_fd, &msg, NULL, 0);
if (ret < 0) {
RTE_LOG(ERR, VHOST_CONFIG,
"Failed to send IOTLB miss message (%d)\n",