Bug 1006710
Summary: | domain with auto numatune placement and a nodeset specified crashes libvirtd | |||
---|---|---|---|---|
Product: | Red Hat Enterprise Linux 6 | Reporter: | Ján Tomko <jtomko> | |
Component: | libvirt | Assignee: | Ján Tomko <jtomko> | |
Status: | CLOSED ERRATA | QA Contact: | Virtualization Bugs <virt-bugs> | |
Severity: | unspecified | Docs Contact: | ||
Priority: | unspecified | |||
Version: | 6.4 | CC: | acathrow, dyuan, gsun, honzhang, jmiao, shyu, tlavigne | |
Target Milestone: | rc | |||
Target Release: | --- | |||
Hardware: | Unspecified | |||
OS: | Unspecified | |||
Whiteboard: | ||||
Fixed In Version: | libvirt-0.10.2-25.el6 | Doc Type: | Bug Fix | |
Doc Text: |
Cause: When parsing the domain XML with 'auto' numatune placement and a nodeset specified, the nodeset bitmap was freed twice.
Consequence: Libvirtd crashed due to double free.
Fix: Set the pointer to NULL after freeing it.
Result: Libvirtd doesn't crash anymore.
|
Story Points: | --- | |
Clone Of: | ||||
: | 1006722 (view as bug list) | Environment: | ||
Last Closed: | 2013-11-21 09:10:46 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: | 1006722 |
Description
Ján Tomko
2013-09-11 07:21:05 UTC
Fixed upstream: commit ef5d51d491356f1f4287aa3a8b908b183b6dd9aa Author: Liuji (Jeremy) <jeremy.liu> AuthorDate: 2013-09-10 22:13:32 -0400 Commit: Ján Tomko <jtomko> CommitDate: 2013-09-11 09:18:28 +0200 virDomainDefParseXML: set the argument of virBitmapFree to NULL after calling virBitmapFree After freeing the bitmap pointer, it must set the pointer to NULL. This will avoid any other use of the freed memory of the bitmap pointer. https://bugzilla.redhat.com/show_bug.cgi?id=1006710 Signed-off-by: Liuji (Jeremy) <jeremy.liu> git describe: v1.1.2-96-gef5d51d Downstream patch posted: http://post-office.corp.redhat.com/archives/rhvirt-patches/2013-September/msg00293.html This bug is fixed in libvirt-0.10.2-25.el6.x86_64, so I choose to change the status to VERIFIED.
# rpm -q libvirt
libvirt-0.10.2-25.el6.x86_64
# virsh define /dev/stdin <<EOF
> <domain type='qemu'>
> <name>duck</name>
> <memory unit='MiB'>32</memory>
> <numatune>
> <memory mode='preferred' placement='auto' nodeset='0'/>
> </numatune>
> <os>
> <type arch='x86_64' machine='pc'>hvm</type>
> </os>
> </domain>
> EOF
Domain duck defined from /dev/stdin
# virsh undefine duck
Domain duck has been undefined
# service libvirtd status
libvirtd (pid 22361) is running...
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. http://rhn.redhat.com/errata/RHBA-2013-1581.html |