Bug 1129372
| Summary: | Failed to start domain with specified cputune after decreasing vcpu number | ||
|---|---|---|---|
| Product: | Red Hat Enterprise Linux 7 | Reporter: | Peter Krempa <pkrempa> |
| Component: | libvirt | Assignee: | Peter Krempa <pkrempa> |
| Status: | CLOSED ERRATA | QA Contact: | Virtualization Bugs <virt-bugs> |
| Severity: | medium | Docs Contact: | |
| Priority: | medium | ||
| Version: | 7.0 | CC: | dyuan, honzhang, jmiao, mzhan, rbalakri, virt-bugs |
| Target Milestone: | rc | ||
| Target Release: | --- | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| Whiteboard: | |||
| Fixed In Version: | libvirt-1.2.8-1.el7 | Doc Type: | Bug Fix |
| Doc Text: | Story Points: | --- | |
| Clone Of: | 1126685 | Environment: | |
| Last Closed: | 2015-03-05 07:42:28 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: | |||
|
Description
Peter Krempa
2014-08-12 15:14:12 UTC
Fixed with:
commit 482f4e596fcecff7a9b6ca3ee2b946acfdaf0823
Author: Peter Krempa <pkrempa>
Date: Fri Aug 15 16:41:47 2014 +0200
qemu: process: Pin on per-vcpu basis instead of per-vcpupin element
Pin existing vcpus rather than existing vcpu pinning infos. This
increases the complexity of the lookup, but avoids pinning cpus that are
not enabled actually.
commit 60df621f75af6e29d721d95a738c8860eed5590e
Author: Peter Krempa <pkrempa>
Date: Fri Aug 15 16:28:58 2014 +0200
qemu: cpu: unplug: Remove vcpu pinning on cold cpu unplug
Remove the pinning info when removing to CPU, otherwise when the VM will
be started our code will try to pin non-existing vcpus as the definition
wasn't updated.
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1129372
commit 64bbf4c33d8ad6b5ade5d538d79d15d4cae27a15
Author: Peter Krempa <pkrempa>
Date: Thu Aug 14 14:38:06 2014 +0200
conf: Refactor virDomainVcpuPinDefParseXML
Tidy up control flow, change boolean argument to use 'bool', improve
error message in case the function is used to parse emulator pinning
info and avoid a few temp variables that made no sense.
Also when the function is called to parse emulator pinning info, there's
no need to check the processor ID in that case.
commit cb8a94bfa037b12b1c1896bd3c02f5bf6746d9e1
Author: Peter Krempa <pkrempa>
Date: Thu Aug 14 14:20:37 2014 +0200
conf: cpupin: Remove useless checking of vcpupin element count
The check doesn't make much sense as right below it the entries are
either checked for duplicity or ignored in some cases. Having this check
doesn't actually forbid passing invalid values.
v1.2.7-150-g482f4e5
This bug is fixed:
# rpm -q libvirt
libvirt-1.2.8-8.el7.x86_64
# virsh start r7a
Domain r7a started
# virsh dumpxml r7a
...
<vcpu placement='static' cpuset='0-6'>5</vcpu>
<cputune>
<emulatorpin cpuset='3-6'/>
</cputune>
...
# virsh setvcpus r7a 1 --maximum --config
# virsh destroy r7a
Domain r7a destroyed
# virsh dumpxml r7a
...
<vcpu placement='static' cpuset='0-6'>1</vcpu>
<cputune>
<emulatorpin cpuset='3-6'/>
</cputune>
...
# virsh start r7a
Domain r7a started
So 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 |