1. 12 4月, 2010 6 次提交
    • K
      [SCSI] mpt2sas: Send default descriptor for RAID pass through in mpt2ctl · ebda4d38
      Kashyap, Desai 提交于
      RAID_SCSI_IO_PASSTHROUGH: Driver needs to be sending the default
      descriptor for RAID Passthru, currently its sending SCSI_IO descriptor.
      Signed-off-by: NKashyap Desai <kashyap.desai@lsi.com>
      Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
      ebda4d38
    • K
      [SCSI] mpt2sas: sanity added to remove duplicate port from topology · 38c29114
      Kashyap, Desai 提交于
      There are few special cases which needs to be handled deleting old port.
      
      CASE1: In topology you need cascaded expanders. Through sysfs just make sure
      topology is up. Erase the manufacturing image of the cascaded expander and
      reset the board. In some cases Adapter will receive Exapnder Add event
      before expander delete. In such a case, driver needs to delete duplicate
      port before adding new port.
      
      CASE2: Enable Device Missing delay of HBA through lsiutils. If expander or
      end device is hotswapped with different device before DMD timer expires,
      driver will get device add for new device first and then device deletion
      event for the original devices will arrive later at DMD timer expires. In
      this case also driver need to delete duplicate port before adding port for
      new device.
      
      Added new function which will make sure when new port is
      added, that its not claiming the same phy resources already in use by
      another port. If it does, then it will delete the other port before adding
      the new port.
      Signed-off-by: NKashyap Desai <kashyap.desai@lsi.com>
      Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
      38c29114
    • D
      [SCSI] scsi_debug: add max_queue + no_uld parameters · 78d4e5a0
      Douglas Gilbert 提交于
      While testing the midlevel q_at_head and q_at_tail
      patch for sg and the block SG_IO ioctl I found it
      useful to reduce the queuing within the scsi_debug
      driver. The reason is that the midlevel queue only
      comes into play when the corresponding LLD queue
      is full.
      
      It is also useful when testing to be confident that
      your program is the only thing issuing commands
      to the (virtual) scsi_debug device. The no_uld=1
      parameter will stop a scsi_debug virtual disk
      appearing as /dev/sd* .
      
      Changelog:
         - add max_queue parameter to reduce the number
           of queued commands the driver will accept.
           This parameter can be changed after the driver
           is loaded.
         - add no_uld parameter that restricts scsi_debug's
           virtual devices to the sg and bsg drivers
         - correct stale url
      Signed-off-by: NDouglas Gilbert <dgilbert@interlog.com>
      Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
      78d4e5a0
    • J
      [SCSI] sd: retry read_capacity on UNIT_ATTENTION · 3233ac19
      James Bottomley 提交于
      Hazard testing uncovered yet another bug in sd. Under heavy reset
      activity the retry counter might be exhausted and the command will be
      returned with sense UNIT_ATTENTION/0x29/00 (POWER ON, RESET, OR BUS
      DEVICE RESET OCCURRED). In those cases we should just increase the
      retry counter again, retrying one more to clear up this Unit Attention
      state.
      
      [jejb: update to work with RC16 devices and not to loop endlessly]
      Signed-off-by: NHannes Reinecke <hare@suse.de>
      Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
      3233ac19
    • K
      [SCSI] mpt2sas : IOs needs to be pause until handles are refreshed for all device after recovery · 14695853
      Kashyap, Desai 提交于
      After Host Reset firmware will have new list of device handles for the target.
      Device handle refresh in driver is part of Rescan topology logic.
      (See functions like *_search_responding_*). This needs to be done from Host
      Reset context before making shost_recovery to 0. Currently it is done in
      Firwmare event context, which may leads IO to a wrong device.
      
      Now handler refresh is moved to HBA reset context.
      Apart from this, Now driver will stop IOs for all device setting deleted
      flag to 1 at the time of HBA Reset through _scsih_prep_device_scan.
      It will only unblock devices, if devices has been found as part of RESCAN.
      This way it will make more safe IO blocking at the time of HBA reset at
      mpt2sas driver layer.
      Signed-off-by: NKashyap Desai <kashyap.desai@lsi.com>
      Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
      14695853
    • H
      [SCSI] sd: quiet spurious error messages in READ_CAPACITY(16) · f87146bb
      Hannes Reinecke 提交于
      sd always tries to submit a READ_CAPACITY(16) CDB,
      regardless whether the host actually supports it.
      queuecommand() will then return DID_ABORT, which is
      not qualified enough to detect the true cause here.
      So better check in sd_try_rc16 first if the cdblen
      is supported.
      Signed-off-by: NHannes Reinecke <hare@suse.de>
      Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
      f87146bb
  2. 11 4月, 2010 34 次提交