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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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(-)

--
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


[Index of Archives]     [Linux SCSI]     [Linux RAID]     [Linux Clusters]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]

  Powered by Linux