1. 24 4月, 2017 4 次提交
    • 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
    • J
      Fix PRLI ACC rsp for NVME · c07f10cd
      James Smart 提交于
      PRLI ACC from target is FCP oriented.
      
      Word 0 was wrong. This was noticed by another nvmet-fc vendor that
      was testing the lpfc nvme-fc initiator with their target.
      
      Verified results with analyzer.
      
      PRLI
      BC B5 56 56  22 61 04 00  00 61 00 00  01 29 00 00  20 00 00 00
      00 10 FF FF  00 00 00 00  20 14 00 18  28 00 00 00  00 00 00 00
      00 00 00 00  00 00 00 20  00 00 00 00  9C D8 DA C9  BC 95 75 75
      
      ACC
      BC B5 56 56  23 61 00 00  00 61 04 00  01 98 00 00  30 00 00 00
      00 10 00 18  00 00 00 00  02 14 00 18  28 00 01 00  00 00 00 00
      00 00 00 00  00 00 00 18  00 00 00 00  B0 6B 07 57  BC B5 75 75
      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>
      c07f10cd
  2. 07 3月, 2017 2 次提交
  3. 23 2月, 2017 6 次提交
  4. 21 1月, 2017 1 次提交
  5. 18 1月, 2017 1 次提交
  6. 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
  7. 05 1月, 2017 1 次提交
  8. 09 11月, 2016 1 次提交
  9. 27 9月, 2016 1 次提交
    • B
      scsi: lpfc: Mark symbols static where possible · bd4b3e5c
      Baoyou Xie 提交于
      We get a few warnings when building kernel with W=1:
      drivers/scsi/lpfc/lpfc_sli.c:5693:1: warning: no previous prototype for 'lpfc_set_features' [-Wmissing-prototypes]
      drivers/scsi/lpfc/lpfc_sli.c:8972:1: warning: no previous prototype for 'lpfc_sli_calc_ring' [-Wmissing-prototypes]
      drivers/scsi/lpfc/lpfc_els.c:4621:1: warning: no previous prototype for 'lpfc_rdp_res_link_service' [-Wmissing-prototypes]
      drivers/scsi/lpfc/lpfc_els.c:4633:1: warning: no previous prototype for 'lpfc_rdp_res_sfp_desc' [-Wmissing-prototypes]
      drivers/scsi/lpfc/lpfc_els.c:4698:1: warning: no previous prototype for 'lpfc_rdp_res_link_error' [-Wmissing-prototypes]
      drivers/scsi/lpfc/lpfc_els.c:4727:1: warning: no previous prototype for 'lpfc_rdp_res_bbc_desc' [-Wmissing-prototypes]
      drivers/scsi/lpfc/lpfc_els.c:4752:1: warning: no previous prototype for 'lpfc_rdp_res_oed_temp_desc' [-Wmissing-prototypes]
      drivers/scsi/lpfc/lpfc_els.c:4780:1: warning: no previous prototype for 'lpfc_rdp_res_oed_voltage_desc' [-Wmissing-prototypes]
      drivers/scsi/lpfc/lpfc_els.c:4809:1: warning: no previous prototype for 'lpfc_rdp_res_oed_txbias_desc' [-Wmissing-prototypes]
      drivers/scsi/lpfc/lpfc_els.c:4838:1: warning: no previous prototype for 'lpfc_rdp_res_oed_txpower_desc' [-Wmissing-prototypes]
      ....
      
      In fact, these functions are only used in the file in which they are
      declared and don't need a declaration, but can be made static.  So this
      patch marks these functions with 'static'.
      Signed-off-by: NBaoyou Xie <baoyou.xie@linaro.org>
      Acked-by: NArnd Bergmann <arnd@arndb.de>
      Acked-by: NDick Kennedy <dick.kennedy@broadcom.com>
      Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
      bd4b3e5c
  10. 16 7月, 2016 6 次提交
  11. 12 4月, 2016 4 次提交
  12. 22 12月, 2015 7 次提交
  13. 10 11月, 2015 1 次提交
  14. 27 10月, 2015 4 次提交