[dpdk-stable] [dpdk-dev] [PATCH] net/i40e: fix gcc 11 build warning on POWER architecture

David Christensen drc at linux.vnet.ibm.com
Tue Nov 9 23:46:19 CET 2021


> 	Not sure if below patch also help to solve the issue you met on power arch,
> 	Looks like the error is same: "writing 1 byte into a region of size 0"
> 	would you help to check?
> 
> commit 1b0f3a18145468c309bb5a8cb98a8aa29af059e7
> Author: Ferruh Yigit <ferruh.yigit at intel.com>
> Date:   Fri Oct 29 11:37:01 2021 +0100
> 
>      net/i40e: fix build for 32-bit
> 
>      Got error with: gcc 11.2.1 "cc (GCC) 11.2.1 20210728 (Red Hat 11.2.1-1)"
> 
>      Build error:
>      In function 'i40e_flow_parse_fdir_pattern',
>          inlined from 'i40e_flow_parse_fdir_filter'
>          at ../drivers/net/i40e/i40e_flow.c:3274:8:
>      ../drivers/net/i40e/i40e_flow.c:3052:69:
>          error: writing 1 byte into a region of size 0
>          [-Werror=stringop-overflow=]
>       3052 |                         filter->input.flow_ext.flexbytes[j] =
>            |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
>       3053 |                                 raw_spec->pattern[i];
>            |                                 ~~~~~~~~~~~~~~~~~~~~
>      In file included from ../drivers/net/i40e/i40e_flow.c:25:
>        ../drivers/net/i40e/i40e_flow.c:
>        In function 'i40e_flow_parse_fdir_filter':
>        ../drivers/net/i40e/i40e_ethdev.h:638:17:
>        note: at offset 16 into destination object 'flexbytes' of size 16
>        638 |         uint8_t flexbytes[RTE_ETH_FDIR_MAX_FLEXLEN];
>            |                 ^~~~~~~~~
> 
>      Fixing by adding range checks.
> 
>      Fixes: 6ced3dd72f5f ("net/i40e: support flexible payload parsing for FDIR")
>      Cc: stable at dpdk.org

Yep, definitely fixed it for POWER as well with the latest GCC compiler 
(Advanced Toolchain 15.0 in my case).  I'll withdraw by other patch. 
Thanks for the heads up.

Dave


More information about the stable mailing list