[SRU][Jammy][Pull V2] Update Broadcom Emulex FC HBA lpfc driver to 14.2.0.5 for Ubuntu 22.04

Jeff Lane jeffrey.lane at canonical.com
Wed Oct 5 18:14:55 UTC 2022


BugLink: https://bugs.launchpad.net/bugs/1988711

[Impact]
There are numerous bug fixes included in the more recent version of lpfc that
Broadcom has asked to pull into Jammy and Kinetic to better support customers
in the field who are using the GA kernel and cant or wont move to the HWE
kernels.  These all are limited to the lpfc driver itself, no patches to core
code are requested. Test kernels were provided to Broadcom which were tested 
and validated.

These repesent bugs customers have raised to Broadcom as well as bugs Broadcom
have discovered in their own testing over time.

Apologies for sending this one originally without this, I had included it in
other PRs and forgot to add everything before I send this one along. 

[Fix]
The following changes since commit 6ed20c784348b63d1f826da567a551d25ac4cc7c:

  UBUNTU: Ubuntu-5.15.0-50.56 (2022-09-20 11:17:12 +0200)

are available in the Git repository at:

  git+ssh://bladernr@git.launchpad.net/~bladernr/ubuntu/+source/linux/+git/jammy 1988711-lpfc-to-14.2.0.5

for you to fetch changes up to de90254c292fe98fd52c773fddf2e2cfa9a36e81:

  scsi: lpfc: Copyright updates for 14.2.0.5 patches (2022-10-03 13:44:32 -0400)

----------------------------------------------------------------
Bradley Grove (1):
      scsi: lpfc: Add support for ATTO Fibre Channel devices

Changcheng Deng (1):
      scsi: lpfc: Remove unneeded variable

Hannes Reinecke (5):
      scsi: lpfc: Kill lpfc_bus_reset_handler()
      scsi: lpfc: Drop lpfc_no_handler()
      scsi: lpfc: Use fc_block_rport()
      scsi: lpfc: Use rport as argument for lpfc_send_taskmgmt()
      scsi: lpfc: Use rport as argument for lpfc_chk_tgt_mapped()

James Smart (79):
      scsi: lpfc: SLI path split: Refactor lpfc_iocbq
      scsi: lpfc: SLI path split: Refactor fast and slow paths to native SLI4
      scsi: lpfc: SLI path split: Introduce lpfc_prep_wqe
      scsi: lpfc: SLI path split: Refactor base ELS paths and the FLOGI path
      scsi: lpfc: SLI path split: Refactor PLOGI/PRLI/ADISC/LOGO paths
      scsi: lpfc: SLI path split: Refactor the RSCN/SCR/RDF/EDC/FARPR paths
      scsi: lpfc: SLI path split: Refactor LS_ACC paths
      scsi: lpfc: SLI path split: Refactor LS_RJT paths
      scsi: lpfc: SLI path split: Refactor FDISC paths
      scsi: lpfc: SLI path split: Refactor VMID paths
      scsi: lpfc: SLI path split: Refactor misc ELS paths
      scsi: lpfc: SLI path split: Refactor CT paths
      scsi: lpfc: SLI path split: Refactor SCSI paths
      scsi: lpfc: SLI path split: Refactor Abort paths
      scsi: lpfc: SLI path split: Refactor BSG paths
      scsi: lpfc: Update lpfc version to 14.2.0.0
      scsi: lpfc: Copyright updates for 14.2.0.0 patches
      scsi: lpfc: Improve PCI EEH Error and Recovery Handling
      scsi: lpfc: Fix unload hang after back to back PCI EEH faults
      scsi: lpfc: Update lpfc version to 14.2.0.1
      scsi: lpfc: Fix broken SLI4 abort path
      scsi: lpfc: Fix locking for lpfc_sli_iocbq_lookup()
      scsi: lpfc: Tweak message log categories for ELS/FDMI/NVMe rescan
      scsi: lpfc: Fix diagnostic fw logging after a function reset
      scsi: lpfc: Zero SLI4 fcp_cmnd buffer's fcpCntl0 field
      scsi: lpfc: Requeue SCSI I/O to upper layer when fw reports link down
      scsi: lpfc: Clear fabric topology flag before initiating a new FLOGI
      scsi: lpfc: Fix null pointer dereference after failing to issue FLOGI and PLOGI
      scsi: lpfc: Protect memory leak for NPIV ports sending PLOGI_RJT
      scsi: lpfc: Update fc_prli_sent outstanding only after guaranteed IOCB submit
      scsi: lpfc: Transition to NPR state upon LOGO cmpl if link down or aborted
      scsi: lpfc: Remove unnecessary NULL pointer assignment for ELS_RDF path
      scsi: lpfc: Move MI module parameter check to handle dynamic disable
      scsi: lpfc: Correct CRC32 calculation for congestion stats
      scsi: lpfc: Revise FDMI reporting of supported port speed for trunk groups
      scsi: lpfc: Remove false FDMI NVMe FC-4 support for NPIV ports
      scsi: lpfc: Register for Application Services FC-4 type in Fabric topology
      scsi: lpfc: Introduce FC_RSCN_MEMENTO flag for tracking post RSCN completion
      scsi: lpfc: Fix field overload in lpfc_iocbq data structure
      scsi: lpfc: Refactor cleanup of mailbox commands
      scsi: lpfc: Update stat accounting for READ_STATUS mbox command
      scsi: lpfc: Expand setting ELS_ID field in ELS_REQUEST64_WQE
      scsi: lpfc: Update lpfc version to 14.2.0.2
      scsi: lpfc: Copyright updates for 14.2.0.2 patches
      scsi: lpfc: Remove unnecessary null ndlp check in lpfc_sli_prep_wqe()
      scsi: lpfc: Fix additional reference counting in lpfc_bsg_rport_els()
      scsi: lpfc: Remove redundant lpfc_sli_prep_wqe() call
      scsi: lpfc: Fix split code for FLOGI on FCoE
      scsi: lpfc: Correct BDE DMA address assignment for GEN_REQ_WQE
      scsi: lpfc: Fix element offset in __lpfc_sli_release_iocbq_s4()
      scsi: lpfc: Fill in missing ndlp kref puts in error paths
      scsi: lpfc: Fix ndlp put following a LOGO completion
      scsi: lpfc: Inhibit aborts if external loopback plug is inserted
      scsi: lpfc: Fix dmabuf ptr assignment in lpfc_ct_reject_event()
      scsi: lpfc: Use list_for_each_entry_safe() in rscn_recovery_check()
      scsi: lpfc: Decrement outstanding gidft_inp counter if lpfc_err_lost_link()
      scsi: lpfc: Change VMID registration to be based on fabric parameters
      scsi: lpfc: Rework FDMI initialization after link up
      scsi: lpfc: Use sg_dma_address() and sg_dma_len() macros for NVMe I/O
      scsi: lpfc: Update lpfc version to 14.2.0.3
      scsi: lpfc: Commonize VMID code location
      scsi: lpfc: Rework lpfc_vmid_get_appid() to be protocol independent
      scsi: lpfc: Correct BDE type for XMIT_SEQ64_WQE in lpfc_ct_reject_event()
      scsi: lpfc: Resolve some cleanup issues following abort path refactoring
      scsi: lpfc: Resolve some cleanup issues following SLI path refactoring
      scsi: lpfc: Address NULL pointer dereference after starget_to_rport()
      scsi: lpfc: Resolve NULL ptr dereference after an ELS LOGO is aborted
      scsi: lpfc: Add more logging of cmd and cqe information for aborted NVMe cmds
      scsi: lpfc: Update lpfc version to 14.2.0.4
      scsi: lpfc: Fix uninitialized cqe field in lpfc_nvme_cancel_iocb()
      scsi: lpfc: Prevent buffer overflow crashes in debugfs with malformed user input
      scsi: lpfc: Set PU field when providing D_ID in XMIT_ELS_RSP64_CX iocb
      scsi: lpfc: Remove extra atomic_inc on cmd_pending in queuecommand after VMID
      scsi: lpfc: Fix possible memory leak when failing to issue CMF WQE
      scsi: lpfc: Fix lost NVMe paths during LIF bounce stress test
      scsi: lpfc: Revert RSCN_MEMENTO workaround for misbehaved configuration
      scsi: lpfc: Refactor lpfc_nvmet_prep_abort_wqe() into lpfc_sli_prep_abort_xri()
      scsi: lpfc: Update lpfc version to 14.2.0.5
      scsi: lpfc: Copyright updates for 14.2.0.5 patches

Julia Lawall (2):
      scsi: lpfc: Fix typos in comments
      scsi: lpfc: Use kcalloc()

Minghao Chi (CGEL ZTE) (1):
      scsi: lpfc: Remove redundant flush_workqueue() call

 drivers/scsi/lpfc/Makefile         |    2 +-
 drivers/scsi/lpfc/lpfc.h           |  110 +-
 drivers/scsi/lpfc/lpfc_attr.c      |   37 +-
 drivers/scsi/lpfc/lpfc_bsg.c       |  418 +++--
 drivers/scsi/lpfc/lpfc_bsg.h       |    2 +-
 drivers/scsi/lpfc/lpfc_crtn.h      |   37 +-
 drivers/scsi/lpfc/lpfc_ct.c        |  696 ++++----
 drivers/scsi/lpfc/lpfc_debugfs.c   |   31 +-
 drivers/scsi/lpfc/lpfc_els.c       | 2165 ++++++++++++++-----------
 drivers/scsi/lpfc/lpfc_hbadisc.c   |  315 ++--
 drivers/scsi/lpfc/lpfc_hw.h        |  111 +-
 drivers/scsi/lpfc/lpfc_hw4.h       |   53 +-
 drivers/scsi/lpfc/lpfc_ids.h       |   32 +-
 drivers/scsi/lpfc/lpfc_init.c      |  342 ++--
 drivers/scsi/lpfc/lpfc_logmsg.h    |    2 +-
 drivers/scsi/lpfc/lpfc_mbox.c      |  205 ++-
 drivers/scsi/lpfc/lpfc_nportdisc.c |  183 ++-
 drivers/scsi/lpfc/lpfc_nvme.c      |  154 +-
 drivers/scsi/lpfc/lpfc_nvme.h      |    8 +-
 drivers/scsi/lpfc/lpfc_nvmet.c     |  206 +--
 drivers/scsi/lpfc/lpfc_scsi.c      |  871 +++-------
 drivers/scsi/lpfc/lpfc_sli.c       | 3073 +++++++++++++++++-------------------
 drivers/scsi/lpfc/lpfc_sli.h       |   59 +-
 drivers/scsi/lpfc/lpfc_sli4.h      |    2 +-
 drivers/scsi/lpfc/lpfc_version.h   |    6 +-
 drivers/scsi/lpfc/lpfc_vmid.c      |  288 ++++
 drivers/scsi/lpfc/lpfc_vport.c     |   31 +-
 27 files changed, 5035 insertions(+), 4404 deletions(-)
 create mode 100644 drivers/scsi/lpfc/lpfc_vmid.c



More information about the kernel-team mailing list