linux-ide.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Tejun Heo <htejun@gmail.com>
To: Gary Hade <garyhade@us.ibm.com>
Cc: Kovid Goyal <kovid@theory.caltech.edu>,
	linux-ide@vger.kernel.org, lcm@us.ibm.com,
	Jeff Garzik <jgarzik@pobox.com>,
	konradr@us.ibm.com
Subject: Re: [2.6.18,19] SATA boot problems (ICH6/ICH6W)
Date: Wed, 21 Feb 2007 21:40:10 +0900	[thread overview]
Message-ID: <45DC3DAA.2080501@gmail.com> (raw)
In-Reply-To: <20070217003454.GA25571@us.ibm.com>

Hello, Gary.

Gary Hade wrote:
> I instrumented the code and found that for the SATA hard drive BSY was set 
> just before the call to ahci_init_port() from ahci_port_start() and clear 
> after the return from ahci_init_port().  For the GoVault BSY was still set 
> after the return from ahci_init_port() and remained set for almost 2 seconds.
> 
> The below patch which gives BSY some extra time to clear repairs the problem.  
> Unlike the extra delay for ata-piix needed by GoVault I believe this delay 
> will only be seen for attached devices that need it.  Please let me know 
> what you think.

Can you post full dmesg without the patch?  And which controller are you
using (lspci -nn please)?  How come it doesn't support CLO?

I don't think the patch is a good idea.  !BSY wait before reset is
supposed to be done in ->prereset() if possible.  ahci skips that step
because waiting for !BSY isn't reliable after hotplug and it often
wastes 30secs for no good reason after an hotplug event.

Even if you need to add that specific shorter wait, the correct place
would be ->prereset() not at the end of ->port_start().

I don't think fixing here and there for GoVault drive is a good idea.
It's not gonna be tested widely and GoValut would end up working on some
controllers while broken on others.  I think recently posted EH
improvements and faster reset patches should help here.  The first reset
will fail timely and all in all the drive should be detected in slightly
over ten secs, which isn't that bad and actually is okay if parallel
probing is implemented.

I dunno.  Maybe the correct thing to do is wait briefly for !BSY in
std_prereset() when SKIP_D2H_BSY is set.  What status value does the
controller report in that state - 0x80 or 0xff?

Thanks.

-- 
tejun

  reply	other threads:[~2007-02-21 12:40 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-12-11 18:03 [2.6.18,19] SATA boot problems (ICH6/ICH6W) Kovid Goyal
2006-12-20  0:44 ` Tejun Heo
2006-12-20  2:00   ` Kovid Goyal
2006-12-20  2:13     ` Tejun Heo
2006-12-20  4:56       ` Kovid Goyal
2007-01-11 23:32       ` Kovid Goyal
2007-01-13  2:19         ` Tejun Heo
2006-12-20  3:29   ` Gary Hade
2006-12-20  3:53     ` Tejun Heo
2006-12-20  4:30       ` Tejun Heo
2006-12-21 17:10       ` Gary Hade
2007-01-30  1:55         ` Gary Hade
2007-01-30  7:32           ` Tejun Heo
2007-01-30 23:37             ` Gary Hade
2007-01-31  0:54               ` Jeff Garzik
2007-01-31 11:00                 ` Tejun Heo
2007-01-31 12:20                   ` Alan
2007-01-31 13:16                     ` Tejun Heo
2007-01-31 15:24                       ` Jeff Garzik
2007-01-31 15:30                         ` Mark Lord
2007-01-31 10:44               ` Tejun Heo
2007-01-31 10:47                 ` Jeff Garzik
2007-01-31 11:00                   ` Tejun Heo
2007-02-01  0:49                 ` Gary Hade
2007-02-17  0:34               ` Gary Hade
2007-02-21 12:40                 ` Tejun Heo [this message]
2007-02-22  0:41                   ` Gary Hade
2007-02-23  0:32                   ` Gary Hade
2007-01-23 21:49 ` danieljzhang

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=45DC3DAA.2080501@gmail.com \
    --to=htejun@gmail.com \
    --cc=garyhade@us.ibm.com \
    --cc=jgarzik@pobox.com \
    --cc=konradr@us.ibm.com \
    --cc=kovid@theory.caltech.edu \
    --cc=lcm@us.ibm.com \
    --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).