Bug 1170484
Summary: | guest can not start when setting " vcpu placement='auto' " | ||||||
---|---|---|---|---|---|---|---|
Product: | Red Hat Enterprise Linux 7 | Reporter: | Song Wang <sowang> | ||||
Component: | libvirt | Assignee: | Martin Kletzander <mkletzan> | ||||
Status: | CLOSED ERRATA | QA Contact: | Virtualization Bugs <virt-bugs> | ||||
Severity: | medium | Docs Contact: | |||||
Priority: | medium | ||||||
Version: | 7.1 | CC: | dyuan, honzhang, jmiao, lhuang, lmiksik, mzhan, rbalakri, xuzhang | ||||
Target Milestone: | rc | Keywords: | Upstream | ||||
Target Release: | --- | ||||||
Hardware: | x86_64 | ||||||
OS: | Linux | ||||||
Whiteboard: | |||||||
Fixed In Version: | libvirt-1.2.8-11.el7 | Doc Type: | Bug Fix | ||||
Doc Text: | Story Points: | --- | |||||
Clone Of: | Environment: | ||||||
Last Closed: | 2015-03-05 07:47:55 UTC | Type: | Bug | ||||
Regression: | --- | Mount Type: | --- | ||||
Documentation: | --- | CRM: | |||||
Verified Versions: | Category: | --- | |||||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||
Cloudforms Team: | --- | Target Upstream Version: | |||||
Embargoed: | |||||||
Bug Depends On: | |||||||
Bug Blocks: | 1170492, 1170495, 1175709 | ||||||
Attachments: |
|
Description
Song Wang
2014-12-04 05:51:49 UTC
Created attachment 964446 [details]
Libvirtd log
I think this is Because bug 1168866 forget this patch commit 411cea638f6ec8503b7142a31e58b1cd85dbeaba Author: Zhou yimin <zhouyimin> Date: Thu Oct 16 22:18:48 2014 +0800 qemu: move setting emulatorpin ahead of monitor showing up If VM is configured with many devices(including passthrough devices) and large memory, libvirtd will take seconds(in the worst case) to wait for monitor. In this period the qemu process may run on any PCPU though I intend to pin emulator to the specified PCPU in xml configuration. Actually qemu process takes high cpu usage during vm startup. So this is not the strict CPU isolation in this case. Signed-off-by: Zhou yimin <zhouyimin> And because qemuSetupCgroupForEmulator haven't been called before qemuSetupCpusetMems in qemuSetupCgroupPostInit, then call virCgroupNewEmulator(priv->cgroup, false, &cgroup_temp) in qemuSetupCpusetMems. Because create is false in this place(virCgroupNewEmulator) and haven't call qemuSetupCgroupForEmulator to create a dir before, so this will get fail in virCgroupMakeGroup this line: if (!virFileExists(path)) { if (!create || mkdir(path, 0755) < 0) { This problem is fixed in libvirt-1.2.8-11.el7.x86_64: # rpm -q libvirt libvirt-1.2.8-11.el7.x86_64 1. configure a guest as automatic vcpu placement # virsh edit a ... <vcpu placement='auto'>4</vcpu> <numatune> <memory mode='strict' placement='auto'/> </numatune> ... 2. succeed to start guest # virsh start a Domain a started So I change the status to VERIFIED. Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://rhn.redhat.com/errata/RHSA-2015-0323.html |