DPDK: coverity scan warnings 49/13449/2
authorMarco Varlese <marco.varlese@suse.de>
Thu, 12 Jul 2018 12:58:44 +0000 (14:58 +0200)
committerDave Barach <openvpp@barachs.net>
Wed, 18 Jul 2018 18:54:56 +0000 (18:54 +0000)
This patch addresses the coverity scan warnings reported for the DPDK
plugin.

Change-Id: Ie7ac7ffcf4a6c63245eae0f9910a193ab1e318a8
Signed-off-by: Marco Varlese <marco.varlese@suse.de>
src/plugins/dpdk/device/flow.c
src/plugins/dpdk/device/init.c

index becd397..31818f1 100644 (file)
@@ -368,11 +368,10 @@ format_dpdk_flow (u8 * s, va_list * args)
       return s;
     }
 
-  fe = vec_elt_at_index (xd->flow_entries, private_data);
-
-  if (!fe)
+  if (private_data > vec_len (xd->flow_entries))
     return format (s, "unknown flow");
 
+  fe = vec_elt_at_index (xd->flow_entries, private_data);
   s = format (s, "mark %u", fe->mark);
   return s;
 }
index bd249e9..f090779 100644 (file)
@@ -701,7 +701,7 @@ dpdk_lib_init (dpdk_main_t * dm)
        }
 
       if (dm->conf->no_tx_checksum_offload == 0)
-       if (xd->flags & DPDK_DEVICE_FLAG_TX_OFFLOAD)
+       if (xd->flags & DPDK_DEVICE_FLAG_TX_OFFLOAD && hi != NULL)
          hi->flags |= VNET_HW_INTERFACE_FLAG_SUPPORTS_TX_L4_CKSUM_OFFLOAD;
 
       dpdk_device_setup (xd);
@@ -1605,9 +1605,7 @@ dpdk_process (vlib_main_t * vm, vlib_node_runtime_t * rt, vlib_frame_t * f)
                    xd = &dm->devices[j];
                  }
              }
-           ASSERT (xd != NULL);
-
-           if (xd->pmd == VNET_DPDK_PMD_BOND)
+           if (xd != NULL && xd->pmd == VNET_DPDK_PMD_BOND)
              {
                u8 addr[6];
                dpdk_portid_t slink[16];