[dpdk-dev,2/5] net/i40e: fix memset size

Message ID 20170613164212.42374-2-ferruh.yigit@intel.com (mailing list archive)
State Accepted, archived
Headers

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation fail Compilation issues

Commit Message

Ferruh Yigit June 13, 2017, 4:42 p.m. UTC
  This causes build error with gcc 7.1.1 :

...dpdk/drivers/net/i40e/i40e_flow.c:2357:2:
error: ‘memset’ used with length equal to number of elements without
       multiplication by element size [-Werror=memset-elt-size]
  memset(off_arr, 0, I40E_MAX_FLXPLD_FIED);
  ^~~~~~

...dpdk/drivers/net/i40e/i40e_flow.c:2358:2:
error: ‘memset’ used with length equal to number of elements without
       multiplication by element size [-Werror=memset-elt-size]
  memset(len_arr, 0, I40E_MAX_FLXPLD_FIED);
  ^~~~~~

Fixed by providing correct size to memset.

Fixes: 6ced3dd72f5f ("net/i40e: support flexible payload parsing for FDIR")

Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
---
This code introduced for this release, so fix can be squashed into
relevant patch.

Cc: Beilei Xing <beilei.xing@intel.com>
---
 drivers/net/i40e/i40e_flow.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
  

Comments

Xing, Beilei June 14, 2017, 1:15 a.m. UTC | #1
> -----Original Message-----

> From: Yigit, Ferruh

> Sent: Wednesday, June 14, 2017 12:42 AM

> To: Zhang, Helin <helin.zhang@intel.com>; Wu, Jingjing

> <jingjing.wu@intel.com>

> Cc: dev@dpdk.org; Yigit, Ferruh <ferruh.yigit@intel.com>; stable@dpdk.org;

> Xing, Beilei <beilei.xing@intel.com>

> Subject: [PATCH 2/5] net/i40e: fix memset size

> 

> This causes build error with gcc 7.1.1 :

> 

> ...dpdk/drivers/net/i40e/i40e_flow.c:2357:2:

> error: ‘memset’ used with length equal to number of elements without

>        multiplication by element size [-Werror=memset-elt-size]

>   memset(off_arr, 0, I40E_MAX_FLXPLD_FIED);

>   ^~~~~~

> 

> ...dpdk/drivers/net/i40e/i40e_flow.c:2358:2:

> error: ‘memset’ used with length equal to number of elements without

>        multiplication by element size [-Werror=memset-elt-size]

>   memset(len_arr, 0, I40E_MAX_FLXPLD_FIED);

>   ^~~~~~

> 

> Fixed by providing correct size to memset.

> 

> Fixes: 6ced3dd72f5f ("net/i40e: support flexible payload parsing for FDIR")

> 

> Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>

> ---

> This code introduced for this release, so fix can be squashed into relevant

> patch.

> 

> Cc: Beilei Xing <beilei.xing@intel.com>

> ---

>  drivers/net/i40e/i40e_flow.c | 4 ++--

>  1 file changed, 2 insertions(+), 2 deletions(-)

> 

> diff --git a/drivers/net/i40e/i40e_flow.c b/drivers/net/i40e/i40e_flow.c index

> c7589ce86..08c0f8e68 100644

> --- a/drivers/net/i40e/i40e_flow.c

> +++ b/drivers/net/i40e/i40e_flow.c

> @@ -2354,8 +2354,8 @@ i40e_flow_parse_fdir_pattern(struct rte_eth_dev

> *dev,

>  	uint16_t ether_type;

>  	int ret;

> 

> -	memset(off_arr, 0, I40E_MAX_FLXPLD_FIED);

> -	memset(len_arr, 0, I40E_MAX_FLXPLD_FIED);

> +	memset(off_arr, 0, sizeof(off_arr));

> +	memset(len_arr, 0, sizeof(len_arr));

>  	memset(flex_mask, 0, I40E_FDIR_MAX_FLEX_LEN);

>  	outer_tpid = i40e_get_outer_vlan(dev);

>  	for (; item->type != RTE_FLOW_ITEM_TYPE_END; item++) {

> --

> 2.13.0


Acked-by: Beilei Xing <beilei.xing@intel.com> , thanks.
  

Patch

diff --git a/drivers/net/i40e/i40e_flow.c b/drivers/net/i40e/i40e_flow.c
index c7589ce86..08c0f8e68 100644
--- a/drivers/net/i40e/i40e_flow.c
+++ b/drivers/net/i40e/i40e_flow.c
@@ -2354,8 +2354,8 @@  i40e_flow_parse_fdir_pattern(struct rte_eth_dev *dev,
 	uint16_t ether_type;
 	int ret;
 
-	memset(off_arr, 0, I40E_MAX_FLXPLD_FIED);
-	memset(len_arr, 0, I40E_MAX_FLXPLD_FIED);
+	memset(off_arr, 0, sizeof(off_arr));
+	memset(len_arr, 0, sizeof(len_arr));
 	memset(flex_mask, 0, I40E_FDIR_MAX_FLEX_LEN);
 	outer_tpid = i40e_get_outer_vlan(dev);
 	for (; item->type != RTE_FLOW_ITEM_TYPE_END; item++) {