lkml.org 
[lkml]   [1999]   [May]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [patch] SMP race fix [was Re: SMP lockup & 3c509 on 2.2.x [aka. the Deadly 'ping -f']]
Hello again!

On Thu, 6 May 1999, Andrea Arcangeli wrote:

> Index: drivers/net/3c509.c
> Index: drivers/net/8390.c
> Index: include/asm/irq.h
> Index: arch/i386/kernel/io_apic.c
> Index: arch/i386/kernel/irq.c
> Index: arch/i386/kernel/visws_apic.c
[snip]
>
> M.H., Nicholas and Taneli, could you confirm that my patch above will fix
> _all_ your SMP lockup that you all can reproduce trivially after some
> minute of heavy network usage in SMP? (I had zero reports yet... ;).

Sorry for the delay. I needed to read for Friday's exam.

On to the patch.

I hand-applied most parts of it, didn't touch ioapic-level functions or
visws file, and also didn't apply the part about locking against when
called from the interrupt handler. I had to add disable_irq_nosync to
the list of exported functions in i386_ksyms.c, since my 3c509 only
works as a modules. After that, it worked very well. No problems
flood pinging (previously it would have locked within five seconds).
Functionality-wise the patch works miracles. Have you considered Linus'
suggestion about implementing IRQ_BUSY flag? Would that be a cleaner
approach?

Taneli <taneli@firmament.fi>



-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:51    [from the cache]
©2003-2011 Jasper Spaans