With that in mind, the right answer for ZFS is probably for virt-manager/virt-install to NOT ask for any preallocation at all in the ZFS case.
The fun of course is how does virt-manager know whether the image it is about to create is on ZFS or not. This might point to an RFE for storage pools to report whether a given storage pool instance is capable of efficiently preallocating or not.
Yes, it seems fallocate on ZFS is problematic:
https:/ /github. com/zfsonlinux/ zfs/issues/ 326
With that in mind, the right answer for ZFS is probably for virt-manager/ virt-install to NOT ask for any preallocation at all in the ZFS case.
The fun of course is how does virt-manager know whether the image it is about to create is on ZFS or not. This might point to an RFE for storage pools to report whether a given storage pool instance is capable of efficiently preallocating or not.