From: Ric Wheeler <ric@emc.com>
To: Jeff Garzik <jgarzik@pobox.com>
Cc: Mark Lord <liml@rtr.ca>,
IDE/ATA development list <linux-ide@vger.kernel.org>,
Jens Axboe <axboe@suse.de>
Subject: Re: libata EH appears to be NFG up to 2.6.17 (at least).
Date: Thu, 06 Jul 2006 19:22:17 -0400 [thread overview]
Message-ID: <44AD9B29.9090508@emc.com> (raw)
In-Reply-To: <44AD8A25.7020006@pobox.com>
Jeff Garzik wrote:
> Mark Lord wrote:
>
>> Enable libata-scsi to report correct sense data on errors.
>>
>> Signed-off-by: Mark Lord <mlord@pobox.com>
>> ---
>> --- linux/drivers/scsi/libata-scsi.c.orig 2006-07-06
>> 17:09:54.000000000 -0400
>> +++ linux/drivers/scsi/libata-scsi.c 2006-07-06 17:17:43.000000000
>> -0400
>> @@ -667,6 +667,13 @@
>> qc->ap->ops->tf_read(qc->ap, tf);
>>
>> /*
>> + * Restore the error bit, which got cleared when the
>> + * interrupt handler first read the ata_status.
>> + */
>> + if (qc->err_mask & AC_ERR_DEV)
>> + tf->command |= ATA_ERR;
>> +
>> + /*
>> * Use ata_to_sense_error() to map status register bits
>
>
>
> Again it's an LLDD issue. Your answer of "all LLDDs" sounds a bit
> suspicious.
>
> AC_ERR_DEV should not be set unless (a) some code noticed that ATA_ERR
> was already present in the Status register, or (b) some code set
> AC_ERR_DEV for some reason other than ATA_ERR presence. Both of those
> factors depend heavily on LLDD behavior.
>
> ANYWAY, your above patch is not wrong, but it begs the question of
> where the problem REALLY lies. Which LLDD sets AC_ERR_DEV when
> ATA_ERR is not present?
>
> Jeff
>
>
I believe that Mark was testing this on an ahci (ich6r) based box.
A quick (and inexpert) look at ahci.c in 2.6.17 shows that
ahci_host_intr() does set AC_ERR_DEV - I did not see in my quick look
where ATA_ERR was set.
Tejun's updated EH code changed the code path pretty substantially.
ric
next prev parent reply other threads:[~2006-07-06 23:22 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-07-06 20:37 libata EH appears to be NFG up to 2.6.17 (at least) Mark Lord
2006-07-06 20:47 ` Jeff Garzik
2006-07-06 20:51 ` Mark Lord
2006-07-06 21:24 ` Mark Lord
2006-07-06 22:09 ` Jeff Garzik
2006-07-06 23:22 ` Ric Wheeler [this message]
2006-07-07 13:03 ` Mark Lord
2006-07-08 16:56 ` Tejun Heo
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=44AD9B29.9090508@emc.com \
--to=ric@emc.com \
--cc=axboe@suse.de \
--cc=jgarzik@pobox.com \
--cc=liml@rtr.ca \
--cc=linux-ide@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).