[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 09/10] usb-storage: add scsi_off, remove scsi_buf
From: |
Gerd Hoffmann |
Subject: |
[Qemu-devel] [PATCH 09/10] usb-storage: add scsi_off, remove scsi_buf |
Date: |
Fri, 25 May 2012 11:44:20 +0200 |
Repace the running buffer pointer (scsi_buf) with a buffer offset
field (scsi_off). The later is alot easier to live-migrate.
Signed-off-by: Gerd Hoffmann <address@hidden>
---
hw/usb/dev-storage.c | 8 ++++----
1 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/hw/usb/dev-storage.c b/hw/usb/dev-storage.c
index 1477599..1975d26 100644
--- a/hw/usb/dev-storage.c
+++ b/hw/usb/dev-storage.c
@@ -48,8 +48,8 @@ struct usb_msd_csw {
typedef struct {
USBDevice dev;
enum USBMSDMode mode;
+ uint32_t scsi_off;
uint32_t scsi_len;
- uint8_t *scsi_buf;
uint32_t data_len;
struct usb_msd_csw csw;
SCSIRequest *req;
@@ -178,9 +178,9 @@ static void usb_msd_copy_data(MSDState *s, USBPacket *p)
len = p->iov.size - p->result;
if (len > s->scsi_len)
len = s->scsi_len;
- usb_packet_copy(p, s->scsi_buf, len);
+ usb_packet_copy(p, scsi_req_get_buf(s->req) + s->scsi_off, len);
s->scsi_len -= len;
- s->scsi_buf += len;
+ s->scsi_off += len;
s->data_len -= len;
if (s->scsi_len == 0 || s->data_len == 0) {
scsi_req_continue(s->req);
@@ -219,7 +219,7 @@ static void usb_msd_transfer_data(SCSIRequest *req,
uint32_t len)
assert((s->mode == USB_MSDM_DATAOUT) == (req->cmd.mode ==
SCSI_XFER_TO_DEV));
s->scsi_len = len;
- s->scsi_buf = scsi_req_get_buf(req);
+ s->scsi_off = 0;
if (p) {
usb_msd_copy_data(s, p);
p = s->packet;
--
1.7.1
- [Qemu-devel] [PATCH 00/10] usb: uhci & usb-storage updates, Gerd Hoffmann, 2012/05/25
- [Qemu-devel] [PATCH 03/10] uhci: make bandwidth tunable, Gerd Hoffmann, 2012/05/25
- [Qemu-devel] [PATCH 04/10] uhci: fix trace format strings, Gerd Hoffmann, 2012/05/25
- [Qemu-devel] [PATCH 09/10] usb-storage: add scsi_off, remove scsi_buf,
Gerd Hoffmann <=
- [Qemu-devel] [PATCH 05/10] uhci: zap uhci_pre_save, Gerd Hoffmann, 2012/05/25
- [Qemu-devel] [PATCH 02/10] uhci: use bottom half, Gerd Hoffmann, 2012/05/25
- [Qemu-devel] [PATCH 10/10] usb-storage: migration support, Gerd Hoffmann, 2012/05/25
- [Qemu-devel] [PATCH 08/10] usb-storage: add usb_msd_packet_complete(), Gerd Hoffmann, 2012/05/25
- [Qemu-devel] [PATCH 01/10] uhci: fix bandwidth management, Gerd Hoffmann, 2012/05/25
- [Qemu-devel] [PATCH 07/10] usb-storage: remove MSDState->residue, Gerd Hoffmann, 2012/05/25
- [Qemu-devel] [PATCH 06/10] scsi: prepare migration code for usb-storage support, Gerd Hoffmann, 2012/05/25