From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by dpdk.org (Postfix) with ESMTP id 5094D2B9C; Thu, 21 Feb 2019 12:16:28 +0100 (CET) Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 929763082E69; Thu, 21 Feb 2019 11:16:27 +0000 (UTC) Received: from [10.36.112.16] (ovpn-112-16.ams2.redhat.com [10.36.112.16]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 6BEA060139; Thu, 21 Feb 2019 11:16:26 +0000 (UTC) To: Tiwei Bie , zhihong.wang@intel.com, dev@dpdk.org Cc: stable@dpdk.org References: <20190219105951.31046-1-tiwei.bie@intel.com> <20190219105951.31046-4-tiwei.bie@intel.com> From: Maxime Coquelin Message-ID: <0cc7c8b6-ec40-ee9e-7873-e655908d68cc@redhat.com> Date: Thu, 21 Feb 2019 12:16:24 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.4.0 MIME-Version: 1.0 In-Reply-To: <20190219105951.31046-4-tiwei.bie@intel.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.46]); Thu, 21 Feb 2019 11:16:27 +0000 (UTC) Subject: Re: [dpdk-dev] [PATCH 3/5] net/virtio: fix in-order Tx path for packed ring X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 21 Feb 2019 11:16:28 -0000 On 2/19/19 11:59 AM, Tiwei Bie wrote: > When IN_ORDER feature is negotiated, device may just write out a > single used descriptor for a batch of buffers: > > """ > Some devices always use descriptors in the same order in which they > have been made available. These devices can offer the VIRTIO_F_IN_ORDER > feature. If negotiated, this knowledge allows devices to notify the > use of a batch of buffers to the driver by only writing out a single > used descriptor with the Buffer ID corresponding to the last descriptor > in the batch. > > The device then skips forward in the ring according to the size of the > batch. The driver needs to look up the used Buffer ID and calculate the > batch size to be able to advance to where the next used descriptor will > be written by the device. > """ > > But the Tx path of packed ring can't handle this. With this patch, > when IN_ORDER is negotiated, driver will manage the IDs linearly, > look up the used buffer ID and advance to the next used descriptor > that will be written by the device. > > Fixes: 892dc798fa9c ("net/virtio: implement Tx path for packed queues") > Cc: stable@dpdk.org > > Signed-off-by: Tiwei Bie > --- > drivers/net/virtio/virtio_ethdev.c | 4 +- > drivers/net/virtio/virtio_rxtx.c | 69 ++++++++++++++++++++++++------ > 2 files changed, 59 insertions(+), 14 deletions(-) > Reviewed-by: Maxime Coquelin Thanks, Maxime