From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 8D18EA0C43; Fri, 8 Oct 2021 00:13:29 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id D8513413D1; Fri, 8 Oct 2021 00:13:25 +0200 (CEST) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by mails.dpdk.org (Postfix) with ESMTP id A77ED411FE for ; Fri, 8 Oct 2021 00:13:23 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1633644803; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=nPiOlUzKgb0I3XgyfsmMPvVhnOS3ZCVkyJXTT5xJnFE=; b=KmrLZMaP/ChZFbx3H+YCl0FEH9+pjj6O2GGZUXO9Q7yEHGjrCT/UtwYdW1mS/RQ2YMA/p8 fszZUTIJgBmuGy1hr4Jn5ywEYoBHrv4SNxZYPZtdcvRyHSRANP3u3U9sAY6aK0LEobx7N+ iirIik4spNod4g+Uer2faejwRbkHXgA= Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-458-kXVnUH8eNRKar7xSM1Hr5g-1; Thu, 07 Oct 2021 18:13:19 -0400 X-MC-Unique: kXVnUH8eNRKar7xSM1Hr5g-1 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 4485A95C478; Thu, 7 Oct 2021 22:00:29 +0000 (UTC) Received: from max-t490s.redhat.com (unknown [10.39.208.18]) by smtp.corp.redhat.com (Postfix) with ESMTP id 74CA45C1B4; Thu, 7 Oct 2021 22:00:27 +0000 (UTC) From: Maxime Coquelin To: dev@dpdk.org, chenbo.xia@intel.com, jiayu.hu@intel.com, yuanx.wang@intel.com, wenwux.ma@intel.com, bruce.richardson@intel.com, john.mcnamara@intel.com Cc: Maxime Coquelin Date: Fri, 8 Oct 2021 00:00:04 +0200 Message-Id: <20211007220013.355530-6-maxime.coquelin@redhat.com> In-Reply-To: <20211007220013.355530-1-maxime.coquelin@redhat.com> References: <20211007220013.355530-1-maxime.coquelin@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=maxime.coquelin@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="US-ASCII" Subject: [dpdk-dev] [RFC 05/14] vhost: remove async batch threshold X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" 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 --- lib/vhost/virtio_net.c | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/lib/vhost/virtio_net.c b/lib/vhost/virtio_net.c index e2a9e138b7..a939481eaf 100644 --- a/lib/vhost/virtio_net.c +++ b/lib/vhost/virtio_net.c @@ -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)) { -- 2.31.1