summary refs log tree commit diff stats
path: root/hw/misc/lm32_sys.c
diff options
context:
space:
mode:
authorPaolo Bonzini <pbonzini@redhat.com>2013-12-20 15:54:27 +0100
committerPaolo Bonzini <pbonzini@redhat.com>2013-12-22 14:59:33 +0100
commit8a1bd2973ed5f99a3c37c9afdff823c4a22152b1 (patch)
tree5cb0243ab1005d00f037334e294f7adfa87a7b78 /hw/misc/lm32_sys.c
parent8b9dfe9098d91e06a3dd6376624307fe5fa13be8 (diff)
downloadfocaccia-qemu-8a1bd2973ed5f99a3c37c9afdff823c4a22152b1.tar.gz
focaccia-qemu-8a1bd2973ed5f99a3c37c9afdff823c4a22152b1.zip
scsi-disk: add UNMAP limits to block limits VPD page
Linux prefers WRITE SAME to UNMAP if the limits are zero, and WRITE
SAME does not discard anything unless the device can guarantee that
the resulting block is zero.

Setting the maximum unmap block and descriptor counts to non-zero
makes Linux choose UNMAP and fixes thin provisioning on glusterfs.

While the maximum unmap block count can have some effect on performance,
the (suggested) maximum number of descriptors is not particularly
important so I didn't add a customization option.  SCSI drivers are
used to online firmware updates so I'm not yet adding versioning support
for SCSI, but we're probably getting close to the point when it's worth
thinking about it.

Reported-by: Bharata B Rao <bharata@linux.vnet.ibm.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'hw/misc/lm32_sys.c')
0 files changed, 0 insertions, 0 deletions