qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH 0/5] [QEMU-KVM]: Add BSG backstore using struct sg_i


From: Nicholas A. Bellinger
Subject: [Qemu-devel] [PATCH 0/5] [QEMU-KVM]: Add BSG backstore using struct sg_io_v4
Date: Mon, 14 Jun 2010 02:48:09 -0700

From: Nicholas Bellinger <address@hidden>

Quick resend with project subject for cover letter..

Greetings Gerd, Hannes and co,

This series adds initial support for a hw/scsi-bsg.c backstore for scsi-bus
compatible HBA emulation in QEMU-KVM on Linux hosts supporting the BSG driver.
This code is available from the scsi-bsg branch in the megasas/scsi friendly 
QEMU-KVM tree at:

http://git.kernel.org/?p=virt/kvm/nab/qemu-kvm.git;a=shortlog;h=refs/heads/scsi-bsg

Note that this initial code is being posted for review and to see how useful a 
BSG backstore
would be for QEMU-KVM and Linux hosts.  Note that in order for BSG I/O to 
function using vectored
AIO a kernel patch to linux/block/bsg.c:bsg_map_hdr() is currently required 
running on a bit paired
user/kernel enviroment.  The kernel patch in question is here:

http://marc.info/?l=linux-scsi&m=127649585524598&w=2

The first three patches involve updating block code to support the BSG 
backstore for scsi-bsg.

The forth patch adds the minor changes to hw/scsi-bus.c and hw/scsi-disk.c in 
order to
function with scsi-bsg.

And the fifth patch adds the main hw/scsi-bsg.c logic necessary to run the new 
struct
SCSIDeviceInfo and for BSG AIO using struct iovec and paio_submit_len() to 
function.

So far this patch series has been tested with a Linux based x86_64 KVM host and 
guest
using the hw/megasas.c 8708EM2 HBA Emulation with TCM_Loop virtual SAS Port 
LUNs.

Comments are welcome,

Signed-off-by: Nicholas A. Bellinger <address@hidden>

Nicholas Bellinger (5):
  [block]: Add top level BSG support
  [block]: Add BSG qemu_open() in block/raw.c:raw_open()
  [block]: Add paio_submit_len() non sector sized AIO
  [scsi]: Add BSG support for scsi-bus and scsi-disk
  [scsi-bsg]: Add initial support for BSG based SCSIDeviceInfo

 Makefile.objs         |    2 +-
 block.c               |   23 ++-
 block.h               |    1 +
 block/raw-posix-aio.h |    3 +
 block/raw-posix.c     |   17 ++-
 block/raw.c           |   20 ++
 block_int.h           |    5 +
 hw/scsi-bsg.c         |  588 +++++++++++++++++++++++++++++++++++++++++++++++++
 hw/scsi-bus.c         |    3 +-
 hw/scsi-disk.c        |    4 +
 posix-aio-compat.c    |   28 +++
 11 files changed, 687 insertions(+), 7 deletions(-)
 create mode 100644 hw/scsi-bsg.c




reply via email to

[Prev in Thread] Current Thread [Next in Thread]