Alan Cox <alan@xxxxxxxxxxxxxxxxxxx> wrote: >> However, SATA or not, there simply isn't a way to abort commands in ATA. > >> Issuing random command while other commands are in progress simply is >> state machine violation and there will be many interesting results >> including complete system lockup (ATA controller dying while holding the >> PCI bus). The only reliable way to abort in-flight commands are by >> issuing hardreset. However, ATA reset protocol is not designed for >> quick recovery. The machine is gonna hit the ground hard way before the >> reset protocol is complete. > > Actually you cau can issue idle immediate on older ATA devices. I am not > clear if that was stuck back into the current accelerometer friendly > drives or not. Would need to check with IBLenovo In ide_atapi_error() IDLE IMMEDIATE is issued even if busy bit is still set. This made me hope that we could do something similar wrt disk head unloading. However, since I haven't found anything about this in the specs and considering Tejun's comments, I'm now wondering whether the code in ide_atapi_error() isn't a little imprudent. Also, as long as nothing definite is said about it in the specs, we can only issue IDLE IMMEDIATE in parallel to other commands on devices we know to support it, right? Regards, Elias -- To unsubscribe from this list: send the line "unsubscribe linux-ide" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html