From: Tejun Heo <htejun@gmail.com>
To: Jeff Garzik <jeff@garzik.org>
Cc: Mark Lord <liml@rtr.ca>,
IDE/ATA development list <linux-ide@vger.kernel.org>
Subject: Re: Flexible SFF interrupt handling
Date: Fri, 30 Nov 2007 10:08:16 +0900 [thread overview]
Message-ID: <474F6280.8090403@gmail.com> (raw)
In-Reply-To: <474D900B.8030408@garzik.org>
Jeff Garzik wrote:
> Actually no, and that is a key benefit of this scheme: if we ensure
> that the polling paths are resilient even in case where interrupts are
> being delivered -- as we must do anyway -- then we don't have to worry
> about interrupt masking, either on the interrupt controller or on the
> device[1].
>
> [1] well, there -are- exceptions, such as when we are bitbanging the ATA
> Data register
Yeah, that one exception is exactly why we need to plug the IRQ during
polling PIO or to push PIO data xfer to a workqueue and doing so by nIEN
is unreliable on several controllers and unreliable by nature in many
early SFF SATA controllers when paired with certain SATA devices as
noted in appendix C of SATA 2.5 spec.
And when reading off Status when idle, we'll need to return 0 from
irq_handler. That will prevent IRQ screaming IRQ lock and nobody cared
detection code is exactly there to watch how often such idle IRQs occur
and disable it if necessary.
Maybe we can make irqpoll on-demand such that nobody cared turns it and
driver can also request polling on the IRQ.
Thanks.
--
tejun
next prev parent reply other threads:[~2007-11-30 1:08 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-11-28 13:45 Flexible SFF interrupt handling Jeff Garzik
2007-11-28 14:29 ` Alan Cox
2007-11-28 16:09 ` Jeff Garzik
2007-11-28 14:33 ` Mark Lord
2007-11-28 15:58 ` Jeff Garzik
2007-11-28 16:48 ` Mark Lord
2007-11-28 17:00 ` Mark Lord
2007-11-30 1:08 ` Tejun Heo [this message]
2007-11-30 1:11 ` Tejun Heo
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=474F6280.8090403@gmail.com \
--to=htejun@gmail.com \
--cc=jeff@garzik.org \
--cc=liml@rtr.ca \
--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).