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 2DB24A00C3 for ; Thu, 30 Jun 2022 11:56:52 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 26BCD41104; Thu, 30 Jun 2022 11:56:52 +0200 (CEST) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by mails.dpdk.org (Postfix) with ESMTP id 22816410D5 for ; Thu, 30 Jun 2022 11:56:50 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1656583009; 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=tenE3dmSkczlgoz89k3EgycQxzrrdc9bI6WZW7p6Thc=; b=DeNEvgHKh9WGteW9jDlaNXAR+QsiwR2H+/TCbffIipV4f3DLaUsEAUrj/W92MetwGwNHed S6gFW4PTH096hGwAS5s/Kemu4ll5VhDDVMvw1vQF3e7HrR7+4qF9UKC7nkV1c8ub8DSarh JYUCLcI4KN3ZT32xL2TFBWNNp7WSl5E= Received: from mimecast-mx02.redhat.com (mx3-rdu2.redhat.com [66.187.233.73]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-675-9ablg1MFOdqEsZxd9mjE2w-1; Thu, 30 Jun 2022 05:56:36 -0400 X-MC-Unique: 9ablg1MFOdqEsZxd9mjE2w-1 Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.rdu2.redhat.com [10.11.54.3]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 4584429ABA2F; Thu, 30 Jun 2022 09:56:36 +0000 (UTC) Received: from [10.39.208.33] (unknown [10.39.208.33]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 5E4871121314; Thu, 30 Jun 2022 09:56:35 +0000 (UTC) Message-ID: <844c38da-2fcc-a612-20e3-f0422edd59e6@redhat.com> Date: Thu, 30 Jun 2022 11:56:33 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.10.0 Subject: Re: [PATCH v2] vhost: fix unchecked return value To: Jiayu Hu , dev@dpdk.org Cc: chenbo.xia@intel.com, stable@dpdk.org, David Marchand References: <20220623010858.951367-1-jiayu.hu@intel.com> <20220629090706.1395614-1-jiayu.hu@intel.com> From: Maxime Coquelin In-Reply-To: <20220629090706.1395614-1-jiayu.hu@intel.com> X-Scanned-By: MIMEDefang 2.78 on 10.11.54.3 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-Language: en-US Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org On 6/29/22 11:07, Jiayu Hu wrote: > This patch checks the return value of rte_dma_info_get() > called in rte_vhost_async_dma_configure(). > > Coverity issue: 379066 > Fixes: 53d3f4778c1d ("vhost: integrate dmadev in asynchronous data-path") > Cc: stable@dpdk.org > > Signed-off-by: Jiayu Hu > Reviewed-by: Chenbo Xia > --- > v2: > - add cc stable tag > --- > lib/vhost/vhost.c | 6 +++++- > 1 file changed, 5 insertions(+), 1 deletion(-) > > diff --git a/lib/vhost/vhost.c b/lib/vhost/vhost.c > index b14521e4d1..70c04c036e 100644 > --- a/lib/vhost/vhost.c > +++ b/lib/vhost/vhost.c > @@ -1868,7 +1868,11 @@ rte_vhost_async_dma_configure(int16_t dma_id, uint16_t vchan_id) > return -1; > } > > - rte_dma_info_get(dma_id, &info); > + if (rte_dma_info_get(dma_id, &info) != 0) { > + VHOST_LOG_CONFIG(ERR, "Fail to get DMA %d information.\n", dma_id); > + return -1; > + } > + > if (vchan_id >= info.max_vchans) { > VHOST_LOG_CONFIG(ERR, "Invalid DMA %d vChannel %u.\n", dma_id, vchan_id); > return -1; The patch itself looks good, but rte_vhost_async_dma_configure() should be protected by a lock, as concurrent calls of this function would lead to undefined behavior. Can you cook something? David, is that the issue you mentioned me this week or was it another one? Thanks, Maxime