[dpdk-dev,v2] net/virtio-user: fix implicit int to enum conversion
Commit Message
Implicit int to enum conversion is not allowed when icc is used as
the compiler. It raises the compiling error like,
/.../dpdk/drivers/net/virtio/virtio_user/vhost_user.c(257):
error #188: enumerated type mixed with another type
msg.request = req;
^
The fix is simple, change the type of parameter req to enum
vhost_user_request.
Fixes: 6a84c37e3975 ("net/virtio-user: add vhost-user adapter layer")
Suggested-by: Stephen Hemminger <stephen@networkplumber.org>
Signed-off-by: Jianfeng Tan <jianfeng.tan@intel.com>
---
drivers/net/virtio/virtio_user/vhost.h | 2 +-
drivers/net/virtio/virtio_user/vhost_user.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
Comments
On Sun, Jun 26, 2016 at 01:48:13PM +0000, Jianfeng Tan wrote:
> Implicit int to enum conversion is not allowed when icc is used as
> the compiler. It raises the compiling error like,
> /.../dpdk/drivers/net/virtio/virtio_user/vhost_user.c(257):
> error #188: enumerated type mixed with another type
> msg.request = req;
> ^
>
> The fix is simple, change the type of parameter req to enum
> vhost_user_request.
>
> Fixes: 6a84c37e3975 ("net/virtio-user: add vhost-user adapter layer")
>
> Suggested-by: Stephen Hemminger <stephen@networkplumber.org>
> Signed-off-by: Jianfeng Tan <jianfeng.tan@intel.com>
Applied to dpdk-next-virtio, with the title changed to:
net/virtio-user: fix build error with icc
Thanks.
--yliu
@@ -139,7 +139,7 @@ struct vhost_user_msg {
#define VHOST_USER_F_PROTOCOL_FEATURES 30
#define VHOST_USER_MQ (1ULL << VHOST_USER_F_PROTOCOL_FEATURES)
-int vhost_user_sock(int vhostfd, uint64_t req, void *arg);
+int vhost_user_sock(int vhostfd, enum vhost_user_request req, void *arg);
int vhost_user_setup(const char *path);
int vhost_user_enable_queue_pair(int vhostfd, uint16_t pair_idx, int enable);
@@ -240,7 +240,7 @@ static const char * const vhost_msg_strings[] = {
};
int
-vhost_user_sock(int vhostfd, uint64_t req, void *arg)
+vhost_user_sock(int vhostfd, enum vhost_user_request req, void *arg)
{
struct vhost_user_msg msg;
struct vhost_vring_file *file = 0;