1. 31 5月, 2019 1 次提交
  2. 11 7月, 2018 1 次提交
  3. 29 5月, 2018 1 次提交
  4. 19 4月, 2018 1 次提交
  5. 13 3月, 2018 1 次提交
  6. 23 2月, 2018 1 次提交
  7. 13 2月, 2018 2 次提交
  8. 05 12月, 2017 3 次提交
  9. 02 11月, 2017 1 次提交
  10. 03 10月, 2017 2 次提交
  11. 25 8月, 2017 1 次提交
  12. 20 6月, 2017 1 次提交
    • J
      scsi: lpfc: Fix SLI3 drivers attempting NVME ELS commands. · 09559e81
      James Smart 提交于
      In a server with an 8G adapter and a 32G adapter, running NVME and FCP,
      the server would crash with the following stack.
      
      RIP: 0010: ... lpfc_nvme_register_port+0x38/0x420 [lpfc]
       lpfc_nlp_state_cleanup+0x154/0x4f0 [lpfc]
       lpfc_nlp_set_state+0x9d/0x1a0 [lpfc]
       lpfc_cmpl_prli_prli_issue+0x35f/0x440 [lpfc]
       lpfc_disc_state_machine+0x78/0x1c0 [lpfc]
       lpfc_cmpl_els_prli+0x17c/0x1f0 [lpfc]
       lpfc_sli_sp_handle_rspiocb+0x39b/0x6b0 [lpfc]
       lpfc_sli_handle_slow_ring_event_s3+0x134/0x2d0 [lpfc]
       lpfc_work_done+0x8ac/0x13b0 [lpfc]
       lpfc_do_work+0xf1/0x1b0 [lpfc]
      
      Crash, on the 8G adapter, is due to a vport which does not have a nvme
      local port structure. It's not supposed to have one. NVME is not
      supported on the 8G adapter, so the NVME PRLI, which started this flow
      shouldn't have been sent in the first place.
      
      Correct discovery engine to recognize when on an SLI3 rport, which
      doesn't support SLI3, if the rport supports only NVME, don't send a NVME
      PRLI. Instead, as no FC4 will be used, a LOGO is sent.  If rport is FCP
      and NVME, only execute the SCSI PRLI.
      Signed-off-by: NDick Kennedy <dick.kennedy@broadcom.com>
      Signed-off-by: NJames Smart <james.smart@broadcom.com>
      Reviewed-by: NHannes Reinecke <hare@suse.com>
      Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
      09559e81
  13. 13 6月, 2017 2 次提交
  14. 17 5月, 2017 2 次提交
  15. 24 4月, 2017 3 次提交
    • J
      Fix implicit logo and RSCN handling for NVMET · 1c5b12f7
      James Smart 提交于
      NVMET didn't have any RSCN handling at all and
      would not execute implicit LOGO when receiving a PLOGI
      from an rport that NVMET had in state UNMAPPED.
      
      Clean up the logic in lpfc_nlp_state_cleanup for
      initiators (FCP and NVME). NVMET should not respond to
      RSCN including allocating new ndlps so this code was
      conditionalized when nvmet_support is true.  The check
      for NLP_RCV_PLOGI in lpfc_setup_disc_node was moved
      below the check for nvmet_support to allow the NVMET
      to recover initiator nodes correctly.  The implicit
      logo was introduced with lpfc_rcv_plogi when NVMET gets
      a PLOGI on an ndlp in UNMAPPED state.  The RSCN handling
      was modified to not respond to an RSCN in NVMET.  Instead
      NVMET sends a GID_FT and determines if an NVMEP_INITIATOR
      it has is UNMAPPED but no longer in the zone membership.
      Signed-off-by: NDick Kennedy <dick.kennedy@broadcom.com>
      Signed-off-by: NJames Smart <james.smart@broadcom.com>
      Reviewed-by: NJohannes Thumshirn <jthumshirn@suse.de>
      1c5b12f7
    • J
      Add Fabric assigned WWN support. · aeb3c817
      James Smart 提交于
      Adding support for Fabric assigned WWPN and WWNN.
      
      Firmware sends first FLOGI to fabric with vendor version changes.
      On link up driver gets updated service parameter with FAWWN assigned port
      name.  Driver sends 2nd FLOGI with updated fawwpn and modifies the
      vport->fc_portname in driver.
      
      Note:
      Soft wwpn will not be allowed when fawwpn is enabled.
      Signed-off-by: NDick Kennedy <dick.kennedy@broadcom.com>
      Signed-off-by: NJames Smart <james.smart@broadcom.com>
      Reviewed-by: NJohannes Thumshirn <jthumshirn@suse.de>
      aeb3c817
    • J
      Fix crash after issuing lip reset · 9d3d340d
      James Smart 提交于
      When RPI is not available, driver sends WQE with invalid RPI value and
      rejected by HBA.
      lpfc 0000:82:00.3: 1:3154 BLS ABORT RSP failed, data:  x3/xa0320008
      and
      lpfc :2753 PLOGI failure DID:FFFFFA Status:x3/xa0240008
      
      In this case, driver accesses rpi_ids array out of bounds.
      
      Fix:
      Check return value of lpfc_sli4_alloc_rpi(). Do not allocate
      lpfc_nodelist entry if RPI is not available.
      
      When RPI is not available, we will get discovery timeouts and
      command drops for some of the vports as seen below.
      
      lpfc :0273 Unexpected discovery timeout, vport State x0
      lpfc :0230 Unexpected timeout, hba link state x5
      lpfc :0111 Dropping received ELS cmd Data: x0 xc90c55 x0
      Signed-off-by: NDick Kennedy <dick.kennedy@broadcom.com>
      Signed-off-by: NJames Smart <james.smart@broadcom.com>
      Reviewed-by: NJohannes Thumshirn <jthumshirn@suse.de>
      9d3d340d
  16. 07 3月, 2017 3 次提交
  17. 23 2月, 2017 7 次提交
  18. 14 1月, 2017 1 次提交
    • P
      locking/atomic, kref: Add kref_read() · 2c935bc5
      Peter Zijlstra 提交于
      Since we need to change the implementation, stop exposing internals.
      
      Provide kref_read() to read the current reference count; typically
      used for debug messages.
      
      Kills two anti-patterns:
      
      	atomic_read(&kref->refcount)
      	kref->refcount.counter
      Signed-off-by: NPeter Zijlstra (Intel) <peterz@infradead.org>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Cc: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: linux-kernel@vger.kernel.org
      Signed-off-by: NIngo Molnar <mingo@kernel.org>
      2c935bc5
  19. 12 4月, 2016 2 次提交
  20. 24 2月, 2016 1 次提交
  21. 22 12月, 2015 3 次提交