Bug 1036005

Summary: Can't revert running guest without RNG device to running snapshot with RNG device and vice versa.
Product: Red Hat Enterprise Linux 7 Reporter: hyao <hyao>
Component: libvirtAssignee: Peter Krempa <pkrempa>
Status: CLOSED NOTABUG QA Contact: Virtualization Bugs <virt-bugs>
Severity: medium Docs Contact:
Priority: medium    
Version: 7.0CC: acathrow, chhu, codong, cwei, dyuan, lcui, mzhan, shyu, tzheng, ydu
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-12-02 12:16:04 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:

Description hyao@redhat.com 2013-11-29 07:43:40 UTC
Description
Can't revert running guest without RNG device to running snapshot with RNG device and vice versa.

Version:
libvirt-1.1.1-13.el7.x86_64

How reproducible:
100%

Steps to Reproduce:
1.Create a snapshot of the running guest with RNG device.
# virsh snapshot-info rng random_run
Name:           random_run
Domain:         rng
Current:        no
State:          running
Location:       internal
Parent:         -
Children:       0
Descendants:    0
Metadata:       yes

# virsh snapshot-dumpxml rng random_run
<domainsnapshot>
 ...
      <rng model='virtio'>
        <backend model='random'>/dev/random</backend>
      </rng>
    </devices>
    <seclabel type='dynamic' model='selinux' relabel='yes'/>
  </domain>
</domainsnapshot>


3. Remove the rng device and reboot the guest without RNG device. Then Revert
| the guest to the running snapshot with RNG device.
# virsh snapshot-revert rng random_run



Actual results:
Step3:
# virsh snapshot-revert rng random_run
error: revert requires force: Target domain RNG device count '0' does not match source count '1'

Revert running guest with RNG device to running snapshot without RNG device, get the similar error:
# virsh snapshot-revert rng run_norng
error: revert requires force: Target domain RNG device count '1' does not match source count '0'


Expected results:
Revert proceeds smoothly without any error.

Additional info:

Comment 2 Peter Krempa 2013-12-02 12:16:04 UTC
If you are running a VM with a different hardware configuration as the one saved in a snapshot you need to specify the --force argument for snapshot revert as qemu needs to be restarted to accomodate a change in hardware topology. This is also indicated by the error message stated above. This is a desired behavior.

Closing as NOTABUG.