lkml.org 
[lkml]   [2004]   [Apr]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRE: [PATCH] 2.6.5- es7000 subarch update
On Mon, 12 Apr 2004, Protasevich, Natalie wrote:

> It is actually close to what I had in my initial patch when I posted it
> (and got in trouble with the timer IRQ0):
>
> ...
> intsrc.mpc_dstirq = pin;
> ...
> - && (mp_irqs[i].mpc_srcbusirq == intsrc.mpc_srcbusirq)) {
> + && (mp_irqs[i].mpc_dstirq == intsrc.mpc_dstirq)) {
>
> This code indexes mp_irqs[] by the pin, but has a similar "miscounting"
> problem and adds a second element with the same bus irq. I think this
> code could work either way being indexed by the pin or by the bus irq, but it
> has to be fixed in either case. (As I understand, with srcbusirq it
> doesn't work as is for much fewer people than with dstirq :)

Indeed it does, i'm beginning to wonder if the problem is in the mpparse
code for boxes such as Andrew's which get broken. Because really if we
overwrite the previous entry then this is acting very much like what the
function says it does. The only thing which i think makes things look
awkward with your patch is;

for (i = 0; i < mp_irq_entries; i++) {
if ((mp_irqs[i].mpc_srcbus == intsrc.mpc_srcbus)
&& (mp_irqs[i].mpc_srcbusirq == intsrc.mpc_srcbusirq)) {
mp_irqs[i] = intsrc;
+ if (intsrc.mpc_srcbusirq > pin) { <=======
+ int j;
+ for (j = 0; j < i; j++)
+ if (mp_irqs[j].mpc_dstirq == intsrc.mpc_dstirq)
+ mp_irqs[j].mpc_irqtype = -1;
+ }
found = 1;
break;
}
}

That just happens to get boxes like Andrew's out of the path because his
only gets broken with the irq0 override.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 14:02    [W:0.062 / U:0.012 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site