Brian King wrote: > Tejun Heo wrote: > >>brking@xxxxxxxxxx wrote: >> >>>Currently ata_exec_internal does very minimal cleanup if >>>the executing command times out. This works for most usage >>>scenarios, but can cause problems for hosts that set >>>ATA_FLAG_PIO_DMA. For these users, the DMA buffer gets unmapped >>>while the timed out out command is still active, which has >>>the potential to cause PCI DMA errors if the command is >>>still in progress. The following patch modifies ata_exec_internal >>>to invoke eng_timeout on a timeout to allow for the timed out >>>command to be cleaned up better before proceeding further. >>>This patch is also in preparation for SAS attached SATA devices. >>> >> >>Hello, again. >> >>ata_exec_internal() will be used during EH, so if you call error handler >>from ata_exec_internal().... In my pending EH patchset, there's a patch >>to implement ->post_internal() callback which cleans up after an >>internal command (successful or not). Hopefully, it will be merged in >>not too distant future. Can ata_exec_internal() timeout handling wait >>till then? > > > Do you have a pointer to this patchset? I did a quick search for > post_internal on the archive and didn't find anything. > Hi, No, not posted yet. It's pretty simple though. Hmmm... I'll post the patch against the current upstream tomorrow. It's pretty much independent from other changes anyway. -- tejun - : send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html