On Thu, 25 Feb 2016 17:53:30 -0500
John Ferlan <jferlan(a)redhat.com> wrote:
On 02/23/2016 10:58 AM, Henning Schild wrote:
> Move qemuSetupCgroupForEmulator up under qemuSetupCgroup. That way
> we move the one main thread right into the emulator cgroup, instead
> of moving multiple threads later on. And we do not actually want any
> threads running in the parent cgroups (cpu cpuacct cpuset).
>
> Signed-off-by: Henning Schild <henning.schild(a)siemens.com>
> ---
> src/qemu/qemu_process.c | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
This is where things are going to get messy. Peter Krempa posted a
series after yours:
http://www.redhat.com/archives/libvir-list/2016-February/msg01211.html
which conflicts with this and the followup patch. Hopefully between
you, Peter, and Dan something can be worked out.
Peters patch 1 seems like a semantic noop. It just merge cgroup
creation and affinity setting. I can probably rebase on top of that
without a problem.
Also, it seems starting at patch 7 there's more conflicts with
the top
of the upstream, so I couldn't 'git am -3' them into a local branch.
John
> diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c
> index 05cbda2..65f718c 100644
> --- a/src/qemu/qemu_process.c
> +++ b/src/qemu/qemu_process.c
> @@ -4895,6 +4895,10 @@ qemuProcessLaunch(virConnectPtr conn,
> if (qemuSetupCgroup(driver, vm, nnicindexes, nicindexes) < 0)
> goto cleanup;
>
> + VIR_DEBUG("Setting cgroup for emulator (if required)");
> + if (qemuSetupCgroupForEmulator(vm) < 0)
> + goto cleanup;
> +
> /* This must be done after cgroup placement to avoid resetting
> CPU
> * affinity */
> if (!vm->def->cputune.emulatorpin &&
> @@ -4943,10 +4947,6 @@ qemuProcessLaunch(virConnectPtr conn,
> if (rv == -1) /* The VM failed to start */
> goto cleanup;
>
> - VIR_DEBUG("Setting cgroup for emulator (if required)");
> - if (qemuSetupCgroupForEmulator(vm) < 0)
> - goto cleanup;
> -
> VIR_DEBUG("Setting affinity of emulator threads");
> if (qemuProcessSetEmulatorAffinity(vm) < 0)
> goto cleanup;
>