On Fri, May 18, 2007 at 11:28:25AM -0700, Yinghai Lu wrote: > On 5/18/07, Siddha, Suresh B <[EMAIL PROTECTED]> wrote: > > > > If the vector number stays same during irq migration and if we reset remote > > IRR bit using the above method(edge and then back to level) during > > irq migration, then we have a problem. A new interrupt arriving on a new > > cpu will set the remote IRR bit and now the old inflight EOI broadcast > > reaches IOAPIC RTE(resetting the remote IRR bit, because the vector in the > > broadcast msg is same), while the kernel code still assumes that the remote > > IRR bit is still set. This will lead to more problems and issues. > > coud add some line __assign_irq_vector. to make sure old_vector!=vector.
hmm.. what happens when there is second(and very quick) irq migration which brings the irq back to old cpu(or to a third cpu) with old vector. Point is, we are not taking care of the inflight messages(which can perhaps, theoretically, can get delayed for long time) thanks, suresh - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/