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.yi...@intel.com> >> To: Jerin Jacob <jerin.ja...@caviumnetworks.com>, Maciej Czekaj >> <maciej.cze...@caviumnetworks.com> >> CC: dev@dpdk.org, Ferruh Yigit <ferruh.yi...@intel.com>, sta...@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: sta...@dpdk.org >> >> Reported-by: Richard Walsh <richard.wa...@intel.com> >> Signed-off-by: Ferruh Yigit <ferruh.yi...@intel.com> > > Acked-by: Jerin Jacob <jerin.ja...@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.