Re: Integration of SCST in the mainstream Linux kernel

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Nicholas A. Bellinger
Date: Friday, February 8, 2008 - 4:33 am

On Thu, 2008-02-07 at 14:51 -0800, david@lang.hm wrote:

<nod>

I don't think anyone is saying it should be.  It makes sense that the
more mature SCSI engines that have working code will be providing alot
of the foundation as we talk about options..

supports very SCSI specific target mode hardware, including software
target mode forks of other kernel code.  This code for the target mode
pSCSI, FC and SAS control paths (more for the state machines, that CDB
emulation) that will most likely never need to be emulated on non SCSI
target engine.  SCST has support for the most SCSI fabric protocols of
the group (although it is lacking iSER) while the LIO-SE only supports
traditional iSCSI using Linux/IP (this means TCP, SCTP and IPv6).  The
design of LIO-SE was to make every iSCSI initiator that sends SCSI CDBs
and data to talk to every potential device in the Linux storage stack on
the largest amount of hardware architectures possible.

Most of the iSCSI Initiators I know (including non Linux) do not rely on
heavy SCSI task management, and I think this would be a lower priority
item to get real SCSI specific recovery in the traditional iSCSI target
for users.  Espically things like SCSI target mode queue locking
(affectionally called Auto Contingent Allegiance) make no sense for
traditional iSCSI or iSER, because CmdSN rules are doing this for us.


I recently moved the last core LIO target machine from a hardware RAID5
to MD RAID6 with struct block_device exported LVM objects via
Linux/iSCSI to PVM and HVM domains, and I have been very happy with the
results.  Being able to export any physical or virtual storage object
from whatever layer makes sense for your particular case.  This applies
to both block and file level access.  For example, making an iSCSI
Initiator and Target run in the most limited in environments places
where NAS (espically userspace server side) would have a really hard
time fitting, has always been a requirement.  You can imagine a system
with a smaller amount of memory (say 32MB) having a difficult time doing
I/O to any amount of NAS clients.

If are talking about memory required to get best performance, using
kernel level DMA ring allocation and submission to a generic target
engine uses a significantly smaller amount of memory, than say
traditional buffered FILEIO.  Going futher up the storage stack with
buffered file IO, regardless of if its block or file level, will always
start to add overhead.  I think that kernel level FILEIO with O_DIRECT
and asyncio would probably help alot in this case for general target
mode usage of MD and LVM block devices.

This is because when we are using PSCSI or IBLOCK to queue I/Os which,
may need be different from the original IO from the initiator/client due
to OS storage subsystem differences and/or physical HBA limitiations for
the layers below block.  The current LIO-SE API excepts the storage
object to present these physical limitiations if to engine they exist.
This is called iscsi_transport_t in iscsi_target_transport.h currently,
but really should be called something like target_subsytem_api_t and
plugins called target_pscsi_t, target_bio_t, target_file_t, etc.


The RFC-3720 standard has been stable for going on four years in 2008,
and as the implementations continue to mature, having Linux lead the way
in iSCSI Target, Initiator and Target/Initiator that can potentially run
on anything that can boot Linux on the many, many types of system and
storage around these days is the goal.  I can't personally comment on
how many of these types of systems that target mode or iSCSI stacks have
run in other people's environments, but I have personally been involved
getting LIO/SE and Core/iSCSI running on i386 and x86_64, along with
Alpha, ia64, MIPS, PPC and POWER, and lots of ARM.  I believe the LIO
Target and Initiator stacks have been able to run on the smallest
systems so far, including a uclinux 2.6 sub 100 Mhz board and ~4 MB of
usable sytem memory.  This is still today with the LIO target stack,
which has been successfully run on the OpenMoko device with memory and
FILEIO. :-)

--nab

Btw, I definately agree that being able to export the large amount of
legacy drivers will continue to be an important part..

--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
Integration of SCST in the mainstream Linux kernel, Bart Van Assche, (Wed Jan 23, 7:22 am)
Re: Integration of SCST in the mainstream Linux kernel, Vladislav Bolkhovitin, (Wed Jan 23, 10:11 am)
Re: Integration of SCST in the mainstream Linux kernel, James Bottomley, (Tue Jan 29, 1:42 pm)
Re: Integration of SCST in the mainstream Linux kernel, Roland Dreier, (Tue Jan 29, 2:31 pm)
Re: Integration of SCST in the mainstream Linux kernel, FUJITA Tomonori, (Tue Jan 29, 4:32 pm)
Re: Integration of SCST in the mainstream Linux kernel, Bart Van Assche, (Wed Jan 30, 1:29 am)
Re: Integration of SCST in the mainstream Linux kernel, Bart Van Assche, (Wed Jan 30, 1:38 am)
Re: Integration of SCST in the mainstream Linux kernel, FUJITA Tomonori, (Wed Jan 30, 3:56 am)
Re: Integration of SCST in the mainstream Linux kernel, Vladislav Bolkhovitin, (Wed Jan 30, 4:17 am)
Re: Integration of SCST in the mainstream Linux kernel, Vladislav Bolkhovitin, (Wed Jan 30, 4:18 am)
Re: Integration of SCST in the mainstream Linux kernel, Vladislav Bolkhovitin, (Wed Jan 30, 4:40 am)
Re: Integration of SCST in the mainstream Linux kernel, Bart Van Assche, (Wed Jan 30, 6:10 am)
Re: Integration of SCST in the mainstream Linux kernel, FUJITA Tomonori, (Wed Jan 30, 6:54 am)
Re: Integration of SCST in the mainstream Linux kernel, James Bottomley, (Wed Jan 30, 9:22 am)
Re: Integration of SCST in the mainstream Linux kernel, James Bottomley, (Wed Jan 30, 9:34 am)
Re: Integration of SCST in the mainstream Linux kernel, Bart Van Assche, (Wed Jan 30, 9:50 am)
Re: Integration of SCST in the mainstream Linux kernel, Bart Van Assche, (Wed Jan 30, 10:03 am)
Re: Integration of SCST in the mainstream Linux kernel, Bart Van Assche, (Thu Jan 31, 12:48 am)
Re: Integration of SCST in the mainstream Linux kernel, Nicholas A. Bellinger, (Thu Jan 31, 6:25 am)
Re: Integration of SCST in the mainstream Linux kernel, Bart Van Assche, (Thu Jan 31, 7:34 am)
Re: Integration of SCST in the mainstream Linux kernel, Nicholas A. Bellinger, (Thu Jan 31, 7:44 am)
Re: Integration of SCST in the mainstream Linux kernel, Vladislav Bolkhovitin, (Thu Jan 31, 8:50 am)
Re: Integration of SCST in the mainstream Linux kernel, Nicholas A. Bellinger, (Thu Jan 31, 10:14 am)
Re: Integration of SCST in the mainstream Linux kernel, Bart Van Assche, (Thu Jan 31, 10:40 am)
Re: Integration of SCST in the mainstream Linux kernel, Nicholas A. Bellinger, (Thu Jan 31, 11:15 am)
Re: Integration of SCST in the mainstream Linux kernel, Bart Van Assche, (Fri Feb 1, 1:11 am)
Re: Integration of SCST in the mainstream Linux kernel, Bart Van Assche, (Fri Feb 1, 2:08 am)
Re: Integration of SCST in the mainstream Linux kernel, Nicholas A. Bellinger, (Fri Feb 1, 3:39 am)
Re: Integration of SCST in the mainstream Linux kernel, Bart Van Assche, (Fri Feb 1, 4:04 am)
Re: [Scst-devel] Integration of SCST in the mainstream Lin ..., Vladislav Bolkhovitin, (Fri Feb 1, 4:50 am)
Re: [Scst-devel] Integration of SCST in the mainstream Lin ..., Vladislav Bolkhovitin, (Fri Feb 1, 4:50 am)
Re: Integration of SCST in the mainstream Linux kernel, Nicholas A. Bellinger, (Fri Feb 1, 5:05 am)
Re: [Scst-devel] Integration of SCST in the mainstream Lin ..., Vladislav Bolkhovitin, (Fri Feb 1, 5:25 am)
Re: Integration of SCST in the mainstream Linux kernel, Bart Van Assche, (Fri Feb 1, 6:25 am)
Re: Integration of SCST in the mainstream Linux kernel, Nicholas A. Bellinger, (Fri Feb 1, 7:36 am)
Re: Integration of SCST in the mainstream Linux kernel, Pete Wyckoff, (Sat Feb 2, 8:32 am)
Re: Integration of SCST in the mainstream Linux kernel, Vladislav Bolkhovitin, (Mon Feb 4, 5:27 am)
Re: Integration of SCST in the mainstream Linux kernel, Bart Van Assche, (Mon Feb 4, 6:53 am)
Re: Integration of SCST in the mainstream Linux kernel, James Bottomley, (Mon Feb 4, 8:30 am)
Re: Integration of SCST in the mainstream Linux kernel, Vladislav Bolkhovitin, (Mon Feb 4, 9:25 am)
Re: Integration of SCST in the mainstream Linux kernel, David Dillow, (Mon Feb 4, 10:00 am)
Re: Integration of SCST in the mainstream Linux kernel, James Bottomley, (Mon Feb 4, 10:06 am)
Re: Integration of SCST in the mainstream Linux kernel, Vladislav Bolkhovitin, (Mon Feb 4, 10:08 am)
Re: Integration of SCST in the mainstream Linux kernel, Vladislav Bolkhovitin, (Mon Feb 4, 10:16 am)
Re: Integration of SCST in the mainstream Linux kernel, James Bottomley, (Mon Feb 4, 10:25 am)
Re: Integration of SCST in the mainstream Linux kernel, Douglas Gilbert, (Mon Feb 4, 10:30 am)
Re: Integration of SCST in the mainstream Linux kernel, Vladislav Bolkhovitin, (Mon Feb 4, 10:56 am)
Re: Integration of SCST in the mainstream Linux kernel, James Bottomley, (Mon Feb 4, 11:22 am)
Re: Integration of SCST in the mainstream Linux kernel, Linus Torvalds, (Mon Feb 4, 11:29 am)
Re: Integration of SCST in the mainstream Linux kernel, Vladislav Bolkhovitin, (Mon Feb 4, 11:38 am)
Re: Integration of SCST in the mainstream Linux kernel, James Bottomley, (Mon Feb 4, 11:49 am)
Re: Integration of SCST in the mainstream Linux kernel, James Bottomley, (Mon Feb 4, 11:54 am)
Re: Integration of SCST in the mainstream Linux kernel, Nicholas A. Bellinger, (Mon Feb 4, 12:06 pm)
Re: Integration of SCST in the mainstream Linux kernel, Nicholas A. Bellinger, (Mon Feb 4, 12:19 pm)
Re: Integration of SCST in the mainstream Linux kernel, Linus Torvalds, (Mon Feb 4, 12:44 pm)
Re: Integration of SCST in the mainstream Linux kernel, Nicholas A. Bellinger, (Mon Feb 4, 1:24 pm)
Re: Integration of SCST in the mainstream Linux kernel, J. Bruce Fields, (Mon Feb 4, 2:01 pm)
Re: Integration of SCST in the mainstream Linux kernel, Linus Torvalds, (Mon Feb 4, 2:24 pm)
Re: Integration of SCST in the mainstream Linux kernel, Nicholas A. Bellinger, (Mon Feb 4, 3:00 pm)
Re: Integration of SCST in the mainstream Linux kernel, Nicholas A. Bellinger, (Mon Feb 4, 3:59 pm)
Re: Integration of SCST in the mainstream Linux kernel, James Bottomley, (Mon Feb 4, 4:00 pm)
Re: Integration of SCST in the mainstream Linux kernel, Nicholas A. Bellinger, (Mon Feb 4, 4:12 pm)
Re: Integration of SCST in the mainstream Linux kernel, Nicholas A. Bellinger, (Mon Feb 4, 4:16 pm)
Re: Integration of SCST in the mainstream Linux kernel, Linus Torvalds, (Mon Feb 4, 4:27 pm)
Re: Integration of SCST in the mainstream Linux kernel, Linus Torvalds, (Mon Feb 4, 4:45 pm)
Re: Integration of SCST in the mainstream Linux kernel, Matt Mackall, (Mon Feb 4, 5:07 pm)
Re: Integration of SCST in the mainstream Linux kernel, Linus Torvalds, (Mon Feb 4, 5:24 pm)
Re: Integration of SCST in the mainstream Linux kernel, Matt Mackall, (Mon Feb 4, 5:45 pm)
Re: Integration of SCST in the mainstream Linux kernel, Linus Torvalds, (Mon Feb 4, 6:20 pm)
Re: [Scst-devel] Integration of SCST in the mainstream Lin ..., Tomasz Chmielewski, (Tue Feb 5, 12:14 am)
Re: Integration of SCST in the mainstream Linux kernel, Bart Van Assche, (Tue Feb 5, 1:38 am)
Re: Integration of SCST in the mainstream Linux kernel, Olivier Galibert, (Tue Feb 5, 6:05 am)
Re: [Scst-devel] Integration of SCST in the mainstream Lin ..., Tomasz Chmielewski, (Tue Feb 5, 9:07 am)
Re: Integration of SCST in the mainstream Linux kernel, Bart Van Assche, (Tue Feb 5, 9:25 am)
Re: Integration of SCST in the mainstream Linux kernel, Erez Zilber, (Tue Feb 5, 10:01 am)
Re: Integration of SCST in the mainstream Linux kernel, Erez Zilber, (Tue Feb 5, 10:10 am)
Re: Integration of SCST in the mainstream Linux kernel, Jeff Garzik, (Tue Feb 5, 10:50 am)
Re: Integration of SCST in the mainstream Linux kernel, Jeff Garzik, (Tue Feb 5, 11:08 am)
Re: Integration of SCST in the mainstream Linux kernel, Linus Torvalds, (Tue Feb 5, 11:18 am)
Re: Integration of SCST in the mainstream Linux kernel, James Bottomley, (Tue Feb 5, 11:37 am)
Re: Integration of SCST in the mainstream Linux kernel, Vladislav Bolkhovitin, (Tue Feb 5, 11:59 am)
Re: Integration of SCST in the mainstream Linux kernel, Vladislav Bolkhovitin, (Tue Feb 5, 12:00 pm)
Re: Integration of SCST in the mainstream Linux kernel, Vladislav Bolkhovitin, (Tue Feb 5, 12:01 pm)
Re: Integration of SCST in the mainstream Linux kernel, Vladislav Bolkhovitin, (Tue Feb 5, 12:01 pm)
Re: Integration of SCST in the mainstream Linux kernel, Bart Van Assche, (Tue Feb 5, 12:02 pm)
Re: Integration of SCST in the mainstream Linux kernel, Vladislav Bolkhovitin, (Tue Feb 5, 12:02 pm)
Re: Integration of SCST in the mainstream Linux kernel, Jeff Garzik, (Tue Feb 5, 12:12 pm)
Re: Integration of SCST in the mainstream Linux kernel, James Bottomley, (Tue Feb 5, 12:13 pm)
Re: Integration of SCST in the mainstream Linux kernel, Vladislav Bolkhovitin, (Tue Feb 5, 12:21 pm)
Re: Integration of SCST in the mainstream Linux kernel, Nicholas A. Bellinger, (Tue Feb 5, 5:11 pm)
Re: Integration of SCST in the mainstream Linux kernel, Nicholas A. Bellinger, (Tue Feb 5, 5:17 pm)
Re: Integration of SCST in the mainstream Linux kernel, Nicholas A. Bellinger, (Tue Feb 5, 5:48 pm)
Re: Integration of SCST in the mainstream Linux kernel, Nicholas A. Bellinger, (Tue Feb 5, 5:51 pm)
Re: Integration of SCST in the mainstream Linux kernel, Nicholas A. Bellinger, (Tue Feb 5, 6:43 pm)
Re: [Scst-devel] Integration of SCST in the mainstream Lin ..., Nicholas A. Bellinger, (Tue Feb 5, 7:01 pm)
Re: Integration of SCST in the mainstream Linux kernel, Bart Van Assche, (Wed Feb 6, 3:22 am)
Re: Integration of SCST in the mainstream Linux kernel, Bart Van Assche, (Wed Feb 6, 5:16 am)
Re: Integration of SCST in the mainstream Linux kernel, Benny Halevy, (Wed Feb 6, 9:45 am)
Re: Integration of SCST in the mainstream Linux kernel, Roland Dreier, (Wed Feb 6, 10:06 am)
Re: Integration of SCST in the mainstream Linux kernel, Vladislav Bolkhovitin, (Wed Feb 6, 11:07 am)
Re: Integration of SCST in the mainstream Linux kernel, Vladislav Bolkhovitin, (Thu Feb 7, 6:45 am)
Re: [Scst-devel] Integration of SCST in the mainstream Lin ..., Nicholas A. Bellinger, (Thu Feb 7, 8:38 am)
Re: Integration of SCST in the mainstream Linux kernel, Vladislav Bolkhovitin, (Fri Feb 8, 3:32 am)
Re: Integration of SCST in the mainstream Linux kernel, Vladislav Bolkhovitin, (Fri Feb 8, 3:37 am)
Re: Integration of SCST in the mainstream Linux kernel, Nicholas A. Bellinger, (Fri Feb 8, 4:33 am)
Re: [Scst-devel] Integration of SCST in the mainstream Lin ..., Nicholas A. Bellinger, (Fri Feb 8, 4:53 am)
Re: Integration of SCST in the mainstream Linux kernel, Vladislav Bolkhovitin, (Fri Feb 8, 7:36 am)
Re: Integration of SCST in the mainstream Linux kernel, Vladislav Bolkhovitin, (Fri Feb 8, 7:42 am)
Re: Integration of SCST in the mainstream Linux kernel, Nicholas A. Bellinger, (Fri Feb 8, 4:53 pm)
Re: Integration of SCST in the mainstream Linux kernel, Nicholas A. Bellinger, (Fri Feb 8, 5:00 pm)
Re: Integration of SCST in the mainstream Linux kernel, Luben Tuikov, (Sat Feb 9, 12:32 am)
Re: Integration of SCST in the mainstream Linux kernel, Vladislav Bolkhovitin, (Mon Feb 11, 3:02 am)
Re: [Scst-devel] Integration of SCST in the mainstream Lin ..., Nicholas A. Bellinger, (Tue Feb 12, 8:44 pm)
CONFIG_SLUB and reproducable general protection faults on ..., Nicholas A. Bellinger, (Tue Feb 12, 11:18 pm)
Re: CONFIG_SLUB and reproducable general protection faults ..., Nicholas A. Bellinger, (Wed Feb 13, 9:37 am)
Re: Integration of SCST in the mainstream Linux kernel, Bart Van Assche, (Fri Feb 15, 8:02 am)
Re: Integration of SCST in the mainstream Linux kernel, Erez Zilber, (Mon Feb 18, 2:43 am)
Re: Integration of SCST in the mainstream Linux kernel, Bart Van Assche, (Mon Feb 18, 4:01 am)
Re: Integration of SCST in the mainstream Linux kernel, Erez Zilber, (Wed Feb 20, 12:34 am)
Re: Integration of SCST in the mainstream Linux kernel, Bart Van Assche, (Wed Feb 20, 1:41 am)