[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <m1wsu396os.fsf@ebiederm.dsl.xmission.com>
Date: Wed, 03 Oct 2007 16:25:39 -0600
From: ebiederm@...ssion.com (Eric W. Biederman)
To: benh@...nel.crashing.org
Cc: Loic Prylli <loic@...i.com>, linux-pci@...ey.karlin.mff.cuni.cz,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: MSI problem since 2.6.21 for devices not providing a mask in their MSI capability
Benjamin Herrenschmidt <benh@...nel.crashing.org> writes:
>
> Well, yes and no ... A valid option here would be to use soft-masking,
> which is possible because MSIs are edge interrupts. That is, basically,
> when masked, just ignore them and set IRQF_PENDING, and when unmasked,
> replay (which can be done with softirq if there is no HW mechanism for
> that). The genirq code contains all the necessary infrastructure for
> doing that stuff, it's fairly trivial, and would probably avoid stepping
> in HW lalaland (how much do you bet HW generally get that masking thing
> wrong ?)
Well. If people actually use it I suspect it will work ok. The
circuitry is quite simple so as long as people get their requirements
straight we should be fine. Which is why I tried to get everything
working as well as we could sooner rather then later. Of course
drivers are free not to call anything that would cause the irq
to be masked.
That said the current disable_irq and enable_irq path is using the
IRQF_PENDING infrastructure on x86. So the only time this comes up
is for irq migration.
Eric
-
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