]> git.droids-corp.org - dpdk.git/commitdiff
vhost: remove async batch threshold
authorMaxime Coquelin <maxime.coquelin@redhat.com>
Tue, 26 Oct 2021 16:28:54 +0000 (18:28 +0200)
committerMaxime Coquelin <maxime.coquelin@redhat.com>
Fri, 29 Oct 2021 10:32:30 +0000 (12:32 +0200)
Reaching the async batch threshold was one of the condition
to trigger the DMA transfer. However, this condition was
never met since the threshold value is 32, same as the
MAX_PKT_BURST value.

Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
Reviewed-by: Jiayu Hu <jiayu.hu@intel.com>
lib/vhost/virtio_net.c

index f0d923704af6528be95e2c130b819474c0621f89..c4a8b5276fd0be04bd947fba7354f23a10be183c 100644 (file)
@@ -25,8 +25,6 @@
 
 #define MAX_BATCH_LEN 256
 
-#define VHOST_ASYNC_BATCH_THRESHOLD 32
-
 static  __rte_always_inline bool
 rxvq_is_mergeable(struct virtio_net *dev)
 {
@@ -1565,12 +1563,10 @@ virtio_dev_rx_async_submit_split(struct virtio_net *dev,
                vq->last_avail_idx += num_buffers;
 
                /*
-                * conditions to trigger async device transfer:
-                * - buffered packet number reaches transfer threshold
+                * condition to trigger async device transfer:
                 * - unused async iov number is less than max vhost vector
                 */
-               if (unlikely(pkt_burst_idx >= VHOST_ASYNC_BATCH_THRESHOLD ||
-                       (VHOST_MAX_ASYNC_VEC - iovec_idx < BUF_VECTOR_MAX))) {
+               if (unlikely(VHOST_MAX_ASYNC_VEC - iovec_idx < BUF_VECTOR_MAX)) {
                        n_xfer = async->ops.transfer_data(dev->vid,
                                        queue_id, tdes, 0, pkt_burst_idx);
                        if (likely(n_xfer >= 0)) {
@@ -1864,12 +1860,10 @@ virtio_dev_rx_async_submit_packed(struct virtio_net *dev,
                vq_inc_last_avail_packed(vq, num_descs);
 
                /*
-                * conditions to trigger async device transfer:
-                * - buffered packet number reaches transfer threshold
+                * condition to trigger async device transfer:
                 * - unused async iov number is less than max vhost vector
                 */
-               if (unlikely(pkt_burst_idx >= VHOST_ASYNC_BATCH_THRESHOLD ||
-                       (VHOST_MAX_ASYNC_VEC - iovec_idx < BUF_VECTOR_MAX))) {
+               if (unlikely(VHOST_MAX_ASYNC_VEC - iovec_idx < BUF_VECTOR_MAX)) {
                        n_xfer = async->ops.transfer_data(dev->vid,
                                        queue_id, tdes, 0, pkt_burst_idx);
                        if (likely(n_xfer >= 0)) {