From: "Nicholas A. Bellinger" <nab@linux-iscsi.org>
To: lsf-pc@lists.linuxfoundation.org
Cc: linux-scsi <linux-scsi@vger.kernel.org>,
Stefan Hajnoczi <stefanha@gmail.com>,
Anthony Liguori <anthony@codemonkey.ws>,
Christoph Hellwig <hch@lst.de>
Subject: [LSF/MM TOPIC] Target fabric module for SCSI para-virtualization
Date: Sun, 06 Feb 2011 23:57:15 -0800 [thread overview]
Message-ID: <1297065435.13752.173.camel@haakon2.linux-iscsi.org> (raw)
Greetings all,
[Topic]
A hybrid target fabric module for QEMU/KVM SCSI para-virtualization
[Abstract]
Currently we use the TCM_Loop v4 fabric module with mainline .38 target
code to present SCSI LUNs with high level multi-fabric (iSCSI, FC, SAS)
SPC-3 port WWN emulation into KVM guests using two different forms of
QEMU HBA hardware emulation. However both of these currently require
interaction with the QEMU block layer and extra overhead of OS
independent code running in user-space connected to our existing
SG_IO/BSG interfaces. This also has the limitiation that we currently
cannot perform explict SCSI Initiator Port access management for LUNs
also present via TCM_Loop SCSI LLD driver on the KVM host.
Recently there has been an off-list discussion between myself and
members of the QEMU/KVM community, and they have expressed an interest
in seeing a native paravirtualized SCSI passthrough available to QEMU
guests with direct interaction into TCM fabric module code running on
KVM host. This would be using existing CDB level port emulation code in
target_core_fabric_lib.c, and (mostly) generic fabric control plane in
target_core_fabric_configfs.c.. Beyond the TCM fabric module specifics,
this will require:
*) An asynchronous I/O capable virtio interface for KVM that does not
require direct QEMU block-layer interaction
*) A multi-fabric WWN naming capable TCM fabric module using native
virtio-scsi connections to individual KVM guests for kernel-level
passthrough into TCM backend storage. (eg: similar to TCM_Loop, but w/o
the Linux/SCSI LLD frontend, and full explict Initiator port NodeACL +
MappedLUN control abstraction)
*) Guest OS specific para-virtualized SCSI driver packages (similar to
virtio-blk) performing SCSI I/O handoff into passthrough interface via
SCSI I_T nexues, with proper T10 WWN Port and LUN naming provided from
underlying TCM v4.x infrastructure (eg: full compat w/ existing SPC-3
capable cluster clients)
--nab
next reply other threads:[~2011-02-07 7:57 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-02-07 7:57 Nicholas A. Bellinger [this message]
2011-02-07 8:07 ` [LSF/MM TOPIC] Target fabric module for SCSI para-virtualization Hannes Reinecke
2011-02-07 10:27 ` Boaz Harrosh
2011-02-07 11:06 ` Stefan Hajnoczi
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=1297065435.13752.173.camel@haakon2.linux-iscsi.org \
--to=nab@linux-iscsi.org \
--cc=anthony@codemonkey.ws \
--cc=hch@lst.de \
--cc=linux-scsi@vger.kernel.org \
--cc=lsf-pc@lists.linuxfoundation.org \
--cc=stefanha@gmail.com \
/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