Hi Yuanhan, > -----Original Message----- > From: Yuanhan Liu [mailto:yuanhan....@linux.intel.com] > Sent: Wednesday, January 4, 2017 2:03 PM > To: Tan, Jianfeng > Cc: dev@dpdk.org; Yigit, Ferruh; Liang, Cunming > Subject: Re: [PATCH v3 3/7] net/virtio_user: move vhost user specific code > > On Wed, Jan 04, 2017 at 03:59:22AM +0000, Jianfeng Tan wrote: > > To support vhost kernel as the backend of net_virtio_user in coming > > patches, we move vhost_user specific structs and macros into > > vhost_user.c, and only keep common definitions in vhost.h. > > > > Besides, remove VHOST_USER_MQ feature check. > > Again, I have to ask, why? You don't only remove the check, also, you > removed this feature setting, which seems to break the MQ support?
I have answered it here: http://dpdk.org/ml/archives/dev/2016-December/053520.html To be more clear, VHOST_USER_MQ is a not-well-defined macro: #define VHOST_USER_MQ (1ULL << VHOST_USER_F_PROTOCOL_FEATURES), which is a feature bit in vhost user protocol. According to QEMU/ docs/specs/vhost-user.txt, "If VHOST_USER_F_PROTOCOL_FEATURES has not been negotiated, the ring is initialized in an enabled state. " But our DPDK vhost library does not take care of this feature bit. Just make this as default: the ring is initialized in an disabled state. And our virtio_user with vhost-user does send VHOST_USER_SET_VRING_ENABLE to enable each queue pair. So I think it's not necessary to add it back. How do you think? Thanks, Jianfeng > > --yliu