Bug 728428 - hotplug disk/device and then restart libvirtd, the disk/device will be attached permanently
Summary: hotplug disk/device and then restart libvirtd, the disk/device will be attach...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: libvirt
Version: 6.2
Hardware: x86_64
OS: Linux
medium
medium
Target Milestone: rc
: ---
Assignee: Osier Yang
QA Contact: Virtualization Bugs
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2011-08-05 05:50 UTC by weizhang
Modified: 2011-12-06 11:23 UTC (History)
6 users (show)

Fixed In Version: libvirt-0.9.4-13.el6
Doc Type: Bug Fix
Doc Text:
Cause libvirt reloads the domain configuration from status XML (e.g. /var/run/libvirt/qemu/$domain.xml) if the status XML exists (means the domain is running) when restarting. However, it doesn't record the original domain configuration in this situation. Consequence it's not able to restore the domain configuration to the original one when destroying and shutdown. The user will see the not persistent attached devices still exists after restarting libvirtd. Fix Record the original domain configuration by assigning persistent domain configuration to dom->newDef if it's NULL and the domain is running. Result The not persistent attached device will not exist after libvirtd is restarted, which is the correct logic.
Clone Of:
Environment:
Last Closed: 2011-12-06 11:23:38 UTC


Attachments (Terms of Use)


Links
System ID Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2011:1513 normal SHIPPED_LIVE libvirt bug fix and enhancement update 2011-12-06 01:23:30 UTC

Description weizhang 2011-08-05 05:50:37 UTC
Description of problem:
hotplug disk/device and then restart libvirtd, the disk/device will be attached permanently

Version-Release number of selected component (if applicable):
libvirt-0.9.4-1.el6.x86_64
qemu-kvm-0.12.1.2-2.176.el6.x86_64
kernel-2.6.32-177.el6.x86_64

How reproducible:
100%

Steps to Reproduce:
1. start a guest
2. prepare a disk for hotplug
3. virsh attach-disk guest /var/lib/libvirt/images/tt.img vda
4. service libvirtd restart
5. destroy the guest and start it again
  
Actual results:
the hot-plugged disk still exist

Expected results:
the hot-plugged disk should be removed

Additional info:

Comment 3 Osier Yang 2011-09-07 11:51:07 UTC
https://www.redhat.com/archives/libvir-list/2011-September/msg00071.html

Patch posted to upstream.

Comment 4 Osier Yang 2011-09-22 00:44:42 UTC
patch committed to upstream

Comment 5 Osier Yang 2011-09-22 05:12:04 UTC
patch posted internally, move to POST.

Comment 9 yanbing du 2011-09-26 09:09:24 UTC
Test with libvirt-0.9.4-13.el6.x86_64, after restart the guest, the hot-plugged disk disappeared.
Move to VERIFIED.

Comment 10 Osier Yang 2011-11-14 08:55:26 UTC
    Technical note added. If any revisions are required, please edit the "Technical Notes" field
    accordingly. All revisions will be proofread by the Engineering Content Services team.
    
    New Contents:
Cause
    libvirt reloads the domain configuration from status XML (e.g. /var/run/libvirt/qemu/$domain.xml) if the status XML exists (means the domain is running) when restarting. However, it doesn't record the original domain configuration in
this situation.

Consequence
     it's not able to restore the domain configuration to the original one when destroying and shutdown. The user will see
the not persistent attached devices still exists after restarting
libvirtd.  

Fix
   Record the original domain configuration by assigning persistent domain configuration to dom->newDef if it's NULL and the domain is running.

Result
   The not persistent attached device will not exist after libvirtd is restarted, which is the correct logic.

Comment 11 errata-xmlrpc 2011-12-06 11:23:38 UTC
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-2011-1513.html


Note You need to log in before you can comment on or make changes to this bug.