diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c index 95548aa24256fbeeee80fa13bcdb9808bf4763d4..ef258cfad8ec21e4ed327875b08e638a82f8a24c 100644 --- a/src/qemu/qemu_process.c +++ b/src/qemu/qemu_process.c @@ -4553,6 +4553,14 @@ int qemuProcessStart(virConnectPtr conn, if (ret == -1) /* The VM failed to start */ goto cleanup; + VIR_DEBUG("Setting cgroup for emulator (if required)"); + if (qemuSetupCgroupForEmulator(driver, vm, nodemask) < 0) + goto cleanup; + + VIR_DEBUG("Setting affinity of emulator threads"); + if (qemuProcessSetEmulatorAffinity(vm) < 0) + goto cleanup; + VIR_DEBUG("Waiting for monitor to show up"); if (qemuProcessWaitForMonitor(driver, vm, asyncJob, priv->qemuCaps, pos) < 0) goto cleanup; @@ -4588,10 +4596,6 @@ int qemuProcessStart(virConnectPtr conn, if (qemuSetupCgroupForVcpu(vm) < 0) goto cleanup; - VIR_DEBUG("Setting cgroup for emulator (if required)"); - if (qemuSetupCgroupForEmulator(driver, vm, nodemask) < 0) - goto cleanup; - VIR_DEBUG("Setting cgroup for each IOThread (if required)"); if (qemuSetupCgroupForIOThreads(vm) < 0) goto cleanup; @@ -4600,10 +4604,6 @@ int qemuProcessStart(virConnectPtr conn, if (qemuProcessSetVcpuAffinities(vm) < 0) goto cleanup; - VIR_DEBUG("Setting affinity of emulator threads"); - if (qemuProcessSetEmulatorAffinity(vm) < 0) - goto cleanup; - VIR_DEBUG("Setting affinity of IOThread threads"); if (qemuProcessSetIOThreadsAffinity(vm) < 0) goto cleanup;