[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 07/15] ide: fix TRIM with empty range entry
From: |
Stefan Hajnoczi |
Subject: |
[Qemu-devel] [PATCH 07/15] ide: fix TRIM with empty range entry |
Date: |
Tue, 15 Jan 2013 17:48:23 +0100 |
From: Paolo Bonzini <address@hidden>
ATA-ACS-3 says "If the two byte range length is zero, then the LBA
Range Entry shall be discarded as padding." iovecs are used as if
they are linearized, so it is incorrect to discard the rest of
this iovec.
Signed-off-by: Paolo Bonzini <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>
---
hw/ide/core.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/hw/ide/core.c b/hw/ide/core.c
index 6f1938a..cb77dfc 100644
--- a/hw/ide/core.c
+++ b/hw/ide/core.c
@@ -374,7 +374,7 @@ BlockDriverAIOCB *ide_issue_trim(BlockDriverState *bs,
uint16_t count = entry >> 48;
if (count == 0) {
- break;
+ continue;
}
ret = bdrv_discard(bs, sector, count);
--
1.8.0.2
- [Qemu-devel] [PULL 00/15] Block patches for QEMU 1.4, Stefan Hajnoczi, 2013/01/15
- [Qemu-devel] [PATCH 01/15] qcow2: Fix segfault on zero-length write, Stefan Hajnoczi, 2013/01/15
- [Qemu-devel] [PATCH 05/15] raw: support discard on block devices, Stefan Hajnoczi, 2013/01/15
- [Qemu-devel] [PATCH 02/15] block: fix initialization in bdrv_io_limits_enable(), Stefan Hajnoczi, 2013/01/15
- [Qemu-devel] [PATCH 04/15] raw-posix: remember whether discard failed, Stefan Hajnoczi, 2013/01/15
- [Qemu-devel] [PATCH 03/15] raw-posix: support discard on more filesystems, Stefan Hajnoczi, 2013/01/15
- [Qemu-devel] [PATCH 06/15] block: make discard asynchronous, Stefan Hajnoczi, 2013/01/15
- [Qemu-devel] [PATCH 07/15] ide: fix TRIM with empty range entry,
Stefan Hajnoczi <=
- [Qemu-devel] [PATCH 08/15] ide: issue discard asynchronously but serialize the pieces, Stefan Hajnoczi, 2013/01/15
- [Qemu-devel] [PATCH 09/15] block: clear dirty bitmap when discarding, Stefan Hajnoczi, 2013/01/15
- [Qemu-devel] [PATCH 12/15] w32: Make qemu_vfree() accept NULL like the POSIX implementation, Stefan Hajnoczi, 2013/01/15
- [Qemu-devel] [PATCH 11/15] sheepdog: clean up sd_aio_setup(), Stefan Hajnoczi, 2013/01/15
- [Qemu-devel] [PATCH 13/15] scsi-disk: qemu_vfree(NULL) is fine, simplify, Stefan Hajnoczi, 2013/01/15
- [Qemu-devel] [PATCH 14/15] win32-aio: Fix how win32_aio_process_completion() frees buffer, Stefan Hajnoczi, 2013/01/15
- [Qemu-devel] [PATCH 15/15] block: Fix how mirror_run() frees its buffer, Stefan Hajnoczi, 2013/01/15
- [Qemu-devel] [PATCH 10/15] sheepdog: multiplex the rw FD to flush cache, Stefan Hajnoczi, 2013/01/15
- Re: [Qemu-devel] [PULL 00/15] Block patches for QEMU 1.4, Anthony Liguori, 2013/01/15