qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Paolo Bonzini <pbonzini@redhat.com>
To: qemu-devel@nongnu.org
Subject: [Qemu-devel] [PATCH 00/20] SCSI subsystem improvements
Date: Tue,  3 May 2011 18:50:12 +0200	[thread overview]
Message-ID: <1304441432-27434-1-git-send-email-pbonzini@redhat.com> (raw)

This series includes the following improvements to the SCSI subsystem:

1) introduction of SCSIBusOps that generalize the existing
command_complete callback;

2) widespread use of the SCSIRequest abstraction, with simpler memory
management (refcounting) and with various common idioms converted into
simple C functions instead of duplicating them all over the place;

3) support for autosense.

Some patches are from Hannes Reinecke's megasas patchset posted last
November, forward ported and applied to the new vSCSI controller as
well.

Testing:
- RHEL6.1 install complete to scsi-disk with lsi, from scsi-generic CD
- iozone run with lsi on scsi-disk target
- RHEL6.1 install to usb-msd from IDE CD hangs (probably) when formatting
  the USB disk, gets I/O errors even earlier without the series
- RHEL6.1 install started with vscsi, from scsi-generic CD including
  playing with opening/closing the tray (to exercise autosense), plan to do
  a complete test later if no one beats me to it

esp is only compile tested.

Hannes Reinecke (4):
  scsi: Use 'SCSIRequest' directly
  scsi: Update sense code handling
  scsi: Implement 'get_sense' callback
  scsi-disk: add data direction checking

Paolo Bonzini (16):
  scsi: add tracing of scsi requests
  scsi-generic: Remove bogus double complete
  scsi: introduce scsi_req_data
  scsi: introduce SCSIBusOps
  scsi: reference-count requests
  lsi: extract lsi_find_by_tag
  scsi: commonize purging requests
  scsi: introduce scsi_req_abort
  scsi: introduce scsi_req_cancel
  scsi: use scsi_req_complete
  scsi: do not call send_command directly
  scsi: introduce scsi_req_new
  scsi: introduce scsi_req_kick
  scsi: introduce scsi_req_get_buf
  scsi: make write_data return void
  scsi-generic: Handle queue full

 hw/esp.c          |   61 ++++++++-----
 hw/lsi53c895a.c   |  158 ++++++++++++++++++++------------
 hw/scsi-bus.c     |  203 +++++++++++++++++++++++++++++++++++++---
 hw/scsi-disk.c    |  264 ++++++++++++++++++++++-------------------------------
 hw/scsi-generic.c |  218 +++++++++++++++++++++-----------------------
 hw/scsi.h         |   84 ++++++++++++++---
 hw/spapr_vscsi.c  |   91 +++++++++++--------
 hw/usb-msd.c      |   55 +++++++-----
 trace-events      |    8 ++
 9 files changed, 697 insertions(+), 445 deletions(-)

-- 
1.7.4.4

             reply	other threads:[~2011-05-03 16:50 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-05-03 16:50 Paolo Bonzini [this message]
2011-05-03 16:50 ` [Qemu-devel] [PATCH 01/20] scsi: add tracing of scsi requests Paolo Bonzini
2011-05-03 16:50 ` [Qemu-devel] [PATCH 02/20] scsi-generic: Remove bogus double complete Paolo Bonzini
2011-05-03 16:50 ` [Qemu-devel] [PATCH 03/20] scsi: introduce scsi_req_data Paolo Bonzini
2011-05-03 16:50 ` [Qemu-devel] [PATCH 04/20] scsi: introduce SCSIBusOps Paolo Bonzini
2011-05-03 16:50 ` [Qemu-devel] [PATCH 05/20] scsi: reference-count requests Paolo Bonzini
2011-05-03 16:50 ` [Qemu-devel] [PATCH 06/20] lsi: extract lsi_find_by_tag Paolo Bonzini
2011-05-03 16:50 ` [Qemu-devel] [PATCH 07/20] scsi: Use 'SCSIRequest' directly Paolo Bonzini
2011-05-03 16:50 ` [Qemu-devel] [PATCH 08/20] scsi: commonize purging requests Paolo Bonzini
2011-05-03 16:50 ` [Qemu-devel] [PATCH 09/20] scsi: introduce scsi_req_abort Paolo Bonzini
2011-05-03 16:50 ` [Qemu-devel] [PATCH 10/20] scsi: introduce scsi_req_cancel Paolo Bonzini
2011-05-03 16:50 ` [Qemu-devel] [PATCH 11/20] scsi: use scsi_req_complete Paolo Bonzini
2011-05-03 16:50 ` [Qemu-devel] [PATCH 12/20] scsi: Update sense code handling Paolo Bonzini
2011-05-03 16:50 ` [Qemu-devel] [PATCH 13/20] scsi: do not call send_command directly Paolo Bonzini
2011-05-03 16:50 ` [Qemu-devel] [PATCH 14/20] scsi: introduce scsi_req_new Paolo Bonzini
2011-05-03 16:50 ` [Qemu-devel] [PATCH 15/20] scsi: introduce scsi_req_kick Paolo Bonzini
2011-05-03 16:50 ` [Qemu-devel] [PATCH 16/20] scsi: introduce scsi_req_get_buf Paolo Bonzini
2011-05-03 16:50 ` [Qemu-devel] [PATCH 17/20] scsi: Implement 'get_sense' callback Paolo Bonzini
2011-05-03 16:50 ` [Qemu-devel] [PATCH 18/20] scsi-disk: add data direction checking Paolo Bonzini
2011-05-03 16:50 ` [Qemu-devel] [PATCH 19/20] scsi: make write_data return void Paolo Bonzini
2011-05-03 16:50 ` [Qemu-devel] [PATCH 20/20] scsi-generic: Handle queue full Paolo Bonzini

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=1304441432-27434-1-git-send-email-pbonzini@redhat.com \
    --to=pbonzini@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).