Signed-off-by: Eelco Chaudron <echau...@redhat.com>
---
 lib/dpif-netdev.c       |    4 ++++
 tests/test-id-fpool.c   |    2 +-
 tests/test-mpsc-queue.c |    2 +-
 3 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/lib/dpif-netdev.c b/lib/dpif-netdev.c
index 157694bcf..b8f065d1d 100644
--- a/lib/dpif-netdev.c
+++ b/lib/dpif-netdev.c
@@ -4748,6 +4748,10 @@ dpif_netdev_offload_stats_get(struct dpif *dpif,
     }
 
     nb_thread = netdev_offload_thread_nb();
+    if (!nb_thread) {
+        return EINVAL;
+    }
+
     /* nb_thread counters for the overall total as well. */
     stats->size = ARRAY_SIZE(hwol_stats) * (nb_thread + 1);
     stats->counters = xcalloc(stats->size, sizeof *stats->counters);
diff --git a/tests/test-id-fpool.c b/tests/test-id-fpool.c
index 27800aa9b..7bdb8154d 100644
--- a/tests/test-id-fpool.c
+++ b/tests/test-id-fpool.c
@@ -237,7 +237,7 @@ print_result(const char *prefix)
     for (i = 0; i < n_threads; i++) {
         avg += thread_working_ms[i];
     }
-    avg /= n_threads;
+    avg /= n_threads ? n_threads : 1;
     printf("%s: ", prefix);
     for (i = 0; i < n_threads; i++) {
         if (thread_working_ms[i] >= TIMEOUT_MS) {
diff --git a/tests/test-mpsc-queue.c b/tests/test-mpsc-queue.c
index 16aa804a0..86a223caf 100644
--- a/tests/test-mpsc-queue.c
+++ b/tests/test-mpsc-queue.c
@@ -315,7 +315,7 @@ print_result(const char *prefix, int reader_elapsed)
     for (i = 0; i < n_threads; i++) {
         avg += thread_working_ms[i];
     }
-    avg /= n_threads;
+    avg /= n_threads ? n_threads : 1;
     printf("%s:  %6d", prefix, reader_elapsed);
     for (i = 0; i < n_threads; i++) {
         printf(" %6" PRIu64, thread_working_ms[i]);

_______________________________________________
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to