[v6,3/5] vhost: handle unsupported message types in functions
Checks
Commit Message
Add new functions to handle the unsupported vhost message types:
- vhost_user_set_vring_err
- vhost_user_set_log_fd
Signed-off-by: Nikolay Nikolaev <nicknickolaev@gmail.com>
---
lib/librte_vhost/vhost_user.c | 22 +++++++++++++++++-----
1 file changed, 17 insertions(+), 5 deletions(-)
Comments
On 24-Sep-18 9:17 PM, Nikolay Nikolaev wrote:
> Add new functions to handle the unsupported vhost message types:
> - vhost_user_set_vring_err
> - vhost_user_set_log_fd
>
> Signed-off-by: Nikolay Nikolaev <nicknickolaev@gmail.com>
> ---
Reviewed-by: Anatoly Burakov <anatoly.burakov@intel.com>
@@ -1022,6 +1022,14 @@ vhost_user_set_vring_call(struct virtio_net *dev, struct VhostUserMsg *msg)
vq->callfd = file.fd;
}
+static void vhost_user_set_vring_err(struct virtio_net **pdev __rte_unused,
+ struct VhostUserMsg *msg)
+{
+ if (!(msg->payload.u64 & VHOST_USER_VRING_NOFD_MASK))
+ close(msg->fds[0]);
+ RTE_LOG(INFO, VHOST_CONFIG, "not implemented\n");
+}
+
static int
vhost_user_set_vring_kick(struct virtio_net **pdev, struct VhostUserMsg *msg)
{
@@ -1259,6 +1267,13 @@ vhost_user_set_log_base(struct virtio_net *dev, struct VhostUserMsg *msg)
return 0;
}
+static void vhost_user_set_log_fd(struct virtio_net **pdev __rte_unused,
+ struct VhostUserMsg *msg)
+{
+ close(msg->fds[0]);
+ RTE_LOG(INFO, VHOST_CONFIG, "not implemented.\n");
+}
+
/*
* An rarp packet is constructed and broadcasted to notify switches about
* the new location of the migrated VM, so that packets from outside will
@@ -1704,8 +1719,7 @@ vhost_user_msg_handler(int vid, int fd)
send_vhost_reply(fd, &msg);
break;
case VHOST_USER_SET_LOG_FD:
- close(msg.fds[0]);
- RTE_LOG(INFO, VHOST_CONFIG, "not implemented.\n");
+ vhost_user_set_log_fd(&dev, &msg);
break;
case VHOST_USER_SET_VRING_NUM:
@@ -1733,9 +1747,7 @@ vhost_user_msg_handler(int vid, int fd)
break;
case VHOST_USER_SET_VRING_ERR:
- if (!(msg.payload.u64 & VHOST_USER_VRING_NOFD_MASK))
- close(msg.fds[0]);
- RTE_LOG(INFO, VHOST_CONFIG, "not implemented\n");
+ vhost_user_set_vring_err(&dev, &msg);
break;
case VHOST_USER_GET_QUEUE_NUM: