On Fri, 2005-04-15 at 19:13 +0900, Masao Fukuchi wrote:
> The sequence is: 
> 1.Host issues SCSI command to fusion MPT driver.
> 2.Mid layer detects command timeout and then performs 
>   error recovery sequence. 
>   But the sequence fails and it causes device offline.
>   (fusion MPT driver still hold the command)
> 4.Fusion MPT driver activates host reset and calls
>   mptscsih_flush_running_cmds().

Well, this is the error:  The Fusion host reset should be activated from
the eh_host_reset_handler.

> 5.In mptscsih_flush_running_cmds(), pci_unmap_sg() is called
>   for all SCSI cmds.
>   But the buffer had already freed and this causes oops.

If you do the above, the command will still be valid.  If you wait until
after the device is offlined, of course the mid-layer throws away the
commands, since it's up to the driver to clean them up during the reset
sequences.

James


-
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to