[Bug 223914] [PATCH] Fix bug in which the long term ULE load balancer is executed only once

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Tue Dec 12 11:47:47 UTC 2017


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=223914

--- Comment #3 from Ivan Klymenko <fidaj at ukr.net> ---
Hi.
Maybe, this version use less overhead charges for not SMP and given the
sched_random() function.

--- sched_ule.c.orig    2017-11-29 09:23:11.503091000 +0200
+++ sched_ule.c.my1     2017-12-12 13:40:46.330506000 +0200
@@ -880,11 +880,15 @@
 {
        struct tdq *tdq;

-       if (smp_started == 0 || rebalance == 0)
+       if (smp_started == 0)
                return;

        balance_ticks = max(balance_interval / 2, 1) +
            (sched_random() % balance_interval);
+
+       if (rebalance == 0)
+               return;
+
        tdq = TDQ_SELF();
        TDQ_UNLOCK(tdq);
        sched_balance_group(cpu_top);

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-bugs mailing list