public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: "Richard W.M. Jones" <rjones@redhat.com>
To: Andy Grover <agrover@redhat.com>
Cc: target-devel@vger.kernel.org, linux-scsi@vger.kernel.org,
	hch@lst.de, nab@linux-iscsi.org, shli@kernel.org,
	linux-kernel@vger.kernel.org
Subject: Re: [RFC 1/2] target: Add documentation on the target userspace pass-through driver
Date: Sun, 31 Aug 2014 22:22:58 +0100	[thread overview]
Message-ID: <20140831212257.GO1302@redhat.com> (raw)
In-Reply-To: <54037C46.1050601@redhat.com>

On Sun, Aug 31, 2014 at 12:49:26PM -0700, Andy Grover wrote:
> Thanks for the feedback. I am undoubtedly too close to the details,
> because I thought I *was* explaining things :)

Yeah, sorry it came across as a bit harsh.

Benoit did explain it to me so I understood it in the end (I think!)

> This doc is for people like you -- tech-savvy but unfamiliar with
> this specific area. Would you be so kind as to point out exactly the
> terms this document should explain? Should it explain SCSI and SCSI
> commands? What a SCSI target is? Say "target implementations" rather
> than "target solutions"? Do I need some ASCII art?

So I can only speak for myself here, but I'm pretty familiar with
iSCSI, using it, and some of the internals -- in fact I'm using the
Linux kernel target daily.

> TCM Userspace Design
> In addition to modularizing the transport protocol used for carrying
> SCSI commands ("fabrics"), the Linux kernel target, LIO, also
> modularizes the actual data storage as well.  These are referred to
> as "backstores" or "storage engines".

Reading this several times, I now think I get what it's trying to say,
but I think it needs to introduces the terms (as the Economist style
does).  Something like this:

  "TCM is the new name for LIO, an in-kernel iSCSI target (server).
  Existing TCM targets run in the kernel.  TCMU (TCM in Userspace)
  allows userspace programs to be written which act as iSCSI targets.
  This document describes the design.

  The existing kernel provides modules for different SCSI transport
  protocols.  TCM also modularizes the data storage.  There are
  existing modules for file, block device, RAM or using another SCSI
  device as storage.  These are called "backstores" or "storage
  engines".  These built-in modules are implemented entirely as kernel
  code."

And hopefully having defined a bit of background, the rest of the
document just flows nicely:

> These backstores cover the most common use cases, but not all. One new
> use case that other non-kernel target solutions, such as tgt, are able
> to support is using Gluster's GLFS or Ceph's RBD as a backstore. The
> target then serves as a translator, allowing initiators to store data
> in these non-traditional networked storage systems, while still only
> using standard protocols themselves.

Rich.

-- 
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
virt-df lists disk usage of guests without needing to install any
software inside the virtual machine.  Supports Linux and Windows.
http://people.redhat.com/~rjones/virt-df/

  reply	other threads:[~2014-08-31 21:23 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-07-01 19:11 [RFC 0/2] target: userspace pass-through backend Andy Grover
2014-07-01 19:11 ` [RFC 1/2] target: Add documentation on the target userspace pass-through driver Andy Grover
2014-07-05 11:29   ` Alex Elsayed
2014-07-08 22:03     ` Andy Grover
2014-08-30 17:35   ` Richard W.M. Jones
2014-08-31 19:49     ` Andy Grover
2014-08-31 21:22       ` Richard W.M. Jones [this message]
2014-09-02 22:06         ` Andy Grover
2014-07-01 19:11 ` [RFC 2/2] target: Add a user-passthrough backstore Andy Grover
2014-07-07 21:26 ` [RFC 0/2] target: userspace pass-through backend Andy Grover
2014-07-14 15:08 ` Stefan Hajnoczi
2014-08-20 18:28 ` [RFCv2 0/4] Userspace pass-through storage engine (backend) Andy Grover
2014-08-20 18:28   ` [RFCv2 1/4] target: Remove unneeded check in sbc_parse_cdb Andy Grover
2014-08-20 18:28   ` [RFCv2 2/4] uio: Export definition of struct uio_device Andy Grover
2014-08-20 18:28   ` [RFCv2 3/4] target: Add a user-passthrough backstore Andy Grover
2014-08-20 18:28   ` [RFCv2 4/4] target: Add documentation on the target userspace pass-through driver Andy Grover

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=20140831212257.GO1302@redhat.com \
    --to=rjones@redhat.com \
    --cc=agrover@redhat.com \
    --cc=hch@lst.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-scsi@vger.kernel.org \
    --cc=nab@linux-iscsi.org \
    --cc=shli@kernel.org \
    --cc=target-devel@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