On Sat, 2010-08-28 at 21:32 +0400, Vladislav Bolkhovitin wrote:
Sorry, but you are completely wrong here. This has nothing to do with a
question of STGT kernel 'ABI compatibility' (because there is only one
mainline user!), but has everything to do with being able to expose TCM
kernel level SPC-4 emulation, and make this logic available to existing
userspace fabrics in tgt.git. Again, we are talking about userspace
STGT fabric module <-> TCM kernel backstore support for .37, which has
already been merged by into tgt.git, and being used by other STGT users
for SG_IO and BSG passthrough.
Sorry, but this is just more generic handwaving on your part. What
constitutes a 'drop in replacement' for STGT is a decision that was to
be made by the STGT developers, not by you. target_core_stgt.c is an
extraordinarly transparent method of bringing drivers/scsi/scsi_tgt_*
logic into the TCM Core HBA/DEV design, and allows us to build upon and
improve the existing mainline kernel code.
It is obvious to even an casual observer from watching the TCM/LIO patch
series that have been flying across the linux-scsi wire the last 24
months that the major features (including PR and ALUA, and new fabric
module drivers) have been developed individual feature bit by feature
bit using a distributed git workflow in a bisectable manner. Each
series was produced in such a manner that each patch could be reviewed
individually by those interested parties.
This is the big difference between our respective development processes.
This is the case not only for SCSI feature bits that TCM/LIO and SCST
share, but for features in TCM/LIO v4 that are unique and not available
in any other target implemention, anywhere. And yes, I am most
certainly talking about code beyond just the SCSI level fabric emulation
bits you are mentioning above.
Then I suggest you learn a better way of communicating your ideas if you
really want to work with members of the LIO/STGT development
communities.
First, I suggest you start explaining your ideas with actual kernel code
that is 1) human readable and 2) presented in such a manner that makes
it accessable for others with skills possibly different (and greater)
than your own to review and give feedback.
Best,
--nab
--