CAM/SIIS CAM_CMD_TIMEOUT hangs
Alexander Motin
mav at FreeBSD.org
Fri Oct 30 07:53:07 UTC 2009
James R. Van Artsdalen wrote:
> I have problems with I/O hanging due to CAM/SIIS not handling the
> CAM_CMD_TIMEOUT error.
> Hangs happen every few hundred GB to every few TB.
> The disks are behind SATA port multipliers.
>
> This command un-hangs the drive and lets things run again:
>
> # camcontrol reset all
>
> I assume this is sending a soft reset to the disk drive but haven't
> checked yet.
>
> Is there a way xpt_done() or such might notice a CAM_CMD_TIMEOUT and
> inject a "soft reset" request at the head of the I/O queue (to run
> before the timed-out command retries)?
Try my latest patch against HEAD:
http://people.freebsd.org/~mav/cam-ata.20091028.patch
It does hard reset after timeout, and what is important, it
reinitializes PMP after reset, to re-enable it's ports back.
--
Alexander Motin
More information about the freebsd-current
mailing list