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 2C41F1B10C; Tue, 23 Oct 2018 10:19:31 +0200 (CEST) Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 3FBD28830E; Tue, 23 Oct 2018 08:19:30 +0000 (UTC) Received: from [10.36.112.57] (ovpn-112-57.ams2.redhat.com [10.36.112.57]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 71A20194AC; Tue, 23 Oct 2018 08:19:28 +0000 (UTC) To: Tiwei Bie , zhihong.wang@intel.com, dev@dpdk.org Cc: stable@dpdk.org References: <20181023060749.25194-1-tiwei.bie@intel.com> From: Maxime Coquelin Message-ID: Date: Tue, 23 Oct 2018 10:19:25 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.9.1 MIME-Version: 1.0 In-Reply-To: <20181023060749.25194-1-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.84 on 10.5.11.23 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.28]); Tue, 23 Oct 2018 08:19:30 +0000 (UTC) Subject: Re: [dpdk-dev] [PATCH] vhost: fix vector filling 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: Tue, 23 Oct 2018 08:19:31 -0000 Hi Tiwei, On 10/23/2018 08:07 AM, Tiwei Bie wrote: > We should return the length of the buffers described by > the current descriptor chain after filling the buffer > vector. So we need to zero the *len first. > > Fixes: 2f3225a7d69b ("vhost: add vector filling support for packed ring") > Cc: stable@dpdk.org > > Signed-off-by: Tiwei Bie > --- > lib/librte_vhost/virtio_net.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/lib/librte_vhost/virtio_net.c b/lib/librte_vhost/virtio_net.c > index 48228f16b..4e6c35d56 100644 > --- a/lib/librte_vhost/virtio_net.c > +++ b/lib/librte_vhost/virtio_net.c > @@ -521,6 +521,7 @@ fill_vec_buf_packed(struct virtio_net *dev, struct vhost_virtqueue *vq, > return -1; > > *desc_count = 0; > + *len = 0; > > while (1) { > if (unlikely(vec_id >= BUF_VECTOR_MAX)) > Good catch, I guess I didn't felt into that bug because my test-cases were too simple (single descriptor were enough). Reviewed-by: Maxime Coquelin Thanks! Maxime