Red Hat Bugzilla – Bug 430310
[RHEL5.2]: In a domU, all tasks are taskset to cpu 0 by default
Last modified: 2008-05-21 11:08:03 EDT
Description of problem:
When doing some performance testing, Barry noticed that running his applications
inside a 5.2 domU resulted in poor performance. After some debugging, it was
determined that the reason his applications had poor performance is that all
processes in a domU were being pinned to vCPU 0, so scalability was tanking.
This is not a hypervisor problem, as just changing the domU kernel from -75 back
to -53 makes the problem go away. Bisecting kernels, it looks like -58 kernel
is fine, but -59 kernel is where the problem starts. I'm going to start looking
at patches in the -59 kernel.
It looks like the "force /sbin/init off isolated cpus" patch is probably the
culprit here. There is an additional upstream changeset:
That we do *not* have in the RHEL-5 kernel; this uses cpu_possible_map instead
of cpu_online_map to figure out isolated CPUs, which seems to fix the issue in
my limited testing. I'm going to produce a real patch, then run it through brew
and get some testing on it.
Created attachment 293025 [details]
Patch to fix the problem where init is only set to vcpu 0
Barry, I think we have a winner.
Rik, do you want to rebuild your other test kernel with this fix ? Or is my
workaround (using taskset) enough ?
Barry, the taskset workaround is good enough for you, but too easy to forget for
the folks at the SAP workshop.
I just kicked off http://brewweb.devel.redhat.com/brew/taskinfo?taskID=1134361
and will update the kernels on my page once the build finishes.
I verified the patch works in Rik's kernel
You can download this test kernel from http://people.redhat.com/dzickus/el5
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on the solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.