Re: [PATCH 0/3] Add proper STGT <-> bs_sg passthrough v3

From: FUJITA Tomonori
Date: Mon Jun 07 2010 - 19:46:19 EST


On Mon, 07 Jun 2010 01:27:16 -0700
"Nicholas A. Bellinger" <nab@xxxxxxxxxxxxxxx> wrote:

> 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. ;)

Thanks for the confirmation. I've merged these patches into master.

I'll merge your bsg patch if nobody complains about dropping sg
support in a few days.


Thanks,
--
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/