Re: Need help with libata error handling in libsas

2008-02-25 Thread Jeff Garzik
James Bottomley wrote: On Mon, 2008-02-25 at 10:34 -0600, Brian King wrote: The new libata-eh is used for more than just EH. It is used for device probing, device revalidation, and power management. It is also woken for all command failures and is where the request sense for ATAPI devices is iss

Re: Need help with libata error handling in libsas

2008-02-25 Thread James Bottomley
On Mon, 2008-02-25 at 10:34 -0600, Brian King wrote: > The new libata-eh is used for more than just EH. It is used for device > probing, device revalidation, and power management. It is also woken for > all command failures and is where the request sense for ATAPI devices is > issued. Device revali

Re: Need help with libata error handling in libsas

2008-02-25 Thread Brian King
James Bottomley wrote: > I keep hearing that we need to convert libsas to use libata's new error > handling. Unfortunately, I have very little conception of what that > means. Right at the moment, libsas doesn't use any error handling > functions of libata at all. > > I've looked through the lib

Need help with libata error handling in libsas

2008-02-24 Thread James Bottomley
I keep hearing that we need to convert libsas to use libata's new error handling. Unfortunately, I have very little conception of what that means. Right at the moment, libsas doesn't use any error handling functions of libata at all. I've looked through the libata-eh functions, and I find them f

Re: libata error handling

2005-08-19 Thread Luben Tuikov
On 08/19/05 17:10, Patrick Mansfield wrote: > Luben - > > On Fri, Aug 19, 2005 at 04:43:41PM -0400, Luben Tuikov wrote: > >>On 08/19/05 16:11, Patrick Mansfield wrote: > > >>>I was changing it to wakeup the eh even while other IO is outstanding, so >>>the eh can wakeup and cancel individual com

Re: libata error handling

2005-08-19 Thread Patrick Mansfield
Luben - On Fri, Aug 19, 2005 at 04:43:41PM -0400, Luben Tuikov wrote: > On 08/19/05 16:11, Patrick Mansfield wrote: > > I was changing it to wakeup the eh even while other IO is outstanding, so > > the eh can wakeup and cancel individual commands while other IO is still > > using the HBA. > > Hm

Re: libata error handling

2005-08-19 Thread Luben Tuikov
On 08/19/05 16:29, Mike Anderson wrote: > Luben Tuikov <[EMAIL PROTECTED]> wrote: >>Consider this: When SCSI Core told you that the command timed out, >> A) it has already finished, >> B) it hasn't already finished. >> >>In case A, you can return EH_HANDLED. In case B, you return >>EH_NO

Re: libata error handling

2005-08-19 Thread Luben Tuikov
On 08/19/05 16:11, Patrick Mansfield wrote: > On Fri, Aug 19, 2005 at 04:03:15PM -0400, Luben Tuikov wrote: >>The eh_timed_out + eh_strategy_handler is actually pretty perfect, >>and _complete_, for any application and purpose in recovering a > > > One other point: Another problems is that we qui

Re: libata error handling

2005-08-19 Thread Mike Anderson
Luben Tuikov <[EMAIL PROTECTED]> wrote: > On 08/19/05 15:38, Patrick Mansfield wrote: > The eh_timed_out + eh_strategy_handler is actually pretty perfect, > and _complete_, for any application and purpose in recovering a > LU/device/host (in that order ;-) ). > > > The two problems I see with the

Re: libata error handling

2005-08-19 Thread Patrick Mansfield
On Fri, Aug 19, 2005 at 04:03:15PM -0400, Luben Tuikov wrote: > On 08/19/05 15:38, Patrick Mansfield wrote: > > On Fri, Aug 19, 2005 at 02:46:35PM -0400, Luben Tuikov wrote: > > > > > >>Using the command time out hook and the strategy routine, gives _complete_ > >>control over host recovery, and

Re: libata error handling

2005-08-19 Thread Luben Tuikov
On 08/19/05 15:38, Patrick Mansfield wrote: > On Fri, Aug 19, 2005 at 02:46:35PM -0400, Luben Tuikov wrote: > > >>Using the command time out hook and the strategy routine, gives _complete_ >>control over host recovery, and I really do mean _complete_. >> > > > I assume you mean hostt->eh_timed_

Re: libata error handling

2005-08-19 Thread Patrick Mansfield
On Fri, Aug 19, 2005 at 02:46:35PM -0400, Luben Tuikov wrote: > > Using the command time out hook and the strategy routine, gives _complete_ > control over host recovery, and I really do mean _complete_. > I assume you mean hostt->eh_timed_out. Is anyone implmenting (or has implemented) a ->eh

Re: libata error handling

2005-08-19 Thread Luben Tuikov
On 08/19/05 01:40, Tejun Heo wrote: > I genearally agree that the events are somewhat standard for block > devices but IMHO SCSI EH also has fair amount SCSI-specific assumptions > and ATA is a bit too different from SCSI to fit cleanly into it. For > example, when handling NCQ errors, the wh

Re: libata error handling

2005-08-19 Thread Luben Tuikov
On 08/18/05 23:49, Jeff Garzik wrote: > 1) The fine-grained hooks of the SCSI layer are somewhat standard for > block devices. The events they signify -- timeout, abort cmd, dev > reset, bus reset, and host reset -- map precisely to the events that we > must deal with at the ATA level. "dev re

Re: libata error handling

2005-08-18 Thread Jeff Garzik
Tejun Heo wrote: Heh... Maybe I'm just reluctant to let go of my patches. Anyways, I'll now stand down and see how things go and try to help. Note that my email simply describes a long term target. For the short term, and perhaps medium term, libata will continue to use ->eh_strategy_hand

Re: libata error handling

2005-08-18 Thread Tejun Heo
Hi, Jeff. Jeff Garzik wrote: Tejun, In an email I cannot find anymore, you asked why I was interested in converting libata to use the fine-grained EH hooks in the SCSI layer, rather than continued with the current ->eh_strategy_handler() method. Several reasons: 1) The fine-grained hook

libata error handling

2005-08-18 Thread Jeff Garzik
Tejun, In an email I cannot find anymore, you asked why I was interested in converting libata to use the fine-grained EH hooks in the SCSI layer, rather than continued with the current ->eh_strategy_handler() method. Several reasons: 1) The fine-grained hooks of the SCSI layer are somewhat