From: Ferruh Yigit Date: Fri, 15 Oct 2021 10:28:18 +0000 (+0100) Subject: net/enic: fix build with GCC 7.5 X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=54fe0cf1b8682684ba8a8778669483867343798e;p=dpdk.git net/enic: fix build with GCC 7.5 Build error: ../drivers/net/enic/enic_fm_flow.c: In function 'enic_fm_flow_parse': ../drivers/net/enic/enic_fm_flow.c:1467:24: error: 'dev' may be used uninitialized in this function [-Werror=maybe-uninitialized] struct rte_eth_dev *dev; ^~~ ../drivers/net/enic/enic_fm_flow.c:1580:24: error: 'dev' may be used uninitialized in this function [-Werror=maybe-uninitialized] struct rte_eth_dev *dev; ^~~ ../drivers/net/enic/enic_fm_flow.c:1599:24: error: 'dev' may be used uninitialized in this function [-Werror=maybe-uninitialized] struct rte_eth_dev *dev; ^~~ Build error looks like false positive, but to silence the compiler initializing the pointer with NULL. Bugzilla ID: 812 Fixes: 54bd4ebe8b05 ("net/enic: support meta flow actions to overrule destinations") Reported-by: David Marchand Signed-off-by: Ferruh Yigit Reviewed-by: David Marchand --- diff --git a/drivers/net/enic/enic_fm_flow.c b/drivers/net/enic/enic_fm_flow.c index 4092ff1f61..2c60bb864e 100644 --- a/drivers/net/enic/enic_fm_flow.c +++ b/drivers/net/enic/enic_fm_flow.c @@ -1464,7 +1464,7 @@ enic_fm_copy_action(struct enic_flowman *fm, } case RTE_FLOW_ACTION_TYPE_PORT_ID: { const struct rte_flow_action_port_id *port; - struct rte_eth_dev *dev; + struct rte_eth_dev *dev = NULL; if (!ingress && (overlap & PORT_ID)) { ENICPMD_LOG(DEBUG, "cannot have multiple egress PORT_ID actions"); @@ -1577,7 +1577,7 @@ enic_fm_copy_action(struct enic_flowman *fm, } case RTE_FLOW_ACTION_TYPE_PORT_REPRESENTOR: { const struct rte_flow_action_ethdev *ethdev; - struct rte_eth_dev *dev; + struct rte_eth_dev *dev = NULL; ethdev = actions->conf; ret = enic_fm_check_transfer_dst(enic, ethdev->port_id, @@ -1596,7 +1596,7 @@ enic_fm_copy_action(struct enic_flowman *fm, } case RTE_FLOW_ACTION_TYPE_REPRESENTED_PORT: { const struct rte_flow_action_ethdev *ethdev; - struct rte_eth_dev *dev; + struct rte_eth_dev *dev = NULL; if (overlap & PORT_ID) { ENICPMD_LOG(DEBUG, "cannot have multiple egress PORT_ID actions");