
On 10/12/2012 04:16 PM, Martin Kletzander wrote:
On 10/12/2012 11:50 AM, Osier Yang wrote:
If the vcpu placement is "static", it's just fine to ignore the def->cpumask if emulatorpin is specified. See more details in PATCH 1/7. --- src/qemu/qemu_process.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c index f8a2bfd..63a51c4 100644 --- a/src/qemu/qemu_process.c +++ b/src/qemu/qemu_process.c @@ -2618,7 +2618,8 @@ static int qemuProcessHook(void *data)
/* This must be done after cgroup placement to avoid resetting CPU * affinity */ - if (qemuProcessInitCpuAffinity(h->driver, h->vm, h->nodemask) < 0) + if (!def->cputune.emulatorpin && + qemuProcessInitCpuAffinity(h->driver, h->vm, h->nodemask) < 0) goto cleanup;
if (qemuProcessInitNumaMemoryPolicy(h->vm, h->nodemask) < 0)
I think it is more readable in qemuProcessInitCpuAffinity, makes more sense to me, what do you think?
But anyway, no problem here, so ACK, because we are sure that if there is emulatorpin specified, then there is no placement='auto' as well as no need for checking cpumask (handled with cgroups already. Martin