1. 02 4月, 2007 6 次提交
  2. 01 4月, 2007 18 次提交
  3. 22 3月, 2007 2 次提交
  4. 21 3月, 2007 8 次提交
  5. 20 3月, 2007 6 次提交
    • J
      [SCSI] expose eh_timed_out to the host template · 6c5f8ce1
      James Bottomley 提交于
      It looks like megaraid_sas at least needs this to throttle its commands
      as they begin to time out.  The code keeps the existing transport
      template use of eh_timed_out (and allows the transport to override the
      host if they both have this callback).
      Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
      6c5f8ce1
    • M
      [SCSI] aacraid: Improved error handling · 03d44337
      Mark Haverkamp 提交于
      Received from Mark Salyzyn,
      
      This set of fixes improve error handling stability of the driver. A popular
      manifestation of the problems is an NULL pointer reference in the interrupt
      handler when referencing portions of the scsi command context, or in the
      scsi_done handling when an offlined device is referenced.
      
      The aacraid driver currently does not get notification of orphaned command
      completions due to devices going offline. The driver also fails to handle the
      commands that are finished by the error handler, and thus can complete again
      later at the hands of the adapter causing situations of completion of an
      invalid scsi command context. Test Unit Ready calls abort assuming that the
      abort was successful, but are not, and thus when the interrupt from the adapter
      occurs, they reference invalid command contexts. We add in a TIMED_OUT flag to
      inform the aacraid FIB context that the interrupt service should merely release
      the driver resources and not complete the command up. We take advantage of this
      with the abort handler as well for select abortable commands. And we detect and
      react if a command that can not be aborted is currently still outstanding to
      the controller when reissued by the retry mechanism.
      Signed-off-by: NMark Haverkamp <markh@linux-foundation.org>
      Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
      03d44337
    • M
      [SCSI] aacraid: fix srb ioctl for 64 bits · f2b1a06a
      Mark Haverkamp 提交于
      Received from Mark Salyzyn,
      
      The raw srb ioctl is supposed to be able to take packets with 32 and 64 bit
      virtual address SG elements, it did not handle the frames with 64 bit SG
      elements well when communicating with 64 bit DMA capable adapters, and it did
      not handle the 32 bit limited DMA adapters at all.  The enclosed patch now
      handles all four quadrants (32 bit / 64 bit SG elements in SRB requests + 32
      bit or 64 bit DMA capable adapters)
      
      This fix is required before Java based management applications in a 64 bit user
      space can submit raw srb requests to the array physical components via the
      ioctl mechanism, the allocated user memory pool on 64 bit machines under this
      environment forced the management software's hands to submit 64 bit user space
      virtual address SG elements in via the ioctl.
      Signed-off-by: NMark Haverkamp <markh@linux-foundation.org>
      Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
      f2b1a06a
    • M
      [SCSI] aacraid: remove un-needed references to container id (cid) · 9e7c349c
      Mark Haverkamp 提交于
      Received from Mark Salyzyn,
      
      This little patch removes the ',cid)' container identification argument
      from some of the functions. The argument is used in some cases as merely
      a debug helper and thus not used, and in others, the value can be
      quickly acquired from the scsi command in their single solitary use in
      the procedure rather than wasting resources on passing the argument in
      from above.
      Signed-off-by: NMark Haverkamp <markh@linux-foundation.org>
      Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
      9e7c349c
    • M
      [SCSI] aacraid: Fix ioctl handling when adapter resets · 33bb3b29
      Mark Haverkamp 提交于
      Received from Mark Salyzyn,
      
      Outstanding ioctl calls still have some problems with aborting cleanly
      in the face of a reset iop recovery action should the adapter ever enter
      into a Firmware Assert (BlinkLED) condition. The enclosed patch resolves
      some uncovered flawed handling.
      Signed-off-by: NMark Haverkamp <markh@linux-foundation.org>
      Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
      33bb3b29
    • M
      [SCSI] aacraid: Fix blocking issue with container probing function (cast update) · fe76df42
      Mark Haverkamp 提交于
      Received from Mark Salyzyn,
      
      The aac_probe_container call blocks. This is an issue because it is called on
      occasion in the context of the queuecommand handler. Once in a blue moon this
      has resulted in a kernel panic sleeping during interrupt; or problems with some
      embedded system versions of the kernel that depend on queuecommand to not
      block. This ugly patch rewrites the aac_probe_container call into a new routine
      _aac_probe_container that is an asynchronous state machine to complete the
      series of operations. The legacy blocking aac_probe_container call used in
      other areas of the driver (during initialization scanning for all targets and
      in the separate hot-add/remove [aacraid] thread) merely issues
      _aac_probe_container and then simple spins calling schedule() waiting for
      completion.
      Signed-off-by: NMark Haverkamp <markh@linux-foundation.org>
      Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
      fe76df42