From: Alan Cox <alan@lxorguk.ukuu.org.uk>
To: Jeff Garzik <jgarzik@pobox.com>
Cc: izvekov@lps.ele.puc-rio.br, linux-kernel@vger.kernel.org
Subject: Re: libata sata_sil broken on 2.6.13.1
Date: Thu, 15 Sep 2005 14:27:39 +0100 [thread overview]
Message-ID: <1126790860.19133.75.camel@localhost.localdomain> (raw)
In-Reply-To: <43290893.7070207@pobox.com>
On Iau, 2005-09-15 at 01:37 -0400, Jeff Garzik wrote:
> Silicon Image 311x throws interrupts after we told the hardware to
> disable interrupts, but only for a few certain devices and/or PATA
> bridges. I only have theories as to the solution.
Firstly some devices do not honour nIEN.
Secondly IRQ delivery is asynchronous to all other busses (especially on
older SMP boxes)
ata_interrupt checks qc->tf.ctl & ATA_NIEN
Other functions set/reset nIEN in the tf they issue then directly call
ata_tf_load/ata_exec_* so I don't believe qc->tf.ctl is the correct
thing to check for non-interrupt status on older type controllers at
least.
Instead you need to look at ap->last_ctl. But that too looks suspect if
any kind of reset sets it back to an undefined state.
Finally I don't see what locks viewing ->tf.ctl/->last_ctl against
whether it has yet been loaded into the hardware.
Alan
next prev parent reply other threads:[~2005-09-15 13:02 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-09-14 1:17 libata sata_sil broken on 2.6.13.1 izvekov
2005-09-14 1:22 ` izvekov
2005-09-14 19:48 ` izvekov
2005-09-14 20:36 ` izvekov
2005-09-14 23:46 ` Andrew Morton
2005-09-15 0:19 ` izvekov
2005-09-15 5:37 ` Jeff Garzik
2005-09-15 13:27 ` Alan Cox [this message]
2005-09-15 20:13 ` izvekov
2005-09-15 22:30 ` Alan Cox
2005-09-15 22:56 ` izvekov
2005-09-16 3:42 ` izvekov
2005-09-16 6:41 ` Jeff Garzik
2005-09-16 22:10 ` Matheus Izvekov
2005-09-22 2:46 ` Jeff Garzik
2005-09-16 0:07 ` izvekov
2005-10-22 11:55 ` problem with libata and ich6m - 2.6.14-rc5 Raphael Jacquot
2005-10-22 12:18 ` 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=1126790860.19133.75.camel@localhost.localdomain \
--to=alan@lxorguk.ukuu.org.uk \
--cc=izvekov@lps.ele.puc-rio.br \
--cc=jgarzik@pobox.com \
--cc=linux-kernel@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