From: Jeff Garzik <jeff@garzik.org>
To: Markus Trippelsdorf <markus@trippelsdorf.de>, linux-ide@vger.kernel.org
Cc: Andrew Morton <akpm@linux-foundation.org>,
Linus Torvalds <torvalds@linux-foundation.org>,
LKML <linux-kernel@vger.kernel.org>,
htejun@gmail.com, Takashi Iwai <tiwai@suse.de>,
marc.c.dionne@gmail.com, dl9pf@gmx.de,
bug-track@fisher-privat.net, sitsofe@yahoo.com
Subject: [PATCH] Re: [git patches] libata updates - (improve post-reset device ready test) regression
Date: Thu, 08 May 2008 11:35:11 -0400 [thread overview]
Message-ID: <48231DAF.7070900@garzik.org> (raw)
In-Reply-To: <20080507145616.GA2210@gentoox2.trippelsdorf.de>
[-- Attachment #1: Type: text/plain, Size: 1648 bytes --]
Markus Trippelsdorf wrote:
>> Tejun Heo (12):
>> libata: improve post-reset device ready test
>
> This commit (78ab88f04f44bed566d51dce0c7cbfeff6449a06) causes a long
> boot delay with my onboard Promise controller. It seems like libata
> probes for a nonexisting PATA drive...
>
> ACPI: PCI Interrupt 0000:00:08.0[A] -> GSI 18 (level, low) -> IRQ 18
> scsi0 : sata_promise
> scsi1 : sata_promise
> scsi2 : sata_promise
> ata1: SATA max UDMA/133 mmio m4096@0xfb600000 port 0xfb600200 irq 18
> ata2: SATA max UDMA/133 mmio m4096@0xfb600000 port 0xfb600280 irq 18
> ata3: PATA max UDMA/133 mmio m4096@0xfb600000 port 0xfb600300 irq 18
> ata1: SATA link down (SStatus 0 SControl 300)
> ata2: SATA link up 1.5 Gbps (SStatus 113 SControl 300)
> ata2.00: ATA-7: SAMSUNG HD753LJ, 1AA01109, max UDMA7
> ata2.00: 1465149168 sectors, multi 0: LBA48 NCQ (depth 0/32)
> ata2.00: configured for UDMA/133
> ata3: link is slow to respond, please be patient (ready=0)
> ata3: device not ready (errno=-16), forcing hardreset
> ata3: link is slow to respond, please be patient (ready=0)
> ata3: SRST failed (errno=-16)
> ata3: link is slow to respond, please be patient (ready=0)
> ata3: SRST failed (errno=-16)
> ata3: link is slow to respond, please be patient (ready=0)
> ata3: SRST failed (errno=-16)
> - Last output repeated twice -
> ata3: reset failed, giving up
Does the attached patch fix things?
It basically reverts the patch, while still maintaining the
consolidation. It looks like that status evaluation is not as universal
as believed.
Jeff
[-- Attachment #2: patch --]
[-- Type: text/plain, Size: 637 bytes --]
diff --git a/include/linux/libata.h b/include/linux/libata.h
index 7e206da..0f17643 100644
--- a/include/linux/libata.h
+++ b/include/linux/libata.h
@@ -1384,17 +1384,14 @@ static inline struct ata_port *ata_shost_to_port(struct Scsi_Host *host)
static inline int ata_check_ready(u8 status)
{
- /* Some controllers report 0x77 or 0x7f during intermediate
- * not-ready stages.
- */
- if (status == 0x77 || status == 0x7f)
- return 0;
+ if (!(status & ATA_BUSY))
+ return 1;
/* 0xff indicates either no device or device not ready */
if (status == 0xff)
return -ENODEV;
- return !(status & ATA_BUSY);
+ return 0;
}
next prev parent reply other threads:[~2008-05-08 15:35 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-05-06 15:48 [git patches] libata updates Jeff Garzik
2008-05-06 16:23 ` Linus Torvalds
2008-05-07 14:56 ` [git patches] libata updates - (improve post-reset device ready test) regression Markus Trippelsdorf
2008-05-07 16:35 ` Takashi Iwai
2008-05-08 3:13 ` Marc Dionne
2008-05-08 9:45 ` Jan-Simon Möller
2008-05-08 15:35 ` Jeff Garzik [this message]
2008-05-08 16:05 ` [PATCH] " Takashi Iwai
2008-05-08 16:18 ` Markus Trippelsdorf
2008-05-08 17:40 ` Alexey Fisher
2008-05-08 19:21 ` Hugh Dickins
2008-05-08 21:43 ` J.A. Magallón
2008-05-09 14:54 ` Mark Lord
2008-05-08 21:51 ` Marc Dionne
2008-05-09 2:57 ` Tejun Heo
2008-05-09 3:01 ` Tejun Heo
2008-05-09 4:27 ` Justin Mattock
2008-05-09 3:43 ` Justin Mattock
2008-05-09 4:37 ` Jeff Garzik
2008-05-10 6:34 ` Tejun Heo
2008-05-09 5:09 ` Alexey Fisher
2008-05-09 10:59 ` Marc Dionne
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=48231DAF.7070900@garzik.org \
--to=jeff@garzik.org \
--cc=akpm@linux-foundation.org \
--cc=bug-track@fisher-privat.net \
--cc=dl9pf@gmx.de \
--cc=htejun@gmail.com \
--cc=linux-ide@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=marc.c.dionne@gmail.com \
--cc=markus@trippelsdorf.de \
--cc=sitsofe@yahoo.com \
--cc=tiwai@suse.de \
--cc=torvalds@linux-foundation.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).