[Stgt-devel] Question for pass-through target design
Vladislav Bolkhovitin
vst
Fri Jun 1 17:12:01 CEST 2007
Vladislav Bolkhovitin wrote:
> So, if you need in-kernel pass-through I would suggest you to look at
> SCST project (http://scst.sf.net), which is currently stable and mature,
> although also not fully finished yet. It was historically from the very
> beginning designed for full feature in-kernel pass-through for not only
> stateless SCSI devices, like disks, but also for stateful SCSI devices
> (like SSC ones a.k.a. tapes), where the correct handling of all above is
> essential. In additional to considerably better performance, the
> complete in-kernel approach makes the code simpler, smaller and cleaner
> as well as allows such things as zero-copy buffered file IO, i.e. when
> data are sent to remote initiators or received from them directly
> from/to the page cache (currently under development). For those who need
> implementing SCSI devices in the user space scst_user module is about to
> be added. Since the SCSI state machine is in kernel the interface
> provided by scst_user is very simple, it essentially consists from only
> a single IOCTL and allows to have overhead as low as a single syscall
> per SCSI command without any additional context switches. It is already
> implemented and works. For some legal reasons I can't at the moment
> publish it, but you can see its full description in the project's SVN
> docs (you can get them using command "svn co
> https://svn.sourceforge.net/svnroot/scst/trunk/doc").
Now I released scst_user module and it is available from the SCST SVN,
so you can check how simply it allows to write SCSI devices, like a VTL,
in the user space.
Vlad
More information about the stgt
mailing list