On Mon, 2010-06-07 at 15:45 +0900, FUJITA Tomonori wrote: > On Sun, 6 Jun 2010 20:50:15 -0700 > "Nicholas A. Bellinger" <nab@xxxxxxxxxxxxxxx> wrote: > > > From: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx> > > > > Greeting STGT folks, > > > > This is the third round of patches for adding proper LUN passthrough support into STGT > > using struct scsi_lu->cmd_perform() and struct scsi_lu->cmd_done() callers with existing > > SG_IO and the new BSG v4 backstores. > > > > Following Tomo-san's input, the changelog between v2 -> v3 is as follows: > > > > 1) Add struct device_type_template sg_template for SG_IO and BSG in usr/bs_sg.c instead > > of making changes to usr/sbc.c > > > > 2) Add struct backingstore_template->bs_passthrough member of type int for SG_IO and BSG. > > > > 3) In usr/target.c:tgt_device_create() pass bst->bs_passthrough into device_type_lookup() > > and for passthrough case use the new device_type_passthrough() to locate > > struct device_type_template sg_template. > > > > 4) Remove unnecessary post_cmd_done() from usr/target.c:__cmd_done_passthrough() > > > > This patch series has been tested with STGT/iSCSI using 'sg'+'bsg' and 'rdwr' for non > > passthrough mode backstores into TCM_Loop LLD emulated iSCSI target ports. > > > > Best, > > > > Signed-off-by: Nicholas A. Bellinger <nab@xxxxxxxxxxxxxxx > > > > Nicholas Bellinger (3): > > [tgt]: Add proper STGT LUN backstore passthrough support (rev 3) > > [tgt]: Add bs_sg struct device_type_template sg_template and struct > > backingstore_template->bs_init() > > [tgt]: Add BSG v4 backstore support to usr/bs_sg.c > > > > usr/bs_sg.c | 247 ++++++++++++++++++++++++++++++++++++++++++++++++++++-- > > usr/scsi_cmnd.h | 7 ++ > > usr/target.c | 113 +++++++++++++++++++++++--- > > usr/tgtd.h | 16 ++++ > > 4 files changed, 362 insertions(+), 21 deletions(-) > > The first and second patches Look fine overall. I have some comments > and wrote some cleanup patches. > > I've put the first two patches with my cleanups: > > git://git.kernel.org/pub/scm/linux/kernel/git/tomo/tgt.git pass > > Can you confirm that it works for you? Then I can merge them into > master. The pass branch works fine using '-E sg -Y pt' for SG_IO backstore <-> fabric LUN assocation with TCM_Loop LLD Target Ports. Thanks for cleaning things up to use TYPE_PT btw, I should have asked about that earlier. ;) > > Let's leave bsg support alone and focus on the sg support for now. > -- Ok, I just fixed some minor breakage and applied patch 3 on top of tgt.git/pass in my local tree and everything appears to work with '-E bsg -Y pt'. Please let me know if you have any other comments on the BSG bits or if you would like me to send along a updated patch 3 seperately. Thanks Tomo! --nab -- To unsubscribe from this list: send the line "unsubscribe stgt" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html