July 21, 20215 yr I ran across an article whose author claimed that on recent versions of qemu, discard=unmap was functional on virtio disks. So I did some testing. I have not run all permutations, but have tested: Unraid 6.9.2 UEFI and Seabios VMs Q35-5.1 and i440fx-5.1 VMs Windows 10 and Windows 11 with the latest virtio drivers, virtio-win-0.1.196.iso Ubuntu 21.4 raw and qcow2 vdisks vdisks on XFS and BTRFS disks vdisks with and without the copy-on-write attribute set In all cases, the virtio disk was functionally equivalent to a virtio-scsi disk. On file deletion, windows unmapped blocks immediately. Linux unmapped blocks after running fstrim. https://chrisirwin.ca/posts/discard-with-kvm-2020 Edited July 21, 20215 yr by aim60
May 11, 20242 yr Hello, Doesn't work for me Quote <emulator>/usr/local/sbin/qemu</emulator> <disk type='file' device='disk'> <driver name='qemu' type='raw' cache='writeback' discard='unmap'/> <source file='/mnt/user/domains/Gaming/vdisk1.img'/> <target dev='hdc' bus='virtio'/> <boot order='1'/> <address type='pci' domain='0x0000' bus='0x03' slot='0x00' function='0x0'/> </disk> Can you help me ? Edited May 11, 20242 yr by thymon
May 11, 20242 yr Community Expert Did you run the Windows Defrag and Optimize drives after making the change?
May 12, 20242 yr Community Expert If you have the space copy the vdisk elsewhere, then copy back using cp --sparse=always, that will confirm if the vdisk growing is the problem.
November 24, 2025Nov 24 Community Expert I believe it can work with some limitations if the image was created with -o preallocation=off (sparse), but it won't work as well and as efficiently as with a raw image.
November 24, 2025Nov 24 to understand better, I created the vm about a year ago, as a raw image, then converted to qcow2 for additional features, such as snapshots, now I activated discard unmap and did defragmentation but it is not working, I also tried to do cp sparse but without success, is there anything I can do?
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.