Hi Cheng, On 5/30/22 06:56, Cheng Jiang wrote:
This RFC patch implements packed ring dequeue data path for asynchronous vhost.
Please remove RFC in the next revision.
Signed-off-by: Cheng Jiang <cheng1.ji...@intel.com> --- lib/vhost/virtio_net.c | 217 ++++++++++++++++++++++++++++++++++++----- 1 file changed, 191 insertions(+), 26 deletions(-) diff --git a/lib/vhost/virtio_net.c b/lib/vhost/virtio_net.c
...
+ +static __rte_always_inline int +virtio_dev_tx_async_single_packed(struct virtio_net *dev, + struct vhost_virtqueue *vq, + struct rte_mempool *mbuf_pool, + struct rte_mbuf *pkts, + uint16_t slot_idx, + bool legacy_ol_flags) +{ + int err; + uint16_t buf_id, desc_count = 0; + uint16_t nr_vec = 0; + uint32_t buf_len; + struct buf_vector buf_vec[BUF_VECTOR_MAX]; + static bool allocerr_warned; + + if (unlikely(fill_vec_buf_packed(dev, vq, vq->last_avail_idx, &desc_count, + buf_vec, &nr_vec, &buf_id, &buf_len, + VHOST_ACCESS_RO) < 0)) + return -1; + + if (unlikely(virtio_dev_pktmbuf_prep(dev, pkts, buf_len))) { + if (!allocerr_warned) { + VHOST_LOG_DATA(ERR, "Failed mbuf alloc of size %d from %s on %s.\n", + buf_len, mbuf_pool->name, dev->ifname);
We have defined a common format for all Vhost logs to ease logs filtering: VHOST_LOG_DATA(ERR, "(%s) Failed mbuf alloc of size %d from %s.\n", dev->ifname, buf_len, mbuf_pool->name); Could you please fix it here and everywhere else in the patch? With above minor comments fixed, feel free to add: Reviewed-by: Maxime Coquelin <maxime.coque...@redhat.com> Thanks, Maxime