Re: [PATCH HACK] powerpc: quick hack to get a functional eHEA with hardirq preemption
From: Sebastien Dugue <hidden>
Date: 2008-09-16 12:23:02
Also in:
linux-rt-users, lkml, netdev
Hi Anton, On Tue, 16 Sep 2008 15:59:47 +0400 Anton Vorontsov [off-list ref] wrote:
On Mon, Sep 15, 2008 at 03:13:32PM +0200, Sebastien Dugue wrote: [...]quoted
quoted
we are a bit worried about putting this into the mainstream part of non real time linux.Heck, I sure do not want this to be applied mainstream nor into any tree. The sole purpose of this patch was to trigger some reaction from the people who know the hardware and try to understand where the problem lies.quoted
There interrupts work perfectly fine, and it was a bit of a challenge to get there for all cases / configurations / machines.Agreed, but the fact that it fails with hardirq preemption leads me to believe (without any more knowledge about the harware) that there might be something amiss with this driver (or the code concerning the XICS) nevertheless.quoted
Could you try to enable these changes only for RT-Linux via a real-time kconfig switch?Nope, this is just a quick hack that allows me to have a functional eHEA under the rt kernel. I want to understand what the problem is: - Is the eHEA really delivering level interrupts to the XICS? - Is the XICS loosing interrupts when they are masked?There is a known bug in the -rt kernels, the bug causes handlers to lose edge interrupts. See this patch: http://lkml.org/lkml/2008/6/30/372
Yes, I've been following that thread back then and my hack is based on your patch. So yes, it seems to be the same problem and it lies in the way -rt handles the fasteoi flow. But looking at the comments from the XICS code, it seems that its wired for level only interrupts. Therefore without any more specs, it's still not clear to me that there's not a bug with the way the xics handles eHEA interrupts. Are the eHEA interrupts really level interrupts? If so why do they get lost when masked? I just found that not masking that particular interrupt in the fasteoi path makes the thing work! Thanks, Sebastien.
quoted
- ...?-- Anton Vorontsov email: cbouatmailru@gmail.com irc://irc.freenode.net/bd2 -- To unsubscribe from this list: send the line "unsubscribe linux-rt-users" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html