From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ferruh Yigit Subject: Re: [RFT] vmxnet3: coverity reported defect Date: Thu, 5 Apr 2018 17:47:38 +0100 Message-ID: References: <20180405083618.61509f5d@xeon-e3> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Cc: dev@dpdk.org, Yong Wang To: Stephen Hemminger Return-path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by dpdk.org (Postfix) with ESMTP id 18EA91CCB5 for ; Thu, 5 Apr 2018 18:47:41 +0200 (CEST) In-Reply-To: <20180405083618.61509f5d@xeon-e3> Content-Language: en-US List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On 4/5/2018 4:36 PM, Stephen Hemminger wrote: > I noticed Coverity defect in DPDK number 124563 was assigned to me. > > It looks like vmxnet3 driver code doesn't handle case where host incorrectly > sends a frame with out setting SOP bit in first segment. This would lead to > rxq->start_seq being NULL. > > Maybe something like this would fix it. I don't have VMware (or time) to test. > > diff --git a/drivers/net/vmxnet3/vmxnet3_rxtx.c b/drivers/net/vmxnet3/vmxnet3_rxtx.c > index 57557492e0f5..3118d94add90 100644 > --- a/drivers/net/vmxnet3/vmxnet3_rxtx.c > +++ b/drivers/net/vmxnet3/vmxnet3_rxtx.c > @@ -813,6 +813,13 @@ vmxnet3_recv_pkts(void *rx_queue, struct rte_mbuf **rx_pkts, uint16_t nb_pkts) > > RTE_ASSERT(rxd->btype == VMXNET3_RXD_BTYPE_BODY); > > + if (unlikely(start == NULL)) { > + PMD_RX_LOG(ERR, "Missing sop"); > + > + rte_pktmbuf_free_seg(rxm); > + goto rcd_done; > + } > + > start->pkt_len += rxm->data_len; > start->nb_segs++; > > > PS: the email for the VMXNET3 maintainer Shrikrishna Khare bounces. Yong Wang send a patch [1] to take over vmxnet3 maintainership. [1] https://dpdk.org/dev/patchwork/patch/36795/