lwip-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [lwip-devel] deadlock on high Load with loopback


From: Simon Goldschmidt
Subject: Re: [lwip-devel] deadlock on high Load with loopback
Date: Wed, 12 May 2010 16:24:49 +0200

Ooops, pressed "send" too early :-)

Anyway, I think a sanity check that TCPIP_MBOX_SIZE > MEMP_NUM_TCPIP_MSG_INPKT 
would be enough.

Simon


Fabian Koch wrote:
> Hey all,
> 
> I ran into the following scenario:
> 
> 1) have loopback communication running
> 2) produce very high load (i.e. flooding) from the outside
> 
> results in:
> 
> - The ethernet driver running in interrupt context sends a new TCP
> IP_MSG_INPKT to the mbox which is then full.
> - The loopback also wants to output a packet and calls tcpip_callback() 
> which blocks on sending it's message to the mbox. 
> 
> This creates a deadlock since the tcpip_thread is waiting for the mbox to 
> be free again but it won't since that same thread is responsible for 
> fetching from the mbox.
> 
> I can fix the behavior by having MEMP_NUM_TCPIP_MSG_INPKT be smaller than 
> TCPIP_MBOX_SIZE. Then tcpip_input() fails before being able to fill up the
> mbox.
> Still it does feel like a design flaw.
> 
> Did I do something wrong? Should we include this in the sanity checks on 
> compile? Should the behavior be redesigned?
> 
> kind regards,
> Fabian

-- 
GRATIS für alle GMX-Mitglieder: Die maxdome Movie-FLAT!
Jetzt freischalten unter http://portal.gmx.net/de/go/maxdome01



reply via email to

[Prev in Thread] Current Thread [Next in Thread]