[dpdk-dev] [PATCH 04/10] net/i40e: fix compilation with -Og
Ferruh Yigit
ferruh.yigit at intel.com
Fri Oct 6 01:24:48 CEST 2017
On 9/11/2017 4:13 PM, Olivier Matz wrote:
> The compilation with gcc-6.3.0 and EXTRA_CFLAGS=-Og gives the following
> error:
>
> CC i40e_adminq.o
> i40e_adminq.c: In function ‘i40e_clean_arq_element’:
> i40e_adminq.c:1145:56: error: ‘ntu’ may be used uninitialized in
> this function [-Werror=maybe-uninitialized]
> *pending = (ntc > ntu ? hw->aq.arq.count : 0) + (ntu - ntc);
> ~~~~~^~~~~~
>
> Depending on what is defined, ntu actually be used without being
> initialized. Fix it by initializing it to 0, despite this is probably
> not the proper fix. Moreover, the error is located in base/ directory,
> which contains driver code common to several platforms (not only dpdk).
This practically seems false positive because driver makefile hard-coded
both defines.
Also ntu used before this location, not sure warning generated for here.
Overall I am for fixing the compile warning, but for decision maintainer
cc'ed because this being base code update requires maintainer
communicate other channels to reflect update into base code.
>
> Signed-off-by: Olivier Matz <olivier.matz at 6wind.com>
> ---
> drivers/net/i40e/base/i40e_adminq.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/net/i40e/base/i40e_adminq.c b/drivers/net/i40e/base/i40e_adminq.c
> index 8cc8c5eca..27c133323 100644
> --- a/drivers/net/i40e/base/i40e_adminq.c
> +++ b/drivers/net/i40e/base/i40e_adminq.c
> @@ -1047,7 +1047,7 @@ enum i40e_status_code i40e_clean_arq_element(struct i40e_hw *hw,
> u16 desc_idx;
> u16 datalen;
> u16 flags;
> - u16 ntu;
> + u16 ntu = 0;
>
> /* pre-clean the event info */
> i40e_memset(&e->desc, 0, sizeof(e->desc), I40E_NONDMA_MEM);
>
More information about the dev
mailing list