On Tue, Aug 07, 2007 at 02:13:39PM +0200, Jarek Poplawski wrote: > On Tue, Aug 07, 2007 at 11:52:46AM +0200, Jarek Poplawski wrote: > > On Tue, Aug 07, 2007 at 11:37:01AM +0200, Marcin Ślusarz wrote: ... > > > No, i don't need a break. I'll have more time in next weeks. > > > > Great! So, I'll try to send a patch with _SW_RESEND in a few hours, > > if Ingo doesn't prepare something for you. > > So, the let's try this idea yet: modified Ingo's "x86: activate > HARDIRQS_SW_RESEND" patch. > (Don't forget about make oldconfig before make.) > For testing only. > > Cheers, > Jarek P. > > PS: alas there was not even time for "compile checking"... And here is one more patch to test the same idea (chip->retrigger()). Let's try i386 way! (I hope I will not be arrested for this...) (Should be tested without any previous patches.) Jarek P. PS: as above --- diff -Nurp 2.6.22.1-/arch/x86_64/kernel/io_apic.c 2.6.22.1/arch/x86_64/kernel/io_apic.c --- 2.6.22.1-/arch/x86_64/kernel/io_apic.c 2007-07-09 01:32:17.000000000 +0200 +++ 2.6.22.1/arch/x86_64/kernel/io_apic.c 2007-08-07 14:37:45.000000000 +0200 @@ -1311,15 +1311,8 @@ static unsigned int startup_ioapic_irq(u static int ioapic_retrigger_irq(unsigned int irq) { struct irq_cfg *cfg = &irq_cfg[irq]; - cpumask_t mask; - unsigned long flags; - - spin_lock_irqsave(&vector_lock, flags); - cpus_clear(mask); - cpu_set(first_cpu(cfg->domain), mask); - send_IPI_mask(mask, cfg->vector); - spin_unlock_irqrestore(&vector_lock, flags); + send_IPI_self(cfg->vector); return 1; } - To unsubscribe from this list: send the line "unsubscribe linux-net" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html