1. 25 8月, 2021 3 次提交
  2. 27 7月, 2021 1 次提交
  3. 19 7月, 2021 7 次提交
  4. 10 6月, 2021 1 次提交
  5. 22 5月, 2021 5 次提交
  6. 13 4月, 2021 5 次提交
  7. 25 3月, 2021 1 次提交
  8. 05 3月, 2021 9 次提交
  9. 30 1月, 2021 1 次提交
  10. 08 1月, 2021 3 次提交
  11. 01 12月, 2020 1 次提交
  12. 20 11月, 2020 2 次提交
  13. 17 11月, 2020 1 次提交
    • J
      scsi: lpfc: Convert abort handling to SLI-3 and SLI-4 handlers · db7531d2
      James Smart 提交于
      This patch reworks the abort interfaces such that SLI-3 retains the
      iocb-based formatting and completions and SLI-4 now uses native WQEs and
      completion routines.
      
      The following changes are made:
      
       - The code is refactored from a confusing 2 routine sequence of
         xx_abort_iotag_issue(), which creates/formats and abort cmd, and
         xx_issue_abort_tag(), which then issues and handles the completion of
         the abort cmd - into a single interface of xx_issue_abort_iotag().  The
         new interface will determine whether SLI-3 or SLI-4 and then call the
         appropriate handler. A completion handler can now be specified to
         address the differences in completion handling.  Note: original code is
         all iocb based, with SLI-4 converting to SLI-3 for the SCSI/ELS path,
         and NVMe natively using wqes.
      
       - The SLI-3 side is refactored:
      
         The older iocb-base lpfc_sli_issue_abort_iotag() routine is combined
         with the logic of lpfc_sli_abort_iotag_issue() as well as the
         iocb-specific code in lpfc_abort_handler() and lpfc_sli_abort_iocb() to
         create the new single SLI-3 abort routine that formats and issues the
         iocb.
      
       - The SLI-4 side is refactored and added to:
      
         The native WQE abort code in NVMe is moved to the new SLI-4
         issue_abort_iotag() routine. Items in SCSI that set fields not set by
         NVMe is migrated into the new routine. Thus the routine supports NVMe
         and SCSI initiators. The nvmet block (target) formats the abort slightly
         different (like the old NVMe initiator) thus it has its own prep routine
         stolen from NVMe initiator and it retains the current code it has for
         issuing the WQE (does not use the commonized routine the initiators
         do). SLI-4 completion handlers were also added.
      
       - lpfc_abort_handler now becomes a wrapper that determines whether
         SLI-3 or SLI-4 and calls the proper abort handler.
      
      Link: https://lore.kernel.org/r/20201115192646.12977-16-james.smart@broadcom.comCo-developed-by: NDick Kennedy <dick.kennedy@broadcom.com>
      Signed-off-by: NDick Kennedy <dick.kennedy@broadcom.com>
      Signed-off-by: NJames Smart <james.smart@broadcom.com>
      Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
      db7531d2