[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <200805070035.59272.rjw@sisk.pl>
Date: Wed, 7 May 2008 00:35:58 +0200
From: "Rafael J. Wysocki" <rjw@...k.pl>
To: Patrick McHardy <kaber@...sh.net>
Cc: Tejun Heo <htejun@...il.com>,
Linux Kernel Mailinglist <linux-kernel@...r.kernel.org>
Subject: Re: libata regression in current -git
On Tuesday, 22 of April 2008, Patrick McHardy wrote:
> I bisected a boot-failure with sata-sis back to this libata-change:
Has the problem been fixed in 2.6.26-rc1 or in the current -git?
> ---
> libata: clear SError after link resume
>
> SError used to be cleared in ->postreset. This has small hotplug race
> condition. If a device is plugged in after reset is complete but
> postreset hasn't run yet, its hotplug event gets lost when SError is
> cleared. This patch makes sata_link_resume() clear SError. This
> kills the race condition and makes a lot of sense as some PMP and host
> PHYs don't work properly without SError cleared.
>
> This change makes sata_pmp_std_{pre|post}_reset()'s unnecessary as
> they become identical to ata_std counterparts. It also simplifies
> sata_pmp_hardreset() and ahci_vt8251_hardreset().
> ---
>
> Whats happening is that sata_scr_read() in sata_link_resume()
> returns -1 and the reset never completes. Ignoring the return
> value as before this patch makes it work for me again.
>
> This is lspci-output of the controller, dmesg of a working and
> non-working boot and .config are attached.
>
> If you need further information or want me to test something,
> please let me know.
>
>
> 00:05.0 RAID bus controller: Silicon Integrated Systems [SiS] RAID bus
> controller 180 SATA/PATA [SiS] (rev 01) (prog-if 85)
> Subsystem: ASUSTeK Computer Inc. Unknown device 810e
> Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop-
> ParErr- Stepping- SERR- FastB2B- DisINTx-
> Status: Cap- 66MHz+ UDF- FastB2B- ParErr- DEVSEL=medium
> >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
> Latency: 128
> Interrupt: pin A routed to IRQ 17
> Region 0: I/O ports at eff0 [size=8]
> Region 1: I/O ports at efe4 [size=4]
> Region 2: I/O ports at efa8 [size=8]
> Region 3: I/O ports at efe0 [size=4]
> Region 4: I/O ports at ef90 [size=16]
> Region 5: I/O ports at <unassigned>
> Kernel driver in use: sata_sis
>
>
--
"Premature optimization is the root of all evil." - Donald Knuth
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists