1. 29 8月, 2011 2 次提交
    • J
      [SCSI] lpfc 8.3.26: Fix SYSFS interface issues · f7a919b4
      James Smart 提交于
      Fix SYSFS interface issues.
      
      - In the lpfc_sli4_pdev_status_reg_wait() routine, after initial 100ms delay
        following write to PHYSDEV_CONTROL register for the firmware reaction, check
        the RN bit and ERR bit of the SLIPORT_STATUS register. If none of them
        became 1, the previous PHYSDEV_CONTROL register should be considered failed
        due to lack of privilege and error for no permission should be returned
        immediately without getting into the wait for RDY bits on the SLIPORT_STATUS
        register.
      - Remove the driver check on dev->is_physfn before proceed to perform the
        PHYSDEV_CONTROL register write, and let the PCI function's privilege
        setting and driver handling of PHYSDEV_CONTROL register write failure to
        handle the reset-ability through the SLI port.
      - Added key to ctlreg_write to prevent unauthorized or unexpected write to
        the control register.
      - Change return to EACCES for sysfs access that are failed because hba_reset
        is disabled.
      Signed-off-by: NAlex Iannicelli <alex.iannicelli@emulex.com>
      Signed-off-by: NJames Smart <james.smart@emulex.com>
      Signed-off-by: NJames Bottomley <JBottomley@Parallels.com>
      f7a919b4
    • J
      [SCSI] lpfc 8.3.26: Fix HBA initialization issues · 079b5c91
      James Smart 提交于
      Fix HBA initialization issues
      
      - Swap all values that come from the firmware image on little endian systems.
        Created a new bf_get_be macro that does the same as the bf_get_le macro but
        for big endian data instead of little endian data.
      - Moved the incrementing of temp_offset after the copy
        fixed the write object loop to use temp_offset to figure out where the end
        of the image is instead of offset.
      - Added the necessary codes for properly bringing the driver instance offline
        and then trying to bring the port back online with the PCI function IP reset.
        If it fails to bring the SLI port back online, it will fall through to
        bringing the SLI port to HBA error offline.
      - Add a call in the probe_one_s3 and probe_one_s4 routines to get the Modeldesc
      - Change OCe50100 to OCe15100
      - Made the error log also include the PCI BAR bitmap returned from kernel call
        pci_select_bars().
      Signed-off-by: NAlex Iannicelli <alex.iannicelli@emulex.com>
      Signed-off-by: NJames Smart <james.smart@emulex.com>
      Signed-off-by: NJames Bottomley <JBottomley@Parallels.com>
      079b5c91
  2. 27 7月, 2011 5 次提交
    • J
      [SCSI] lpfc 8.3.25: Add FCF priority failover functionality · 7d791df7
      James Smart 提交于
      This patch implements a new FCF failover policy for the lpfc driver. It
      allows the driver to choose which FCF to failover to based on the FCF
      priority. This patch also introduces a new sysfs parameter
      (fcf_failover_policy) to allow the user to choose which FCF failover policy
      to use.
      Signed-off-by: NAlex Iannicelli <alex.iannicelli@emulex.com>
      Signed-off-by: NJames Smart <james.smart@emulex.com>
      Signed-off-by: NJames Bottomley <JBottomley@Parallels.com>
      7d791df7
    • J
      [SCSI] lpfc 8.3.25: Enhancements to Debug infrastructure · b76f2dc9
      James Smart 提交于
      Enhancements to Debug infrastructure
      
      - debugfs additions for new hardware.
      - Correct stack overflow in lpfc_debugfs_dumpHBASlim_data()
      - Correct warning on uninitialized reg_val in lpfc_idiag_drbacc_write()
      - Separated the iDiag command for capturing mailbox commands for generic
        issue mailbox command entry point and for BSG multi-buffer handling.
      - Added capturing dumping capabiliy of mailbox command and external buffer
        for the completion of the mailbox command so that the outcome can be
        examined.
      - Changed all the iDiag command structure data array indexing introduced so
        far with properly defined macros.
      - Added SLI4 device PCI BAR memory mapped register read/browse, write-by-
        value, set-bit, and clear-bit methods for both interface type 0 and
        interface type 2.
      - Corrected warnings on mbxstatus being uninitialized in error paths in
        lpfc_bsg.c
      Signed-off-by: NAlex Iannicelli <alex.iannicelli@emulex.com>
      Signed-off-by: NJames Smart <james.smart@emulex.com>
      Signed-off-by: NJames Bottomley <JBottomley@Parallels.com>
      b76f2dc9
    • J
      [SCSI] lpfc 8.3.25: PCI and SR-IOV Fixes · 0a96e975
      James Smart 提交于
      PCI and SR-IOV Fixes
      
      - Call pci_save_state after the pci_restore_state completes.
      - After calling pci_enable_pcie_error_reporting() and checking the return
        value for logging messages from rc, reset rc to 0 to it will not later be
        interpreted for error.
      - Read PCI config space SR-IOV capability to get the number of VFs supported.
      - Check for the PF's supported number of VFs before invoking PCI enable sriov
        API call and log error message that user requested number of VFs is beyond
        the PF capability if such request is passed in.
      - Added check for Physical function with Virtual Functions attached. If so,
        first disable all the VFs before proceeding to device reset.
      Signed-off-by: NAlex Iannicelli <alex.iannicelli@emulex.com>
      Signed-off-by: NJames Smart <james.smart@emulex.com>
      Signed-off-by: NJames Bottomley <JBottomley@Parallels.com>
      0a96e975
    • J
      [SCSI] lpfc 8.3.25: Fabric and Target Discovery Fixes · 5248a749
      James Smart 提交于
      Fabric and Target Discovery Fixes
      
      - Clear FC_VPORT_NEEDS_INIT_VPI flag during completion of REG_VFI mailbox
        command.
      - Prevent SLI3 Code from unregistering the physical VPI.
      - Add an else clause to the code that checks and sets
        sp->cmn.request_multiple_Nport to clear the bit.
      - Remove a redundant mbox free.
      - Modified lpfc_sli4_async_fip_evt to pass in physical VPI toi
        lpfc_find_vport_by_vpid function.
      - Modified lpfc_find_vport_by_vpid to translate physical VPI to logical VPI
        before comparing with vport VPI.
      Signed-off-by: NAlex Iannicelli <alex.iannicelli@emulex.com>
      Signed-off-by: NJames Smart <james.smart@emulex.com>
      Signed-off-by: NJames Bottomley <JBottomley@Parallels.com>
      5248a749
    • J
      [SCSI] lpfc 8.3.25: Miscellaneous Bug fixes and code cleanup · 88a2cfbb
      James Smart 提交于
      Miscellaneous Bug fixes and code cleanup
      
      - Fix 16G link speed reporting by adding check for 16G check.
      - Change the check and enforcement of MAILBOX_EXT_SIZE (2048B)
        to the check and enforcement of BSG_MBOX_SIZE - sizeof(MAILBOX_t) (3840B).
      - Instead of waiting for a fixed amount of time after performing firmware
        reset, the driver shall wait for the Lancer SLIPORT_STATUS register for the
        readiness of the firmware for bring up.
      - Add logging to indicate when dynamic parameters are changed.
      - Add revision and date to the firmware image format.
      - Use revision instead of rev_name to check firmware image version.
      - Update temporary offset after memcopy is complete for firmware update.
      - Consolidated the use of the macros to get rid of duplicated register
        offset definitions.
      - Removed the unused second parameter in routine lpfc_bsg_diag_mode_enter()
      - Enable debugfs when debugfs is enabled.
      - Update function comments for lpfc_sli4_alloc_xri and lpfc_sli4_init_rpi_hdrs.
      Signed-off-by: NAlex Iannicelli <alex.iannicelli@emulex.com>
      Signed-off-by: NJames Smart <james.smart@emulex.com>
      Signed-off-by: NJames Bottomley <JBottomley@Parallels.com>
      88a2cfbb
  3. 27 5月, 2011 6 次提交
  4. 02 5月, 2011 2 次提交
  5. 31 3月, 2011 1 次提交
  6. 24 3月, 2011 3 次提交
  7. 19 2月, 2011 4 次提交
  8. 03 1月, 2011 1 次提交
  9. 22 12月, 2010 6 次提交
  10. 26 10月, 2010 3 次提交
    • J
      [SCSI] lpfc 8.3.18: Adapter Shutdown and Unregistration cleanup · 5af5eee7
      James Smart 提交于
      Adapter Shutdown and Unregistration cleanup
      
      - Correct the logic around hba shutdown. Prior to final reset, the
        driver must wait for all XRIs to return from the adapter. Added logic
        to poll, progressively slowing the poll rate as delay gets longer.
      - Correct behavior around the rsvd1 field in UNREG_RPI_ALL mailbox
        completion and final rpi cleanup.
      - Updated logic to move pending VPI registrations to their completion
        in cases where a CVL may be received while registration in progress.
      - Added unreg all rpi mailbox command before unreg vpi.
      Signed-off-by: NAlex Iannicelli <alex.iannicelli@emulex.com>
      Signed-off-by: NJames Smart <james.smart@emulex.com>
      Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
      5af5eee7
    • J
      [SCSI] lpfc 8.3.18: Add logic to detect last devloss timeout · a93ff37a
      James Smart 提交于
      Added driver logic to detect the last devloss timeout of remote nodes which
      was still in use of FCF. At that point, the driver should set the last
      in-use remote node devloss timeout flag if it was not already set and should
      perform proper action on the in-use FCF and recover of FCF from firmware,
      depending on the state the driver's FIP engine is in.
      
      Find eligible FCF through FCF table rescan or the next new FCF event when
      FCF table rescan turned out empty eligible FCF, and the successful flogi
      into an FCF shall clear the HBA_DEVLOSS_TMO flag, indicating the successful
      recovery from devloss timeout.
      
      [jejb: add delay.h include to lpfc_hbadisc.c to fix ppc compile]
      Signed-off-by: NAlex Iannicelli <alex.iannicelli@emulex.com>
      Signed-off-by: NJames Smart <james.smart@emulex.com>
      Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
      a93ff37a
    • J
      [SCSI] lpfc 8.3.18: FC/FCoE Discovery fixes · 5ac6b303
      James Smart 提交于
      FC/FCoE Discovery fixes:
      
      - Call the lpfc_drain_txq only for SLI4 hba
      - In lpfc_cmpl_els_fdisc, fix code path that does not free IOCB.
      - Treated firmware matching FCF property with different index as error
      - Propagate error returns from lpfc_issue_els_flogi()
      - Refactored lpfc_unregister_unused_fcf() to create a post
        lpfc_dev_loss_tmo handler call for SLI-4 devices. Allows checking of
        fcf after last ndlp released so that fcf can be released if no longer
        in use.
      - Replaced individual FCF_XXXX_DISC flag clearing in lieu of aggregate
        FCF_DISCOVERY flag upon succesful completion of flogi.
      - Correct setting of altBbCredit value in sparams to correct issue with
        logins with remote loop-based devices.
      Signed-off-by: NAlex Iannicelli <alex.iannicelli@emulex.com>
      Signed-off-by: NJames Smart <james.smart@emulex.com>
      Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
      5ac6b303
  11. 08 10月, 2010 4 次提交
  12. 07 8月, 2010 2 次提交
    • J
      [SCSI] lpfc 8.3.16: FCoE Discovery and Failover Fixes · 38b92ef8
      James Smart 提交于
      - Add support for re-reg'ing changed VPI w/o unregister VPI
      - Copy WWN and state from old nodelist when target DID change.
      - Clean up old nodelist rport and put the nodelist when target DID change.
      - Clear the VFI_REGISTERED flag when UNREG_VFI completes.
      - Made both checks of port_state against LPFC_FLOGI and LPFC_FDISC
        non-inclusive for ignoring CVL events.
      - Added logic to stop retrying of the ongoing PLOGI and FDISC if
        transitioned back to the FCF rediscovery state in reaction to CVL.
      - Removed the dependency of scanning of all the available FCF table
        entries for bulding round-robin bitmap.
      - Use the lpfc_sli4_fcf_rr_read_fcf_rec() in responding to
        individual New FCF found event.
      Signed-off-by: NAlex Iannicelli <alex.iannicelli@emulex.com>
      Signed-off-by: NJames Smart <james.smart@emulex.com>
      Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
      38b92ef8
    • J
      [SCSI] lpfc 8.3.16: SLI Additions, updates, and code cleanup · bc73905a
      James Smart 提交于
      - Remove unneeded Endian swap for Block Guard IOCB response
      - Add a check for mailbox active before issuing the heartbeat command
      - Correct heartbeat last_completion updates to avoid unneeded heartbeats
      - Add Security crypto support to CONFIG_PORT mailbox command
      - Add fips level and fips spec revision sysfs parameters
      - Remove duplicate setting of ext_byte_len fields in lpfc_bsg_issue_mbox
      - Switch call to memcpy_toio to __write32_copy to prevent unaligned 64 bit copy
      - Change log message 0318 from an error to a warning as it is not an error
      - Patch an incorrect call to lpfc_drain_txq on SLI-3 functions
      Signed-off-by: NAlex Iannicelli <alex.iannicelli@emulex.com>
      Signed-off-by: NJames Smart <james.smart@emulex.com>
      Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
      bc73905a
  13. 28 7月, 2010 1 次提交