All of lore.kernel.org
 help / color / mirror / Atom feed
From: Tejun Heo <htejun@gmail.com>
To: Mark Lord <liml@rtr.ca>
Cc: Jeff Garzik <jeff@garzik.org>,
	Alan Cox <alan@lxorguk.ukuu.org.uk>, Alan Cox <alan@redhat.com>,
	IDE/ATA development list <linux-ide@vger.kernel.org>
Subject: Re: libata fails to recover from HSM violation involving DRQ status
Date: Mon, 30 Apr 2007 01:42:20 +0900	[thread overview]
Message-ID: <4634CAEC.4010700@gmail.com> (raw)
In-Reply-To: <46349A03.9090300@rtr.ca>

Mark Lord wrote:
>>>> Ah.. one more thing, is this draining also needed after DMA commands or
>>>> only after PIO commands?
>>
>> My drive doesn't do IDENTIFY_DMA, so I fed it a READ_DMA instead
>> with "no data", and libata recovered without draining. 
> 
> More specifically, here's what happens for READ_DMA(1 sector)
> with "NON_DATA" specified (same circustances as the failed IDENTIFY):
> 
> ata1.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x2 frozen
> ata1.00: cmd c8/00:01:00:00:00/00:00:00:00:00/40 tag 0 cdb 0x0 data 0
>         res 40/00:00:00:00:00/00:00:00:00:00/40 Emask 0x4 (timeout)
> ata1: port is slow to respond, please be patient (Status 0xd0)
> ata1: port failed to respond (30 secs, Status 0xd0)
> ata1: soft resetting port
> ATA: abnormal status 0xD0 on port 0x000101f7
> ATA: abnormal status 0xD0 on port 0x000101f7
> ata1.00: configured for UDMA/100
> ata1: EH complete
> SCSI device sda: 312581808 512-byte hdwr sectors (160042 MB)
> sda: Write Protect is off
> sda: Mode Sense: 00 3a 00 00
> SCSI device sda: write cache: enabled, read cache: enabled, doesn't
> support DPO or FUA
> 
> So no draining, and all is well again.
> Odds look pretty good that this is just a PIO thing.

So, this is specific to SATA (the host side at least) piix && PIO READ,
right?  I think we can fit this code nicely into
piix_sata_error_handler() if we make sure that it triggers under the
right condition - after a PIO READ command fails due to HSM violation
caused by stuck DRQ.

Can you please perform similar test on a native PATA device connected to
native PATA controller?  I'm curious whether SRST makes real silicons
forget about the on-going command.

Thanks.

-- 
tejun

  reply	other threads:[~2007-04-29 16:42 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-04-28 20:15 libata fails to recover from HSM violation involving DRQ status Mark Lord
2007-04-28 20:18 ` Mark Lord
2007-04-28 20:30 ` Alan Cox
2007-04-28 20:37 ` Jeff Garzik
2007-04-28 20:44   ` Mark Lord
2007-04-28 20:50     ` Jeff Garzik
2007-04-28 21:25   ` Alan Cox
2007-04-28 21:35     ` Mark Lord
2007-04-28 21:38     ` Jeff Garzik
2007-04-28 21:41       ` Mark Lord
2007-04-29  3:17         ` Tejun Heo
2007-04-29  3:46           ` Jeff Garzik
2007-04-29  7:45             ` Tejun Heo
2007-04-29  3:51           ` Tejun Heo
2007-04-29 11:56             ` Mark Lord
2007-04-29 12:59               ` Mark Lord
2007-04-29 13:13                 ` Mark Lord
2007-04-29 16:42                   ` Tejun Heo [this message]
2007-04-29 16:47                     ` Mark Lord
2007-04-29 18:49                       ` Mark Lord
2007-04-29 19:05                         ` Mark Lord
2007-04-30  0:59                           ` Tejun Heo
2007-04-29 19:07                         ` Mark Lord
2007-04-30  0:54                           ` Tejun Heo
2007-04-30  3:42                             ` Mark Lord
2007-04-30  3:58                               ` Tejun Heo
2007-04-30 17:47                             ` Mark Lord
2007-05-01  0:23                               ` Mark Lord
2007-05-01  2:47                                 ` Tejun Heo
2007-05-01 13:00                       ` Mark Lord
2007-05-11  3:33                         ` Mark Lord
2007-05-11  3:35                           ` Mark Lord
2007-04-29 12:07           ` Mark Lord
2007-04-29 16:36             ` Tejun Heo
2007-04-28 23:56       ` Alan Cox
2007-04-28 22:09 ` Mark Lord
2007-04-29  3:04   ` 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=4634CAEC.4010700@gmail.com \
    --to=htejun@gmail.com \
    --cc=alan@lxorguk.ukuu.org.uk \
    --cc=alan@redhat.com \
    --cc=jeff@garzik.org \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.