[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 0/5] add TRIM/UNMAP support
From: |
Christoph Hellwig |
Subject: |
[Qemu-devel] [PATCH 0/5] add TRIM/UNMAP support |
Date: |
Thu, 25 Nov 2010 14:56:57 +0100 |
User-agent: |
Mutt/1.3.28i |
This patchset adds support for the ATA TRIM and SCSI WRITE SAME with
unmap commands, which allow reclaiming free space from a backing image.
The user facing implementation is pretty complete, but not really
efficient because the underlying bdrv_discard implementation doesn't
use the aio implementation yet. The reason for that is that the SCSI
layer doesn't really allow any asynchronous commands except for
READ/WRITE by design, and implementing the ATA TRIM command with it's
multiple ranges is rather painful, and combined with the SCSI limitation
I didn't bother yet. The only backend support so far is the XFS hole
punching ioctl, but others can be added easily when they become
available. A virtio implementation for a discard command would also
be pretty easy, but until we actually support a better backend then
a plain sparse file it's not worth using for production enviroments
anyway, but more for playing with the thin provisioning infrastructure,
or observing guest behaviour when TRIM / unmap is supported.
If the support is enabled and the backend doesn't support hole punching
the TRIM / WRITE SAME commands become no-ops so that migration from
hosts supporting or not supporting it works.
- [Qemu-devel] [PATCH 0/5] add TRIM/UNMAP support,
Christoph Hellwig <=
- [Qemu-devel] [PATCH 1/5] block: add discard support, Christoph Hellwig, 2010/11/25
- [Qemu-devel] [PATCH 2/5] scsi-disk: support WRITE SAME (16) with unmap bit, Christoph Hellwig, 2010/11/25
- [Qemu-devel] [PATCH 3/5] make dma_bdrv_io available to drivers, Christoph Hellwig, 2010/11/25
- [Qemu-devel] [PATCH 4/5] ide: add TRIM support, Christoph Hellwig, 2010/11/25
- [Qemu-devel] [PATCH 5/5] raw-posix: add discard support, Christoph Hellwig, 2010/11/25