<div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div>Hi, <br></div><div><br></div><div>I am plagued with this problem as well however I recalled that qcow2 itself supports snapshots independently of libvirt. Also I decided to check in virsh to see if maybe there was an option that would allow me to exlcude the pflash from the snapshot. I didn't find an exclusion option but I did find this which works with my EFI Win2k16 DC VM:<br></div><div><br></div><div>snapshot-create-as --domain Win2k16Edge --name EdgeServerBackup --disk-only</div><div><br></div><div>The description of the option doesn't seem to imply that it isn't creating a snapshot of the VM: <br></div><div>    --disk-only      capture disk state but not vm state</div><div><br></div><div>Just that it's not dumping the memory; so I'm not really sure why this works, but it does: <br></div><div><br></div><div>virsh # snapshot-list Win2k16DomainController<br> Name                 Creation Time             State<br>------------------------------------------------------------<br> DomainControllerBackup 2018-09-15 01:33:56 -0700 disk-snapshot<br><br>virsh #<br></div><div><br></div><div>And I can see that it has indeed created a snapshot</div><div>➜  RAID5_BACKED_DISKS_001 ls -lah Win2k16DomainController.*<br>-rw------- 1 qemu qemu 20M Sep 15 02:01 Win2k16DomainController.DomainControllerBackup<br>-rw------- 1 qemu qemu 34G Sep 15 01:33 Win2k16DomainController.qcow2<br></div><div><br></div><div>However when I try to list snapshots linked to the image it doesn't show up. But the snapshot file it created is growing in size as new data is written to the disk. So I'll have to investigate this a little more and figure out why they're not linked:<br></div><div>➜  RAID5_BACKED_DISKS_001 qemu-img snapshot -l Win2k16DomainController.qcow2<br>➜  RAID5_BACKED_DISKS_001<br></div><div><br></div><div><br></div><div>Some thoughts on how to improve snapshots to support this: <br></div><div><br></div><div>The pflash nvram would be nice to have a snapshot of though since it has bios specific settings (none of which are currently customized but it's still a nice-to-have.)  I think it would be nice in any case to have an attribute to for disks (in qemu/libvirt) to exclude disks from snapshots, including the pflash since the disk image type is not currently snapshot-able. The only problems I can think of with this is <br></div><div><br></div><div>1. Convincing somebody to accept a patch <br></div><div>2. Disks and pflash based firmware are different XML node types, so it's likely the exclusion option would have to be implemented in whatever loader is:<br></div><div> <loader readonly='yes' type='pflash'>/usr/share/edk2-ovmf/OVMF_CODE.fd</loader><br>    <nvram>/var/lib/libvirt/qemu/nvram/win10_VARS.fd</nvram><br>...</div><div> <disk type='file' device='disk'><br>      <driver name='qemu' type='qcow2' cache='unsafe' iothread='1'/><br>      <source file='/home/RAID5_BACKED_DISKS_001/Win2k16Workstation.qcow2'/><br>      <target dev='vda' bus='virtio'/><br>      <address type='pci' domain='0x0000' bus='0x00' slot='0x0b' function='0x0'/><br>    </disk><br></div><div><br></div><div>Also something else that I'm thinking about now is that the readonly='yes' flag was set by default for these. That seems to imply it would never change anyway, so if it could be excluded from the snapshot it would make sense for it to anyway in this case. <br></div><div><br></div><div>Also IIRC, somebody somewhere mentioned using qcow2 as the image format for pflash, which would make disk snapshots for this possible, or making <loader type="qcow2" work. Actually that may already work, but I'll have to check.<br></div><div><br></div><div>Here's a copy of the domxml for the VM for reference: <a href="https://gitlab.com/snippets/1754143">https://gitlab.com/snippets/1754143</a></div><div><br></div><div>Hope that helps somebody,</div><div><br></div><div>-Paige</div><div><br></div></div></div></div></div></div></div></div></div><br><div class="gmail_quote"><div dir="ltr">On Tue, Sep 5, 2017 at 1:35 AM Pavel Hrdina <<a href="mailto:phrdina@redhat.com" target="_blank">phrdina@redhat.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Mon, Sep 04, 2017 at 08:30:23AM -0700, <a href="mailto:ovirt@fateknollogee.com" target="_blank">ovirt@fateknollogee.com</a> wrote:<br>
> o/s: Fedora 26 + Virt-Manager v1.42<br>
> vm: Win 10 UEFI + Q35<br>
> <br>
> Error creating snapshot: Operation not supported:<br>
> Internal snapshots of a VM with pflash based firmware are not supported.<br>
> <br>
> Is there a fix?<br>
<br>
Hi, unfortunately no, and it will probably take some time to support<br>
snapshots for guests with UEFI.<br>
<br>
The issue is that internal snapshots are obsolete and misses a lot of<br>
features that external snapshots have.  They are basically usable only<br>
for guests with only one disk, where everything including the guest<br>
state is stored in one file.<br>
<br>
In order to get this fixed and to get snapshots for guests with UEFI<br>
virt-manager will have to switch to use external snapshots, there is<br>
already a BUG for it [1].  However, it cannot be currently done because<br>
libvirt still lacks some mandatory features for external snapshots, for<br>
example you cannot revert to external snapshot which makes them<br>
unusable.  There is also a BUG for libvirt to implement this [2].<br>
<br>
Pavel<br>
<br>
[1] <<a href="https://bugzilla.redhat.com/show_bug.cgi?id=1403951" rel="noreferrer" target="_blank">https://bugzilla.redhat.com/show_bug.cgi?id=1403951</a>><br>
[2] <<a href="https://bugzilla.redhat.com/show_bug.cgi?id=1402581" rel="noreferrer" target="_blank">https://bugzilla.redhat.com/show_bug.cgi?id=1402581</a>><br>
_______________________________________________<br>
virt-tools-list mailing list<br>
<a href="mailto:virt-tools-list@redhat.com" target="_blank">virt-tools-list@redhat.com</a><br>
<a href="https://www.redhat.com/mailman/listinfo/virt-tools-list" rel="noreferrer" target="_blank">https://www.redhat.com/mailman/listinfo/virt-tools-list</a></blockquote></div>