qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH 00/20] SCSI subsystem improvements
@ 2011-05-03 16:50 Paolo Bonzini
  2011-05-03 16:50 ` [Qemu-devel] [PATCH 01/20] scsi: add tracing of scsi requests Paolo Bonzini
                   ` (19 more replies)
  0 siblings, 20 replies; 21+ messages in thread
From: Paolo Bonzini @ 2011-05-03 16:50 UTC (permalink / raw)
  To: qemu-devel

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

^ permalink raw reply	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2011-05-03 16:51 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-05-03 16:50 [Qemu-devel] [PATCH 00/20] SCSI subsystem improvements Paolo Bonzini
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

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).