#1 Global Leader in Data Resilience

Could not apply snapshot: Device has active dirty bitmaps

KB ID: 4744
Product: Veeam Backup & Replication | 12.2 | 12.3 | 12.3.1
Published: 2025-06-09
Last Modified: 2025-06-09
mailbox
Get weekly article updates
By subscribing, you are agreeing to have your personal information managed in accordance with the terms of Veeam's Privacy Notice.

Cheers for trusting us with the spot in your mailbox!

Now you’re less likely to miss what’s been brewing in our knowledge base with this weekly digest

error icon

Oops! Something went wrong.

Please, try again later.

Challenge

When the user attempts to use the Rollback function for a snapshot on a Proxmox Virtual Environment (PVE) Virtual Machine (VM) that is protected by Veeam Backup & Replication, the following error occurs:

qemu-img: Could not apply snapshot '%%': Device has active dirty bitmaps

Cause

This error occurs because qemu, by default, does not allow the bitmap to be erased when applying the snapshot.

Solution

The solution depends on the disk type:
 

RAW and VMDK Disks

The bitmaps are not persistent. Turn the VM off to delete the dirty bitmap, then use the snapshot Rollback function.
 

QCOW2 Disks

The bitmaps are persistent; even powering the VM off will not delete them. Manual actions are required:  

  1. Connect to the PVE node where the VM resides via SSH, and execute the following command:
    Note: In the command below, replace <vm-ID-#> with the VM's ID Number.
qm showcmd <vm-ID-#> --pretty
  1. In the command output, identify the path to the qcow2 disk.
    Example:
    /usr/bin/kvm \
     -id 638 \
     -name 'AM-UbuntuonCIFS,debug-threads=on' \
     -no-shutdown \
     -chardev 'socket,id=qmp,path=/var/run/qemu-server/638.qmp,server=on,wait=off' \
     -mon 'chardev=qmp,mode=control' \
     -chardev 'socket,id=qmp-event,path=/var/run/qmeventd.sock,reconnect-ms=5000' \
     -mon 'chardev=qmp-event,mode=control' \
     -pidfile /var/run/qemu-server/638.pid \
     -daemonize \
     -smbios 'type=1,uuid=232415df-9102-404d-b77d-6c97ea15988d' \
     -smp '4,sockets=1,cores=4,maxcpus=4' \
     -nodefaults \
     -boot 'menu=on,strict=on,reboot-timeout=1000,splash=/usr/share/qemu-server/bootsplash.jpg' \
     -vnc 'unix:/var/run/qemu-server/638.vnc,password=on' \
     -cpu qemu64,+aes,enforce,+kvm_pv_eoi,+kvm_pv_unhalt,+pni,+popcnt,+sse4.1,+sse4.2,+ssse3 \
     -m 4096 \
     -object 'iothread,id=iothread-virtioscsi0' \
     -global 'PIIX4_PM.disable_s3=1' \
     -global 'PIIX4_PM.disable_s4=1' \
     -device 'pci-bridge,id=pci.1,chassis_nr=1,bus=pci.0,addr=0x1e' \
     -device 'pci-bridge,id=pci.2,chassis_nr=2,bus=pci.0,addr=0x1f' \
     -device 'pci-bridge,id=pci.3,chassis_nr=3,bus=pci.0,addr=0x5' \
     -device 'vmgenid,guid=8cbbb400-0332-42dc-a1f8-ac0b49b4770d' \
     -device 'piix3-usb-uhci,id=uhci,bus=pci.0,addr=0x1.0x2' \
     -device 'usb-tablet,id=tablet,bus=uhci.0,port=1' \
     -device 'VGA,id=vga,bus=pci.0,addr=0x2' \
     -device 'virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x3,free-page-reporting=on' \
     -iscsi 'initiator-name=iqn.1993-08.local.amust:pdcqa420' \
     -drive 'if=none,id=drive-ide2,media=cdrom,aio=io_uring' \
     -device 'ide-cd,bus=ide.1,unit=0,drive=drive-ide2,id=ide2,bootindex=101' \
     -device 'virtio-scsi-pci,id=virtioscsi0,bus=pci.3,addr=0x1,iothread=iothread-virtioscsi0' \
     -drive 'file=/mnt/pve/cifs-truenas/images/638/vm-638-disk-0.qcow2,if=none,id=drive-scsi0,format=qcow2,cache=none,aio=native,detect-zeroes=on' \
     -device 'scsi-hd,bus=virtioscsi0.0,channel=0,scsi-id=0,lun=0,drive=drive-scsi0,id=scsi0,bootindex=100' \
     -netdev 'type=tap,id=net0,ifname=tap638i0,script=/usr/libexec/qemu-server/pve-bridge,downscript=/usr/libexec/qemu-server/pve-bridgedown,vhost=on' \
     -device 'virtio-net-pci,mac=BC:24:11:E3:2A:F0,netdev=net0,bus=pci.0,addr=0x12,id=net0,rx_queue_size=1024,tx_queue_size=256,bootindex=102' \
     -machine 'type=pc+pve1  \
    

  2. Execute qemu-img info  command to see the dirty bitmap name:
qemu-img info /mnt/pve/path/to/disk.qcow2

Example:

qemu-img info /mnt/pve/cifs-truenas/images/638/vm-638-disk-0.qcow2
image: /mnt/pve/cifs-truenas/images/638/vm-638-disk-0.qcow2
file format: qcow2
virtual size: 64 GiB (68719476736 bytes)
disk size: 11.9 GiB
cluster_size: 65536
Format specific information:
    compat: 1.1
    compression type: zlib
    lazy refcounts: false
    bitmaps:
        [0]: 
            flags: 
                [0]: in-use
                [1]: auto
            name: VeeamTmp_dddbe17a-9f73-4f02-9a25-140f54b40773_0d528621-6463-4d66-bc91-09b484f6e886
            granularity: 65536
    refcount bits: 16
    corrupt: false
    extended l2: false
Child node '/file':
    filename: /mnt/pve/cifs-truenas/images/638/vm-638-disk-0.qcow2
    protocol type: file
    file length: 64 GiB (68730687488 bytes)
    disk size: 11.9 GiB
  1. Delete the bitmap using the following command:
qemu-img bitmap --remove /mnt/pve/path/to/disk.qcow2 VeeamTmp_guid

Example:

qemu-img bitmap --remove /mnt/pve/cifs-truenas/images/638/vm-638-disk-0.qcow2 VeeamTmp_dddbe17a-9f73-4f02-9a25-140f54b40773_0d528621-6463-4d66-bc91-09b484f6e886 

 

  1. With the bitmap now deleted, the snapshot Rollback function will be allowed by qemu.
To submit feedback regarding this article, please click this link: Send Article Feedback
To report a typo on this page, highlight the typo with your mouse and press CTRL + Enter.

Spelling error in text

Thank you!

Thank you!

Your feedback has been received and will be reviewed.

Oops! Something went wrong.

Please, try again later.

You have selected too large block!

Please try select less.

KB Feedback/Suggestion

This form is only for KB Feedback/Suggestions, if you need help with the software open a support case

By submitting, you are agreeing to have your personal information managed in accordance with the terms of Veeam's Privacy Notice.
Verify your email to continue your product download
We've sent a verification code to:
  • Incorrect verification code. Please try again.
An email with a verification code was just sent to
Didn't receive the code? Click to resend in sec
Didn't receive the code? Click to resend
Thank you!

Thank you!

Your feedback has been received and will be reviewed.

error icon

Oops! Something went wrong.

Please, try again later.