From: Paul Mundt <lethal@linux-sh.org>
To: Mark Lord <lkml@rtr.ca>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>,
Jeff Garzik <jeff@garzik.org>,
Andrew Morton <akpm@linux-foundation.org>,
linux-ide@vger.kernel.org, linux-kernel@vger.kernel.org,
linuxsh-dev@lists.sourceforge.net
Subject: Re: [PATCH 1/2] libata: Support PIO polling-only hosts.
Date: Wed, 7 Nov 2007 23:53:26 +0900 [thread overview]
Message-ID: <20071107145326.GA27752@linux-sh.org> (raw)
In-Reply-To: <4731C71A.4000406@rtr.ca>
On Wed, Nov 07, 2007 at 09:09:30AM -0500, Mark Lord wrote:
> Paul Mundt wrote:
> >On Wed, Nov 07, 2007 at 01:09:40PM +0000, Alan Cox wrote:
> >>On Wed, 7 Nov 2007 17:10:52 +0900
> >>Paul Mundt <lethal@linux-sh.org> wrote:
> >>>By default ata_host_activate() expects a valid IRQ in order to
> >>>successfully register the host. This patch enables a special case
> >>>for registering polling-only hosts that either don't have IRQs
> >>>or have buggy IRQ generation (either in terms of handling or
> >>>sensing), which otherwise work fine.
> >>>
> >>>Hosts that want to use polling mode can simply set ATA_FLAG_PIO_POLLING
> >>>and pass in a NULL IRQ handler or invalid (< 0) IRQ.
> >>NAK
> >>
> >>Zero is "no IRQ", please use that for polling not "< 0"
> >>
> >However, platform_get_irq() will happily return IRQ#0, and it's a valid
> >vector on plenty of machines. NO_IRQ is also < 0 on at least FR-V, ARM,
> >blackin, PA-RISC, some PowerPC, and even IDE.
>
> Too bad. The Penultimate Penguin wants zero to continue to mean "no IRQ".
>
> Dig into the archives for multiple threads on this exact topic.
> The end result is that "0" means "no IRQ". If your physical IRQ actually
> is the number 0, then reencode it to some other value for this purpose.
>
I've read the threads, but this does little to do with the fact it's
still a perfectly valid vector, and I'm not about to force every IRQ
vector on my platform off-by-1 in order to satisfy a religious point of
view with zero reflection on what the hardware actually looks like.
So I'll change the check to IRQ#0 == invalid, but if that's to be
enforced kernel-wide, then all of the existing NO_IRQ cases should be
ripped out and set to 0. This way at least people are getting screwed
consistently, rather than just in particular subsystems.
> Yes, a bit of pain, but that's how many parts of the kernel expect it,
Just as many parts of the kernel make no such assumption.
> and in the end it's no more overall hassle than doing it differently might
> have been.
>
Spoken like someone who doesn't have to contend with off-by-1 IRQ
vectors as a result of an entirely cosmetic change. It's certainly easier
to parrot a party line when you aren't being bitten by it.
So again, I'll make the change, but it's utter nonsense.
next prev parent reply other threads:[~2007-11-07 14:53 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-11-07 8:10 [PATCH 1/2] libata: Support PIO polling-only hosts Paul Mundt
2007-11-07 8:11 ` [PATCH 2/2] libata: pata_platform: Support polling-mode configuration Paul Mundt
2007-11-07 13:10 ` Alan Cox
2007-11-07 13:09 ` [PATCH 1/2] libata: Support PIO polling-only hosts Alan Cox
2007-11-07 13:27 ` Paul Mundt
2007-11-07 14:09 ` Mark Lord
2007-11-07 14:53 ` Paul Mundt [this message]
2007-11-07 15:28 ` Alan Cox
2007-11-07 15:18 ` Alan Cox
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=20071107145326.GA27752@linux-sh.org \
--to=lethal@linux-sh.org \
--cc=akpm@linux-foundation.org \
--cc=alan@lxorguk.ukuu.org.uk \
--cc=jeff@garzik.org \
--cc=linux-ide@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linuxsh-dev@lists.sourceforge.net \
--cc=lkml@rtr.ca \
/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