can the scheduler decide to schedule an interrupted but runnable thread on another CPU core? What are the implications for code?
Adrian Chadd
adrian at freebsd.org
Fri Feb 14 22:57:21 UTC 2014
[snip]
So it turns out that the threads somehow migrating between CPUs during
flowtable_lookup_common() is the clock swi(s), which I'm guessing are
driving the per-CPU TCP callwheel timeouts.
It turns out the per-CPU clock swis aren't CPU-pinned, so they can be
preempted and migrated.
I'm not sure if this is correct behaviour. I'll experiment with
pinning these to their base CPU and see if this causes issues.
Thanks,
-a
More information about the freebsd-arch
mailing list