1. 27 5月, 2011 5 次提交
    • J
      [SCSI] lpfc 8.3.24: Miscellaneous Fixes and Corrections · 0558056c
      James Smart 提交于
      Miscellaneous Fixes and Corrections
      - Remove the memset in the lpfc_sli4_remove_rpi_hdrs call.
      - Correct swapping of SGE word 2 relative to offset value
      - Reorganize CQ and EQ usage to comply with SLI4 Specification.
      - Expand the driver to check the rn bit. Only detect an error if the error bit
        is set and the RN bit is NOT set.
      - If mailbox completion code is not success AND the mailbox status is success,
        then and only then will the driver overwrite the mailbox status.
      - When driver initializing device, if the device is on a PCIe bus, set
        PCI's "needs fundamental reset" bit so that EEH uses fundamental reset
        instead of hot reset for recovery.
      - Prevent driver from using new WWN when changed in firmware (until driver
        reload)
      - When HBA reports maximum SGE size > 0xffffffff (infinite), override
        with 0x80000000.
      - Fixed potential missed SLI4 device initialization failure conditions.
      - Added 100ms delay before driver action following IF_TYPE_2 function reset.
      - Reverted patch to UNREG/REG on PLOGI to mapped/unmapped node.
      - Add a check for the CVL received flag in the fcf inuse routine to avoid
        unregistering the fcf if Devloss fires before Delay discover timer fires.
      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>
      0558056c
    • D
      [SCSI] libsas: Add option for SATA soft reset · 1ca1e43e
      Dave Jiang 提交于
      This allows a libsas driver to optionally provide a soft reset handler
      for libata to drive.  The isci driver allows software to control the
      assertion/deassertion of SRST.
      
      [jejb: checkpatch.pl fixes]
      Signed-off-by: NDave Jiang <dave.jiang@intel.com>
      Signed-off-by: NDan Williams <dan.j.williams@intel.com>
      Signed-off-by: NJames Bottomley <jbottomley@parallels.com>
      1ca1e43e
    • D
      [SCSI] libsas: check dev->gone before submitting sata i/o · 3673f4bf
      Dan Williams 提交于
      Head off doomed-to-fail i/o in sas_queuecommand before sending it down
      the ata path.
      
      Before:
      sd 7:0:0:0: [sdd] Synchronizing SCSI cache
      ata8: no sense translation for status: 0x00
      ata8: translated ATA stat/err 0x00/00 to SCSI SK/ASC/ASCQ 0xb/00/00
      ata8.00: device reported invalid CHS sector 0
      ata8: status=0x00 { }
      ata8: no sense translation for status: 0x00
      ata8: translated ATA stat/err 0x00/00 to SCSI SK/ASC/ASCQ 0xb/00/00
      ata8.00: device reported invalid CHS sector 0
      ata8: status=0x00 { }
      ata8: no sense translation for status: 0x00
      ata8: translated ATA stat/err 0x00/00 to SCSI SK/ASC/ASCQ 0xb/00/00
      ata8.00: device reported invalid CHS sector 0
      ata8: status=0x00 { }
      sd 7:0:0:0: [sdd]  Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
      sd 7:0:0:0: [sdd]  Sense Key : Aborted Command [current] [descriptor]
      sd 7:0:0:0: [sdd]  Add. Sense: No additional sense information
      sd 7:0:0:0: [sdd] Stopping disk
      
      After:
      sd 9:0:0:0: [sdd] Synchronizing SCSI cache
      sd 9:0:0:0: [sdd]  Result: hostbyte=DID_BAD_TARGET driverbyte=DRIVER_OK
      sd 9:0:0:0: [sdd] Stopping disk
      sd 9:0:0:0: [sdd] START_STOP FAILED
      sd 9:0:0:0: [sdd]  Result: hostbyte=DID_BAD_TARGET driverbyte=DRIVER_OK
      
      This is a cosmetic change as sata i/o can still leak to a gone device,
      but this addresses the nominal hotplug case when releasing the target.
      Acked-by: NJack Wang <jack_wang@usish.com>
      Signed-off-by: NDan Williams <dan.j.williams@intel.com>
      Signed-off-by: NJames Bottomley <jbottomley@parallels.com>
      3673f4bf
    • D
      [SCSI] libsas: fix/amend device gone notification in sas_deform_port() · 90f1e10d
      Dan Williams 提交于
      Commit 56dd2c06 "libsas: Don't issue commands to devices that have been
      hot-removed" edited Darrick's original patch to remove setting 'gone' in
      the sas_deform_port() path because that prevented scsi sync cache
      commands from being issued when the driver was unloaded.  However, this
      allows true device gone notifications (as signaled port phy events) to
      trigger sync cache commands to devices that are known to be unreachable.
      
      Teach libsas which sas_deform_port() invocations are likely device gone
      events.
      Signed-off-by: NDan Williams <dan.j.williams@intel.com>
      Signed-off-by: NJames Bottomley <jbottomley@parallels.com>
      90f1e10d
    • J
  2. 25 5月, 2011 35 次提交