On 03/11/2015 13:12, Richard W.M. Jones wrote: > > I wrote a tool called virt-sparsify which runs fstrim on disks via > qemu. My colleague asked me a good question: Is this safe if qemu is > killed (^C)? Could it corrupt the guest? > > Using 'virt-sparsify --inplace disk.img' is essentially equivalent to > doing: > > qemu-kvm \ > -kernel <recent-kernel> \ > -drive file=disk.img,discard=unmap,[virtio-scsi] \ > -drive file=appliance > > And in the appliance doing: > > foreach fs in filesystems: > mount -o discard fs /sysroot > fstrim /sysroot > umount /sysroot > sync > poweroff > > I think the answer is "safe", as long as the Linux kernel and qemu are > written carefully, but it would be good to get an expert opinion. > > It looks like fstrim just sends discard requests. And mount/umount > should be safe by the usual rules of journalling.
Yes, this is correct. Paolo