Re: [Scst-devel] Fwd: Re: linuxcon 2010...

From: James Bottomley
Date: Sat Aug 21 2010 - 16:43:29 EST


On Sat, 2010-08-21 at 22:42 +0400, Vladislav Bolkhovitin wrote:
> Nicholas A. Bellinger, on 08/20/2010 02:29 AM wrote:
> > "We will be extending the scsi_tgt_[lib,if].c mapped ring interface to
> > allow TCM to access userspace backstores transparently with existing
> > kernel level TCM fabric modules, and using the generic configfs fabric
> > module infrastructure in target_core_fabric_configfs.c for the port and
> > I_T nexus control plane just as you would with any TCM backstore
> > subsystem today.
> >
> > Again, in open source you have to build upon what already exists and
> > move forward. The original STGT kernel<-> userspace ring abstraction
> > and logic in drivers/scsi/scsi_tgt_lib.c:scsi_tgt_queue_command() ->
> > scsi_tgt_uspace_send_cmd() is already going to do the vast majority of
> > what is required for handling fabric I/O processing and I_T Nexus and
> > Port management in kernel space with a userspace backstore. It is
> > really just a matter of allowing the STGT ring request to optionally be
> > sent out to userspace as a standalone LUN instead of as a target port."
>
> You forgot to mention one small thing. You are going to (re)use current
> STGT interface for user space backend, which in 5 years of being
> mainline has not gained any noticeable interest, because it is
> fundamentally slow.

That's not exactly what the results of a speed comparison one of your
people did said, now is it? The results were actually not much
difference on line speeds up to GigE.

Interface re-use (or at least ABI compatibility) is the whole point,
it's what makes the solution a drop in replacement.

> It needs a complete redesign to become fast. In
> contrast, interface provided by scst_user has just 3% overhead comparing
> with fully in-kernel backend and allows to build storage capable of
> handling 1,500,000 IOPSes (Kaminario).

For a replacement, first we get the current userspace code working as
is, then you can propose modifications to make it go faster.

James


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/