"Bartlomiej Zolnierkiewicz" <bzolnier@xxxxxxxxx> wrote: > On Tue, Jun 24, 2008 at 3:35 PM, Alan Cox <alan@xxxxxxxxxxxxxxxxxxx> wrote: >>> > I don't see why you think it's "hard". We have timeout handlers for many > >>> > commands and those reset/abort just fine. >>> >>> They are different beasts from user-space initiated abort operation >> >> No they are not. They are the *same* thing in every respect. >> >> You have the drive in an unknown state, you want it back. If your drive >> lost a command due to noise or a firmware flaw you have no idea about the >> state it is actually in (supposed to be is irrelevant) > > I generally agree with you w.r.t. to drive side of the operations but > the drive is only part of the equation (the host and the request states > are the others) so 'supposed to be is' is quite relevant. > > Also abort request can happen i.e. while the command is being prepared > & issued (it is done without ide_lock being taken and the timeout is not > even armed yet) so there are additional issues to take care of. Yes there are. Still, I think it should be feasible which is why I personally would prefer to drop the second patch in the series for the time being. But then I can keep it around for reference locally and the original infrastructure can be found in the history after all. Even though the patch series currently doesn't fully restore the intended functionality, I'd like to merge it now. Command aborting didn't work reliably (if at all) before and now, at least, a simple ioctl won't harm a healthy system anymore. Since I think that we can add command aborting back later, I'd like to keep the HDIO_DRIVE_RESET ioctl even if it should currently be superfluous given SG_IO. So, here comes the second run of the patch series based on next-20080624. All suggested changes have been incorporated except for one additional check for ->rq_disk which I consider unnecessary (and you haven't insisted on it). In particular, this means that in the second patch the ->resetting member has been removed from the ide_hwgroup_t structure for completeness' sake (even though I'm not all in favour of applying that second patch just yet). 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