Bug 1679021

Summary: RuntimeError: Path does not exist: /var/lib/libvirt/qemu/nvram/test_VARS.fd
Product: Red Hat Enterprise Linux 7 Reporter: Xiaodai Wang <xiaodwan>
Component: virt-managerAssignee: Pavel Hrdina <phrdina>
Status: CLOSED ERRATA QA Contact: Virtualization Bugs <virt-bugs>
Severity: medium Docs Contact:
Priority: medium    
Version: 7.7CC: juzhou, mxie, mzhan, phrdina, tzheng, virt-bugs, virt-mgr-maint, zili
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: virt-manager-1.5.0-3.el7 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: 1679018 Environment:
Last Closed: 2019-08-06 13:08:01 UTC Type: ---
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: 1679018    
Bug Blocks:    

Description Xiaodai Wang 2019-02-20 06:42:50 UTC
+++ This bug was initially created as a clone of Bug #1679018 +++

Description of problem:
RuntimeError: Path does not exist: /var/lib/libvirt/qemu/nvram/test_VARS.fd

Version-Release number of selected component (if applicable):
virt-install-2.0.0-4.el8.noarch

How reproducible:
100%

Steps to Reproduce:
1. Create a uefi guest by '--import' and '--noreboot'.
# virt-install --name test --memory 1024 --disk /var/lib/libvirt/images/test.img,size=1 --import --boot uefi --noreboot
2. Clone the guest.
# virt-clone -o test --auto-clone

Actual results:
RuntimeError: Path does not exist: /var/lib/libvirt/qemu/nvram/test_VARS.fd

Expected results:
virt-clone should success.

Additional info:
'/var/lib/libvirt/qemu/nvram/test_VARS.fd' is created automatically when vm first boots up, so if the file doesn't exist,
virt-clone should not fail.

Comment 2 Pavel Hrdina 2019-03-28 15:42:34 UTC
Upstream commit:

commit 986097d5f8e7a62d2aa6edd4596302d4e0af4175
Author: Pavel Hrdina <phrdina>
Date:   Thu Mar 28 14:27:04 2019 +0100

    cloner: don't fail to clone VM if nvram file doesn't exist

Comment 5 ysu@redhat.com 2019-04-29 09:29:32 UTC
I can reproduce this issue with package:
virt-manager-1.5.0-1.el7.noarch

Then try to verify this bug with new build:
virt-manager-1.5.0-3.el7.noarch
virt-install-1.5.0-3.el7.noarch
libvirt-4.5.0-12.el7.x86_64
qemu-kvm-rhev-2.12.0-26.el7.x86_64
libvirt-python-4.5.0-1.el7.x86_64

Steps:

1.Create a uefi guest but nvram file doesn't exist by '-import' and 'noreboot'
#virt-install --name test --memory 1024 --disk /var/lib/libvirt/images/test.img,size=1 --import --boot uefi --noreboot
Starting install...
Allocating 'test.img'                                       | 1.0 GB  00:01     
Domain creation completed.

1.1 The uefi guest can be created successfully with xml info:'<nvram>/var/lib/libvirt/qemu/nvram/test_VARS.fd</nvram>'.
1.2 Check path(/var/lib/libvirt/qemu/nvram/) without file(test_VARS.fd)
# ls /var/lib/libvirt/qemu/nvram/test_VARS.fd
ls: cannot access /var/lib/libvirt/qemu/nvram/test_VARS.fd: No such file or directory

Result:the file does not exist.

2.Check the guest can be cloned successfully.
# virt-clone -o test --auto-clone
Allocating 'test-clone.img' | 1.0 GB 00:00
Clone 'test-clone' created successfully.

#virsh dumpxml test-clone | grep nvram
<nvram>/var/lib/libvirt/qemu/nvram/test-clone_VARS.fd</nvram>

#ll  /var/lib/libvirt/qemu/nvram/test-clone_VARS.fd
ls: cannot access /var/lib/libvirt/qemu/nvram/test-clone_VARS.fd: No such file or directory

Result: virt-clone finishes successfully without flie 'test_VARS.fd' and the new guest can start successfully.

I move this bug from ON_QA to VERIFIED based on above testing.

Comment 7 errata-xmlrpc 2019-08-06 13:08:01 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.

https://access.redhat.com/errata/RHBA-2019:2232