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: 54bd4ebe8b ("net/enic: support meta flow actions to overrule destinations")

Reported-by: David Marchand <david.marchand@redhat.com>
Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
Reviewed-by: David Marchand <david.marchand@redhat.com>
This commit is contained in:
Ferruh Yigit 2021-10-15 11:28:18 +01:00
parent d2e5ab2b42
commit 54fe0cf1b8

View File

@ -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");