From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Monjalon Subject: Re: [PATCH 4/4] eal: add assert macro for debug Date: Fri, 22 Apr 2016 23:14:35 +0200 Message-ID: <4685487.eCM9t2Cvuq@xps13> References: <1461332640-24273-1-git-send-email-thomas.monjalon@6wind.com> <1461332640-24273-5-git-send-email-thomas.monjalon@6wind.com> <20160422195110.GE7603@yliu-dev.sh.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Cc: dev@dpdk.org To: Yuanhan Liu Return-path: Received: from mail-wm0-f50.google.com (mail-wm0-f50.google.com [74.125.82.50]) by dpdk.org (Postfix) with ESMTP id C99232BD9 for ; Fri, 22 Apr 2016 23:14:58 +0200 (CEST) Received: by mail-wm0-f50.google.com with SMTP id u206so44427505wme.1 for ; Fri, 22 Apr 2016 14:14:58 -0700 (PDT) In-Reply-To: <20160422195110.GE7603@yliu-dev.sh.intel.com> List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" 2016-04-22 12:51, Yuanhan Liu: > On Fri, Apr 22, 2016 at 03:44:00PM +0200, Thomas Monjalon wrote: > > --- a/drivers/net/vmxnet3/vmxnet3_rxtx.c > > +++ b/drivers/net/vmxnet3/vmxnet3_rxtx.c > > @@ -662,8 +662,8 @@ vmxnet3_recv_pkts(void *rx_queue, struct rte_mb= uf **rx_pkts, uint16_t nb_pkts) > > =20 > > =09=09PMD_RX_LOG(DEBUG, "rxd idx: %d ring idx: %d.", idx, ring_idx= ); > > =20 > > -=09=09VMXNET3_ASSERT(rcd->len <=3D rxd->len); > > -=09=09VMXNET3_ASSERT(rbi->m); > > +=09=09RTE_ASSERT(rcd->len <=3D rxd->len); > > +=09=09RTE_ASSERT(rbi->m); >=20 > Seems this piece of code introduces a build error: >=20 > drivers/net/vmxnet3/vmxnet3_rxtx.c: In function =E2=80=98vmxnet3_= recv_pkts=E2=80=99: > drivers/net/vmxnet3/vmxnet3_rxtx.c:635:18: error: variable =E2=80= =98rxd=E2=80=99 set but not used > Vmxnet3_RxDesc *rxd; > ^ Indeed it can be seen with gcc when debug is disabled. It can be fixed this way: --- a/drivers/net/vmxnet3/vmxnet3_rxtx.c +++ b/drivers/net/vmxnet3/vmxnet3_rxtx.c @@ -658,6 +658,7 @@ vmxnet3_recv_pkts(void *rx_queue, struct rte_mbuf *= *rx_pkts, uint16_t nb_pkts) idx =3D rcd->rxdIdx; ring_idx =3D (uint8_t)((rcd->rqID =3D=3D rxq->qid1) ? 0= : 1); rxd =3D (Vmxnet3_RxDesc *)rxq->cmd_ring[ring_idx].base = + idx; + RTE_SET_USED(rxd); /* used only for assert when enabled= */ rbi =3D rxq->cmd_ring[ring_idx].buf_info + idx; =20 PMD_RX_LOG(DEBUG, "rxd idx: %d ring idx: %d.", idx, rin= g_idx);