Public bug reported: Apologies if this is just an inherent part of paravirtualization that should be expected.
In my host, I have an LVM thin pool with chunk_size 128MB. Within it, I have a thin volume "tmp". In the host: # fdisk -l /dev/lvm/tmp Disk /dev/lvm/tmp: 256 MiB, 268435456 bytes, 524288 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 4096 bytes I/O size (minimum/optimal): 262144 bytes / 134217728 bytes Disklabel type: gpt Disk identifier: BAE3154E-6E85-F642-8129-BAD7B58B2775 Device Start End Sectors Size Type /dev/lvm/tmp1 2048 524254 522207 255M Linux filesystem $ lsblk ... └─lvm-tmp 254:13 0 256M 0 lvm └─lvm-tmp1 254:14 0 255M 0 part $ cat /sys/dev/block/254:13/discard_alignment 0 $ cat /sys/dev/block/254:13/queue/discard_granularity 134217728 $ cat /sys/dev/block/254:13/queue/discard_max_bytes 17179869184 $ cat /sys/dev/block/254:13/queue/discard_max_hw_bytes 0 $ cat /sys/dev/block/254:13/queue/discard_zeroes_data 0 $ cat /sys/dev/block/254:14/discard_alignment 133169152 $ cat /sys/dev/block/254:14/queue/discard_granularity 134217728 $ cat /sys/dev/block/254:14/queue/discard_max_bytes 17179869184 $ cat /sys/dev/block/254:14/queue/discard_max_hw_bytes 0 $ cat /sys/dev/block/254:14/queue/discard_zeroes_data 0 If this is given to QEMU using virtio-scsi: -device virtio-scsi-pci,id=scsi1 \ -drive driver=raw,node-name=hdb,file=/dev/lvm/tmp,if=none,discard=unmap,id=hd2 \ -device scsi-hd,drive=hd2,bootindex=1 \ Then incorrect values are given: $ lsblk ... sdb 8:16 0 256M 0 disk └─sdb1 8:17 0 255M 0 part /mnt $ cat /sys/dev/block/8:16/discard_alignment 0 $ cat /sys/dev/block/8:16/queue/discard_granularity 4096 $ cat /sys/dev/block/8:16/queue/discard_max_bytes 1073741824 $ cat /sys/dev/block/8:16/queue/discard_max_hw_bytes 1073741824 $ cat /sys/dev/block/8:16/queue/discard_zeroes_data 0 $ cat /sys/dev/block/8:17/discard_alignment 133169152 And, there isn't even a /sys/dev/block/8:17/queue direcotry. ** Affects: qemu Importance: Undecided Status: New -- You received this bug notification because you are a member of qemu- devel-ml, which is subscribed to QEMU. https://bugs.launchpad.net/bugs/1811543 Title: virtio-scsi gives improper discard sysfs entries Status in QEMU: New Bug description: Apologies if this is just an inherent part of paravirtualization that should be expected. In my host, I have an LVM thin pool with chunk_size 128MB. Within it, I have a thin volume "tmp". In the host: # fdisk -l /dev/lvm/tmp Disk /dev/lvm/tmp: 256 MiB, 268435456 bytes, 524288 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 4096 bytes I/O size (minimum/optimal): 262144 bytes / 134217728 bytes Disklabel type: gpt Disk identifier: BAE3154E-6E85-F642-8129-BAD7B58B2775 Device Start End Sectors Size Type /dev/lvm/tmp1 2048 524254 522207 255M Linux filesystem $ lsblk ... └─lvm-tmp 254:13 0 256M 0 lvm └─lvm-tmp1 254:14 0 255M 0 part $ cat /sys/dev/block/254:13/discard_alignment 0 $ cat /sys/dev/block/254:13/queue/discard_granularity 134217728 $ cat /sys/dev/block/254:13/queue/discard_max_bytes 17179869184 $ cat /sys/dev/block/254:13/queue/discard_max_hw_bytes 0 $ cat /sys/dev/block/254:13/queue/discard_zeroes_data 0 $ cat /sys/dev/block/254:14/discard_alignment 133169152 $ cat /sys/dev/block/254:14/queue/discard_granularity 134217728 $ cat /sys/dev/block/254:14/queue/discard_max_bytes 17179869184 $ cat /sys/dev/block/254:14/queue/discard_max_hw_bytes 0 $ cat /sys/dev/block/254:14/queue/discard_zeroes_data 0 If this is given to QEMU using virtio-scsi: -device virtio-scsi-pci,id=scsi1 \ -drive driver=raw,node-name=hdb,file=/dev/lvm/tmp,if=none,discard=unmap,id=hd2 \ -device scsi-hd,drive=hd2,bootindex=1 \ Then incorrect values are given: $ lsblk ... sdb 8:16 0 256M 0 disk └─sdb1 8:17 0 255M 0 part /mnt $ cat /sys/dev/block/8:16/discard_alignment 0 $ cat /sys/dev/block/8:16/queue/discard_granularity 4096 $ cat /sys/dev/block/8:16/queue/discard_max_bytes 1073741824 $ cat /sys/dev/block/8:16/queue/discard_max_hw_bytes 1073741824 $ cat /sys/dev/block/8:16/queue/discard_zeroes_data 0 $ cat /sys/dev/block/8:17/discard_alignment 133169152 And, there isn't even a /sys/dev/block/8:17/queue direcotry. To manage notifications about this bug go to: https://bugs.launchpad.net/qemu/+bug/1811543/+subscriptions