From b354cee2e0a79a5fbe7140e964bb30e7c57919d6 Mon Sep 17 00:00:00 2001 From: Adrian Moreno Date: Mon, 27 Mar 2023 10:40:11 +0200 Subject: ovs-thread: Fix cpus not read for the first 10s. With the current implementation the available CPUs will not be read until 10s have passed since the system's boot. For systems that boot faster, this can make ovs-vswitchd create fewer handlers than necessary for some time. Fixes: 0d23948a598a ("ovs-thread: Detect changes in number of CPUs.") Reported-at: https://bugzilla.redhat.com/show_bug.cgi?id=2180460 Suggested-by: Ilya Maximets Acked-by: Mike Pattrick Acked-by: Michael Santana Signed-off-by: Adrian Moreno Signed-off-by: Ilya Maximets --- lib/ovs-thread.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/ovs-thread.c b/lib/ovs-thread.c index 2d382f1e8..ac5d2c3d0 100644 --- a/lib/ovs-thread.c +++ b/lib/ovs-thread.c @@ -674,7 +674,7 @@ count_cpu_cores(void) static int cpu_cores; ovs_mutex_lock(&cpu_cores_mutex); - if (now - last_updated >= COUNT_CPU_UPDATE_TIME_MS) { + if (!last_updated || now - last_updated >= COUNT_CPU_UPDATE_TIME_MS) { last_updated = now; cpu_cores = count_cpu_cores__(); } -- cgit v1.2.1