-----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.