From: Paolo Bonzini <pbonzini@redhat.com>
To: Gerd Hoffmann <kraxel@redhat.com>
Cc: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH 09/10] usb-storage: add scsi_off, remove scsi_buf
Date: Fri, 25 May 2012 12:09:03 +0200 [thread overview]
Message-ID: <4FBF5A3F.5090300@redhat.com> (raw)
In-Reply-To: <1337939061-13629-10-git-send-email-kraxel@redhat.com>
Il 25/05/2012 11:44, Gerd Hoffmann ha scritto:
> 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 <kraxel@redhat.com>
> ---
> 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;
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
next prev parent reply other threads:[~2012-05-25 10:09 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-05-25 9:44 [Qemu-devel] [PATCH 00/10] usb: uhci & usb-storage updates Gerd Hoffmann
2012-05-25 9:44 ` [Qemu-devel] [PATCH 01/10] uhci: fix bandwidth management Gerd Hoffmann
2012-05-25 9:44 ` [Qemu-devel] [PATCH 02/10] uhci: use bottom half Gerd Hoffmann
2012-05-25 9:44 ` [Qemu-devel] [PATCH 03/10] uhci: make bandwidth tunable Gerd Hoffmann
2012-05-25 9:44 ` [Qemu-devel] [PATCH 04/10] uhci: fix trace format strings Gerd Hoffmann
2012-05-25 9:44 ` [Qemu-devel] [PATCH 05/10] uhci: zap uhci_pre_save Gerd Hoffmann
2012-05-25 9:44 ` [Qemu-devel] [PATCH 06/10] scsi: prepare migration code for usb-storage support Gerd Hoffmann
2012-05-25 9:51 ` Paolo Bonzini
2012-05-25 9:44 ` [Qemu-devel] [PATCH 07/10] usb-storage: remove MSDState->residue Gerd Hoffmann
2012-05-25 9:44 ` [Qemu-devel] [PATCH 08/10] usb-storage: add usb_msd_packet_complete() Gerd Hoffmann
2012-05-25 9:44 ` [Qemu-devel] [PATCH 09/10] usb-storage: add scsi_off, remove scsi_buf Gerd Hoffmann
2012-05-25 10:09 ` Paolo Bonzini [this message]
2012-05-25 9:44 ` [Qemu-devel] [PATCH 10/10] usb-storage: migration support Gerd Hoffmann
2012-05-25 10:11 ` Paolo Bonzini
2012-05-25 10:33 ` Gerd Hoffmann
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4FBF5A3F.5090300@redhat.com \
--to=pbonzini@redhat.com \
--cc=kraxel@redhat.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).