From mboxrd@z Thu Jan 1 00:00:00 1970 From: Haiyang Tan Subject: [PATCH] net/enic: fix possible uninitialized variable Date: Sat, 22 Dec 2018 04:41:03 -0800 Message-ID: <20181222124103.116759-1-haiyangtan@tencent.com> Cc: dev@dpdk.org, Haiyang Tan To: John Daley , Hyong Youb Kim Return-path: Received: from m12-11.163.com (m12-11.163.com [220.181.12.11]) by dpdk.org (Postfix) with ESMTP id 61DC11B964 for ; Sat, 22 Dec 2018 13:41:26 +0100 (CET) List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" The uninitialized field 'extra_flag' of hash parameter may enable certain feature silently. Typically, if bit0 of 'extra_flag' set, the hardware transactional memory support will be enabled unexpectedly. Signed-off-by: Haiyang Tan --- drivers/net/enic/enic_clsf.c | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/drivers/net/enic/enic_clsf.c b/drivers/net/enic/enic_clsf.c index 9d95201ec..f9707c78f 100644 --- a/drivers/net/enic/enic_clsf.c +++ b/drivers/net/enic/enic_clsf.c @@ -475,14 +475,15 @@ void enic_clsf_destroy(struct enic *enic) int enic_clsf_init(struct enic *enic) { char clsf_name[RTE_HASH_NAMESIZE]; - struct rte_hash_parameters hash_params = { - .name = clsf_name, - .entries = ENICPMD_CLSF_HASH_ENTRIES, - .key_len = sizeof(struct rte_eth_fdir_filter), - .hash_func = DEFAULT_HASH_FUNC, - .hash_func_init_val = 0, - .socket_id = SOCKET_ID_ANY, - }; + struct rte_hash_parameters hash_params = { 0 }; + + hash_params.name = clsf_name; + hash_params.entries = ENICPMD_CLSF_HASH_ENTRIES; + hash_params.key_len = sizeof(struct rte_eth_fdir_filter); + hash_params.hash_func = DEFAULT_HASH_FUNC; + hash_params.hash_func_init_val = 0; + hash_params.socket_id = SOCKET_ID_ANY; + snprintf(clsf_name, RTE_HASH_NAMESIZE, "enic_clsf_%s", enic->bdf_name); enic->fdir.hash = rte_hash_create(&hash_params); memset(&enic->fdir.stats, 0, sizeof(enic->fdir.stats)); -- 2.14.1