public inbox for linux-rdma@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 00/13] T10-PI support for iSER initiator
@ 2014-03-05 17:43 Sagi Grimberg
       [not found] ` <1394041431-28399-1-git-send-email-sagig-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
                   ` (6 more replies)
  0 siblings, 7 replies; 19+ messages in thread
From: Sagi Grimberg @ 2014-03-05 17:43 UTC (permalink / raw)
  To: roland, nab, michaelc; +Cc: martin.petersen, oren, linux-scsi, linux-rdma

Hey Roland, Nic, Mike and Co

This patchset adds T10 protection information offload support over
RDMA signature verbs API. This set, along with the iSER target set,
allow end-to-end protection information passthrough and validation.
The patchset was tested against Linux SCSI target with iSER DIF
support applied.

iSER T10-PI support enablement is currently controlled with
module parameters (similar to lpfc for example) which make them
global. In the next phase we can consider passing these parameters
from iscsid nl messages, which would make them per-connection.

The approach I took with respect to escalating protection information
errors was minimal iSCSI intervention in protection information affairs.
I added libiscsi a hook asking the transport to check the protection
information status, and construct the proper sense data in case of errors
(the alternative of letting the transport to construct sense data seemed
much less appealing).

Note that this patchset comes on top of a pending patch for iSER to suppress
fastreg completions (http://marc.info/?l=linux-rdma&m=139047309831997&w=2).

v0 patches are available in target-pending git repo (branch rdma-dif) and
passed 0-DAY testing.

Roland, I would like to hear your feedback on this.

The set is ordered by the following:
- Preparation patches (non/minor functionality changes).
- Add protection information execution support.
- Add protection information status check facilities.
- Publish T10-DIF support to SCSI mid-layer according to
  IB device capabilities.

Changes from v1:
- Removed extra space (BUG_ON).
- Dropped DID_ABORT from sc result for data integrity errors.
- Fixed failed sector report.

Changes from v0:
- Fix protection information dma registration for unaligned scatterlists
  which may happen when the block layer merges bios.
- Don't fail connections on devices without DIF support - warn and continue
  without DIF.
- reword FR -> FastReg

Alex Tabachnik (2):
  IB/iser: Introduce pi_enable, pi_guard module parameters
  IB/iser: Initialize T10-PI resources

Sagi Grimberg (11):
  IB/iser: Avoid FRWR notation, use fastreg instead
  IB/iser: Push the decision what memory key to use into fast_reg_mr
    routine
  IB/iser: Move fast_reg_descriptor initialization to a function
  IB/iser: Keep IB device attributes under iser_device
  IB/iser: Replace fastreg descriptor valid bool with indicators
    container
  IB/iser: Generalize iser_unmap_task_data and
    finalize_rdma_unaligned_sg
  IB/iser: Generalize fall_to_bounce_buf routine
  IB/iser: Support T10-PI operations
  SCSI/libiscsi: Add check_protection callback for transports
  IB/iser: Implement check_protection
  IB/iser: Publish T10-PI support to SCSI midlayer

 drivers/infiniband/ulp/iser/iscsi_iser.c     |   46 +++-
 drivers/infiniband/ulp/iser/iscsi_iser.h     |   71 ++++-
 drivers/infiniband/ulp/iser/iser_initiator.c |   98 +++++-
 drivers/infiniband/ulp/iser/iser_memory.c    |  445 +++++++++++++++++++-------
 drivers/infiniband/ulp/iser/iser_verbs.c     |  287 ++++++++++++-----
 drivers/scsi/libiscsi.c                      |   32 ++
 include/scsi/libiscsi.h                      |    4 +
 include/scsi/scsi_transport_iscsi.h          |    1 +
 8 files changed, 771 insertions(+), 213 deletions(-)


^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2014-03-17 21:46 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-03-05 17:43 [PATCH v2 00/13] T10-PI support for iSER initiator Sagi Grimberg
     [not found] ` <1394041431-28399-1-git-send-email-sagig-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
2014-03-05 17:43   ` [PATCH v2 01/13] IB/iser: Avoid FRWR notation, use fastreg instead Sagi Grimberg
2014-03-05 17:43   ` [PATCH v2 02/13] IB/iser: Push the decision what memory key to use into fast_reg_mr routine Sagi Grimberg
2014-03-05 17:43   ` [PATCH v2 05/13] IB/iser: Replace fastreg descriptor valid bool with indicators container Sagi Grimberg
2014-03-05 17:43   ` [PATCH v2 07/13] IB/iser: Generalize fall_to_bounce_buf routine Sagi Grimberg
2014-03-05 17:43   ` [PATCH v2 08/13] IB/iser: Introduce pi_enable, pi_guard module parameters Sagi Grimberg
2014-03-05 17:43   ` [PATCH v2 09/13] IB/iser: Initialize T10-PI resources Sagi Grimberg
2014-03-05 17:43   ` [PATCH v2 13/13] IB/iser: Publish T10-PI support to SCSI midlayer Sagi Grimberg
2014-03-10 19:08   ` [PATCH v2 00/13] T10-PI support for iSER initiator Or Gerlitz
2014-03-05 17:43 ` [PATCH v2 03/13] IB/iser: Move fast_reg_descriptor initialization to a function Sagi Grimberg
2014-03-05 17:43 ` [PATCH v2 04/13] IB/iser: Keep IB device attributes under iser_device Sagi Grimberg
2014-03-05 17:43 ` [PATCH v2 06/13] IB/iser: Generalize iser_unmap_task_data and finalize_rdma_unaligned_sg Sagi Grimberg
2014-03-05 17:43 ` [PATCH v2 10/13] IB/iser: Support T10-PI operations Sagi Grimberg
2014-03-05 17:43 ` [PATCH v2 11/13] SCSI/libiscsi: Add check_protection callback for transports Sagi Grimberg
     [not found]   ` <1394041431-28399-12-git-send-email-sagig-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
2014-03-17  7:25     ` Or Gerlitz
     [not found]       ` <CAJZOPZ+DtO7AqMgFJqm7uz2zwxk5Gs__J10qHhwB0RbAxzYTkQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-03-17 16:59         ` Mike Christie
     [not found]           ` <532729DD.1040506-hcNo3dDEHLuVc3sceRu5cw@public.gmane.org>
2014-03-17 20:34             ` Sagi Grimberg
     [not found]               ` <53275C4F.1040103-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org>
2014-03-17 21:46                 ` Or Gerlitz
2014-03-05 17:43 ` [PATCH v2 12/13] IB/iser: Implement check_protection Sagi Grimberg

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox