[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <87ljzcopyt.fsf@denkblock.local>
Date: Mon, 04 Aug 2008 15:43:38 +0200
From: Elias Oltmanns <eo@...ensachen.de>
To: Alan Cox <alan@...rguk.ukuu.org.uk>
Cc: Tejun Heo <htejun@...il.com>, Jeff Garzik <jeff@...zik.org>,
Bartlomiej Zolnierkiewicz <bzolnier@...il.com>,
James Bottomley <James.Bottomley@...senpartnership.com>,
Pavel Machek <pavel@....cz>, linux-ide@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH 3/5] libata: Implement disk shock protection support
Alan Cox <alan@...rguk.ukuu.org.uk> 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-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists