Hi all, the attached patch tries to fix SATA ATAPI error handling. The original code invokes scsi_finish_command() regardless whether this command is processed normally or by scsi_eh. This looks quite dangerous to me as this might trigger a recovery for a command which already is in recovery (as it's processed by scsi_eh). Plus the error handling _never_ clears eh_cmd_q, leaving failed command forever on that queue. The attached patch models the error handling closely to the existing error handling in scsi_unjam_host(), with the execption that we rely on a proper sense code being returned by the strategy handler. Comments are welcome. Cheers, Hannes -- Dr. Hannes Reinecke hare@suse.de SuSE Linux AG S390 & zSeries Maxfeldstraße 5 +49 911 74053 688 90409 Nürnberg http://www.suse.de