[Click] patches to prevent Click-1.5.0 crash under load

Kevin Lahey lahey at ISI.EDU
Thu Sep 21 12:23:10 EDT 2006


When starting up multithreaded Click-1.5.0 under network load on e1000s,
I've been seeing some repeatable crashes.  If the system is already
getting packets at a high rate, it'll crash when it turns polling on. 
This appears to be due to a race condition with the NAPI receive ring
cleanup routines.

Turning off NAPI doesn't work, because then the system winds up in
livelock and won't start Click;  using netif_poll_disable to
turn off NAPI in e1000_poll_on similarly seems to delay starting Click.
I've attached a fairly weak attempt at a patch for this.

There's also a few lines that ensure that e1000_poll_on compiles under
Linux 2.4.  I verified that it still compiles on 2.6.  I also tried this
out under Click from CVS;  the patch seemed to work okay for e1000-5.x,
although I seem to recall that I saw some crashes on Click uninstall
with the analogous changes to e1000-6.x.

Thanks,

Kevin Lahey
lahey at isi.edu
-------------- next part --------------
A non-text attachment was scrubbed...
Name: e1000_main.diffs
Type: application/octet-stream
Size: 915 bytes
Desc: not available
Url : https://amsterdam.lcs.mit.edu/pipermail/click/attachments/20060921/64bed935/e1000_main.obj


More information about the click mailing list