1. 24 5月, 2009 1 次提交
    • T
      [SCSI] limit state transitions in scsi_internal_device_unblock · 5c10e63c
      Takahiro Yasui 提交于
      scsi timeout on two or more devices may cause extremely long execution
      time for user applications because SDEV_OFFLINE state is changed to
      SDEV_RUNNING state during scsi error recovery procedures triggered by
      a bus reset or a host reset of scsi LLD, and scsi timeout can happens
      on the same devices many times.
      
      This happens because scsi_internal_device_unblock() changes device's
      state to SDEV_RUNNING even if a device in other states than SDEV_BLOCK,
      while the following two transitions are required in this function.
      
        SDEV_BLOCK -> SDEV_RUNNING
        SDEV_CREATED_BLOCK -> SDEV_CREATED
      
      Otherwise, it returns -EINVAL.
      Signed-off-by: NTakahiro Yasui <tyasui@redhat.com>
      [matthew@wil.cx: supplied rewritten base for patch]
      Signed-off-by: NMatthew Wilcox <matthew@wil.cx>
      Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
      5c10e63c
  2. 21 5月, 2009 28 次提交
  3. 20 5月, 2009 3 次提交
  4. 19 5月, 2009 6 次提交
  5. 18 5月, 2009 2 次提交