public inbox for linux-scsi@vger.kernel.org
 help / color / mirror / Atom feed
From: Mike Christie <michaelc@cs.wisc.edu>
To: linux-scsi@vger.kernel.org
Subject: [PATCH RFC 0/3] SCSI Userspace Target
Date: Tue, 24 Jan 2006 20:58:02 -0600	[thread overview]
Message-ID: <1138157882.11692.31.camel@max> (raw)

The following patches begin to add the infrastructure for the SCSI
Userspace target framework. We were not sure about what James meant by
some of his comments, so rather than getting to far we want to post a
early.

As the email subject hints, the goal of the project is to push most of
the target code to userspace. The only parts we kept in the kernel were
for transferring data between the LLD and userpsace and the netlink
interface. We included the relevant parts of a software iscsi target as
an example.

We also just based ourselves off the scsi_host. This has the benefit of
being able to reuse the scsi-ml host code and for HBAs that have a
initiator and target mode, they only need to allocate a single scsi_host
that corresponds to the PCI device, iscsi session, or whatever your LLD
allocates it for. In theory, a single scsi_host can be used by the LLD
for running both the target and initiator at the same time. The drawback
is it prevents us from doing a more generic target framework that works
for any block device (well, someone could do a libata type of target for
any transport).

Just to be clear, so people do not pee their pants :) These patches are
not ready for prime time. We feel we are at a good point, where we think
we can continue building and allow others to help in the development if
this basic infrastructure is ok.

There is no error handling yet (since we push so much to userspace it
will not be much kernel code), the userspce code is still being reworked
to tweak performance (the kernel code is too), we still need build
proper scatterlists for HW LLDs (although we can do this with the scsi
stuff that was just merged it is not very efficient (see commented code
in scsi_tgt_lib.c)). We just want to make sure we are heading in the
right direction. For example, should we be using the scsi_host or should
we add our own data structure, is the perfomance drop Tomo reported
earlier (he has new numbers and has more tweaks up his sleeve) really
that acceptable or should we go to scst.

We are also up for discussing making the interface more generic, so we
can one day do the scsi scanning and async event handling through it.

Thanks

Mike and Tomo


             reply	other threads:[~2006-01-25  2:58 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-01-25  2:58 Mike Christie [this message]
2006-01-25 17:46 ` [PATCH RFC 0/3] SCSI Userspace Target Jeff Garzik
2006-01-27 10:46   ` Mike Christie
2006-01-27 14:48     ` Jeff Garzik
2006-01-27 14:54     ` Jens Axboe
2006-02-06  2:54   ` FUJITA Tomonori
2006-01-26  3:28 ` Dave C Boutcher
2006-01-27 10:45   ` Mike Christie
2006-01-27 10:52     ` Mike Christie

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=1138157882.11692.31.camel@max \
    --to=michaelc@cs.wisc.edu \
    --cc=linux-scsi@vger.kernel.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