>>> "Goldschmidt Simon" <[EMAIL PROTECTED]> 
>> I stepped a little bit around now. The semaphore causing the 
>> problem is created inside the accept_function() in api_msg.c line 242:
>> 
>> newconn->sem = sys_sem_new(0);
>> 
>> It is then signaled in sent_tcp() in api_msg.c line 159. But 
>> I can't find the file where this (connection specific) 
>> semaphore is ever waited on. So it gets signaled and signaled 
>> and signaled....
> 
> That conn->sem seems only to be waited for when running out of memory.

But its signaled in sent_tcp():

if (conn != NULL && conn->sem != SYS_SEM_NULL) 
{
    sys_sem_signal(conn->sem);
}

I see no condition depending on memory here.

> Matthias, what kind of data are you sending? (e.g. how much, how often,
> what is your window size compared to the data you are sending, which
> direction: tx or rx only or both?)

Always packages with 11 Bytes which are then echoed back to the sender. So only 
very small packets at a very low rate of about 200ms between two packages. I am 
still testing so no hard conditions (yet :-)

Matthias



_______________________________________________
lwip-users mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/lwip-users

Reply via email to