Hi Simon, Yes, I am using a very old version of LWIP. I don't know the version number though, it should be older than 1.1.0. It is from our supplier, and I think the issue I encountered (mentioned below) is also from the supplier.
So basically it is not a good idea to use sys_sem_wait() in the context of tcpip_thread(), in case probably tcp_output() is called recursively. Best, Xiaowen On 01/23/15 00:25, Simon Goldschmidt wrote: > Jackie wrote: > >> After re-examining the code, finally I got more understanding of what can >> cause this problem. Instead of more than one threads are calling >> tcp_output(), there is only one thread tcpip_thread(), but in which >> tcp_output() is called recursively. >> >> The case happens when the lower-layer protocol (PPP) uses sys_sem_wait(). In >> this function, it is not only waiting a semaphore, but it also gives the >> timer chances to run. > > This was a known bug which should be fixed for a long time. Are you using an > old version of lwIP? > > Simon > > _______________________________________________ > lwip-users mailing list > [email protected] > https://lists.nongnu.org/mailman/listinfo/lwip-users > _______________________________________________ lwip-users mailing list [email protected] https://lists.nongnu.org/mailman/listinfo/lwip-users
