From: Jeff Garzik <jeff@garzik.org>
To: Tejun Heo <htejun@gmail.com>
Cc: IDE/ATA development list <linux-ide@vger.kernel.org>,
Alan Cox <alan@lxorguk.ukuu.org.uk>, Mark Lord <liml@rtr.ca>,
albertl@mail.com, diego torres <dtorres@coral.dnsalias.org>,
Michael Tokarev <mjt@tls.msk.ru>
Subject: Re: [PATCH #upstream-fixes] libata: kill spurious NCQ completion detection
Date: Fri, 07 Dec 2007 15:29:33 -0500 [thread overview]
Message-ID: <4759AD2D.60903@garzik.org> (raw)
In-Reply-To: <4758C20F.8020005@gmail.com>
Tejun Heo wrote:
> Spurious NCQ completion detection implemented in ahci was incorrect.
> On AHCI receving and processing FISes and raising interrupts are not
> interlocked and spurious interrupts are expected.
>
> For example, if an interrupt occurs while interrupt handler is running
> and the running interrupt handler handles the event the new IRQ
> indicated, after IRQ handler finishes, it will be executed again
> because IRQ pending bit is set by the new interrupt but there won't be
> anything to process.
>
> Please read the following message for more information.
>
> http://article.gmane.org/gmane.linux.ide/26012
>
> This patch...
>
> * Removes all spurious IRQ whining from ahci. Spurious NCQ completion
> detection was completely wrong. Spurious D2H Register FIS taught us
> that some early drives send spurious D2H Register FIS with I bit set
> while NCQ commands are in progress but none of recent drives does
> that and even the ones which show such behavior can do NCQ fine.
>
> * Kills all NCQ blacklist entries which were added because of spurious
> NCQ completions. I tracked down each commit and verified all
> removed ones are actually added because of spurious completions.
>
> WD740ADFD-00NLR1 wasn't deleted but moved upward because the drive
> not only had spurious NCQ completions but also is slow on sequential
> data transfers if NCQ is enabled.
>
> Maxtor 7V300F0 was added by 0e3dbc01d53940fe10e5a5cfec15ede3e929c918
> from Alan Cox. I can only find evidences that the drive only had
> troubles with spuruious completions by searching the mailing list.
> This entry needs to be verified and removed if it doesn't have other
> NCQ related problems.
>
> Signed-off-by: Tejun Heo <htejun@gmail.com>
> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
> ---
> Alan, can you please check why 7V300F0 was added? Thanks a lot.
>
> drivers/ata/ahci.c | 74 +---------------------------------------------
> drivers/ata/libata-core.c | 18 -----------
> 2 files changed, 4 insertions(+), 88 deletions(-)
applied
next prev parent reply other threads:[~2007-12-07 20:29 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-12-07 3:46 [PATCH #upstream-fixes] libata: kill spurious NCQ completion detection Tejun Heo
2007-12-07 20:29 ` Jeff Garzik [this message]
2007-12-07 23:24 ` Mark Lord
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=4759AD2D.60903@garzik.org \
--to=jeff@garzik.org \
--cc=alan@lxorguk.ukuu.org.uk \
--cc=albertl@mail.com \
--cc=dtorres@coral.dnsalias.org \
--cc=htejun@gmail.com \
--cc=liml@rtr.ca \
--cc=linux-ide@vger.kernel.org \
--cc=mjt@tls.msk.ru \
/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.