[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 09/38] ide: move transfer_start after variable modif
From: |
Kevin Wolf |
Subject: |
[Qemu-devel] [PATCH 09/38] ide: move transfer_start after variable modification |
Date: |
Fri, 17 Dec 2010 18:44:24 +0100 |
From: Alexander Graf <address@hidden>
We hook into transfer_start and immediately call the end function
for ahci. This means that everything needs to be in place for the
end function when we start the transfer, so let's move the function
down to where all state is in place.
Signed-off-by: Alexander Graf <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>
---
hw/ide/core.c | 8 ++++----
1 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/hw/ide/core.c b/hw/ide/core.c
index 2032e20..228911d 100644
--- a/hw/ide/core.c
+++ b/hw/ide/core.c
@@ -814,11 +814,11 @@ static void ide_atapi_cmd_reply_end(IDEState *s)
size = s->cd_sector_size - s->io_buffer_index;
if (size > s->elementary_transfer_size)
size = s->elementary_transfer_size;
- ide_transfer_start(s, s->io_buffer + s->io_buffer_index,
- size, ide_atapi_cmd_reply_end);
s->packet_transfer_size -= size;
s->elementary_transfer_size -= size;
s->io_buffer_index += size;
+ ide_transfer_start(s, s->io_buffer + s->io_buffer_index - size,
+ size, ide_atapi_cmd_reply_end);
} else {
/* a new transfer is needed */
s->nsector = (s->nsector & ~7) | ATAPI_INT_REASON_IO;
@@ -843,11 +843,11 @@ static void ide_atapi_cmd_reply_end(IDEState *s)
if (size > (s->cd_sector_size - s->io_buffer_index))
size = (s->cd_sector_size - s->io_buffer_index);
}
- ide_transfer_start(s, s->io_buffer + s->io_buffer_index,
- size, ide_atapi_cmd_reply_end);
s->packet_transfer_size -= size;
s->elementary_transfer_size -= size;
s->io_buffer_index += size;
+ ide_transfer_start(s, s->io_buffer + s->io_buffer_index - size,
+ size, ide_atapi_cmd_reply_end);
ide_set_irq(s->bus);
#ifdef DEBUG_IDE_ATAPI
printf("status=0x%x\n", s->status);
--
1.7.2.3
- [Qemu-devel] [PULL 00/38] Block patches, Kevin Wolf, 2010/12/17
- [Qemu-devel] [PATCH 04/38] Introduce strtosz_suffix(), Kevin Wolf, 2010/12/17
- [Qemu-devel] [PATCH 03/38] block: Fix the use of protocols in backing files, Kevin Wolf, 2010/12/17
- [Qemu-devel] [PATCH 06/38] ide: split ide command interpretation off, Kevin Wolf, 2010/12/17
- [Qemu-devel] [PATCH 02/38] block: Introduce path_has_protocol() function, Kevin Wolf, 2010/12/17
- [Qemu-devel] [PATCH 10/38] ide: add ncq identify data for ahci sata drives, Kevin Wolf, 2010/12/17
- [Qemu-devel] [PATCH 11/38] pci: add storage class for sata, Kevin Wolf, 2010/12/17
- [Qemu-devel] [PATCH 09/38] ide: move transfer_start after variable modification,
Kevin Wolf <=
- [Qemu-devel] [PATCH 05/38] qemu-img.c: Clean up handling of image size in img_create(), Kevin Wolf, 2010/12/17
- [Qemu-devel] [PATCH 01/38] blockdev: check dinfo ptr before using, Kevin Wolf, 2010/12/17
- [Qemu-devel] [PATCH 07/38] ide: fix whitespace gap in ide_exec_cmd, Kevin Wolf, 2010/12/17
- [Qemu-devel] [PATCH 14/38] config: move ide core and pci to pci.mak, Kevin Wolf, 2010/12/17
- [Qemu-devel] [PATCH 21/38] Prevent creating an image with the same filename as backing file, Kevin Wolf, 2010/12/17
- [Qemu-devel] [PATCH 20/38] Introduce do_snapshot_blkdev() and monitor command to handle it., Kevin Wolf, 2010/12/17
- [Qemu-devel] [PATCH 19/38] qemu-img.c: Re-factor img_create(), Kevin Wolf, 2010/12/17
- [Qemu-devel] [PATCH 25/38] ide: Register vm change state handler once only, Kevin Wolf, 2010/12/17
- [Qemu-devel] [PATCH 18/38] qemu-img: Call error_set_progname, Kevin Wolf, 2010/12/17
- [Qemu-devel] [PATCH 16/38] ahci: set SATA Mode Select, Kevin Wolf, 2010/12/17