[dpdk-stable] [dpdk-dev] [PATCH] net/thunderx: fix build with gcc optimization on

Jerin Jacob jerin.jacob at caviumnetworks.com
Tue Jun 26 11:52:11 CEST 2018


-----Original Message-----
> Date: Tue, 26 Jun 2018 10:17:14 +0100
> From: Ferruh Yigit <ferruh.yigit at intel.com>
> To: Jerin Jacob <jerin.jacob at caviumnetworks.com>
> CC: Maciej Czekaj <maciej.czekaj at caviumnetworks.com>, dev at dpdk.org,
>  stable at dpdk.org
> Subject: Re: [dpdk-dev] [PATCH] net/thunderx: fix build with gcc
>  optimization on
> User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101
>  Thunderbird/52.8.0
> 
> 
> On 6/24/2018 1:17 PM, Jerin Jacob wrote:
> > -----Original Message-----
> >> Date: Thu, 21 Jun 2018 19:14:50 +0100
> >> From: Ferruh Yigit <ferruh.yigit at intel.com>
> >> To: Jerin Jacob <jerin.jacob at caviumnetworks.com>, Maciej Czekaj
> >>  <maciej.czekaj at caviumnetworks.com>
> >> CC: dev at dpdk.org, Ferruh Yigit <ferruh.yigit at intel.com>, stable at dpdk.org
> >> Subject: [PATCH] net/thunderx: fix build with gcc optimization on
> >> X-Mailer: git-send-email 2.17.1
> >>
> >>
> >> build error gcc version 6.3.1 20161221 (Red Hat 6.3.1-1),
> >> with EXTRA_CFLAGS="-O3":
> >>
> >> .../drivers/net/thunderx/nicvf_ethdev.c:907:9:
> >>    error: ‘txq’ may be used uninitialized in this function
> >>    [-Werror=maybe-uninitialized]
> >>   if (txq->pool_free == nicvf_single_pool_free_xmited_buffers)
> >>       ~~~^~~~~~~~~~~
> >> .../drivers/net/thunderx/nicvf_ethdev.c:886:20:
> >>    note: ‘txq’ was declared here
> >>   struct nicvf_txq *txq;
> >>                     ^~~
> >>
> >> Same error on function 'nicvf_eth_dev_init' and 'nicvf_dev_start', it
> >> seems 'nicvf_set_tx_function' inlined when optimization enabled.
> >>
> >> Initialize the txq and add NULL check before using it to fix.
> >>
> >> Fixes: 7413feee662d ("net/thunderx: add device start/stop and close")
> >> Cc: stable at dpdk.org
> >>
> >> Reported-by: Richard Walsh <richard.walsh at intel.com>
> >> Signed-off-by: Ferruh Yigit <ferruh.yigit at intel.com>
> >
> > Acked-by: Jerin Jacob <jerin.jacob at caviumnetworks.com>
> >
> >> ---
> >>
> >> Btw, no compiler optimization enabled, only nicvf_rxtx.c has -Ofast,
> >> is this intentional?
> >
> > Yes. At least in our setup, -Ofast turns out to be super set of -O3.
> 
> That is what gcc documents about -Ofast, but again it is only for single
> nicvf_rxtx.c file. The problem seen with -O3 case with other file.

OK. For other files, we intentionally kept non -03 as it is in slow path.

> 


More information about the stable mailing list