dpdk: fix coverity defect #214232, #182930 02/28802/2
authorChenmin Sun <chenmin.sun@intel.com>
Fri, 11 Sep 2020 14:32:51 +0000 (22:32 +0800)
committerAndrew Yourtchenko <ayourtch@gmail.com>
Sat, 12 Sep 2020 21:54:43 +0000 (21:54 +0000)
Type: fix

Signed-off-by: Chenmin Sun <chenmin.sun@intel.com>
Change-Id: Ie328834159687cdb4314c37d36697f2fb9081fbd
(cherry picked from commit 504bcb7c29da6ab45656f54cda394cccb0d97dae)

src/plugins/dpdk/device/device.c
src/plugins/dpdk/device/init.c

index e58dd6f..532987c 100644 (file)
@@ -639,6 +639,13 @@ dpdk_interface_set_rss_queues (struct vnet_main_t *vnm,
   }));
   /* *INDENT-ON* */
 
+  /* check valid_queue_count not zero, make coverity happy */
+  if (valid_queue_count == 0)
+    {
+      err = clib_error_return (0, "must assign at least one valid rss queue");
+      goto done;
+    }
+
   valid_queue = reta;
   for (i = valid_queue_count, j = 0; i < dev_info.reta_size; i++, j++)
     {
index 81803ab..d07acd6 100644 (file)
@@ -759,7 +759,7 @@ dpdk_lib_init (dpdk_main_t * dm)
       dpdk_device_setup (xd);
 
       /* rss queues should be configured after dpdk_device_setup() */
-      if (devconf->rss_queues != NULL)
+      if ((hi != NULL) && (devconf->rss_queues != NULL))
         {
           if (vnet_hw_interface_set_rss_queues
               (vnet_get_main (), hi, devconf->rss_queues))